Class: Log4Ruby::Appender

Inherits:
Object
  • Object
show all
Defined in:
lib/log4ruby/appender.rb

Overview

Base class for appenders.

Direct Known Subclasses

StreamAppender

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(level, formatter) ⇒ Appender

New appender. This class should be treated as an abstract base class and should not be initialised directly.

Parameters:



17
18
19
20
21
# File 'lib/log4ruby/appender.rb', line 17

def initialize(level, formatter)
  @level = level
  @formatter = formatter
  @closed = false
end

Instance Attribute Details

#formatter=(value) ⇒ Object (writeonly)

Set the formatter this appender uses.



11
12
13
# File 'lib/log4ruby/appender.rb', line 11

def formatter=(value)
  @formatter = value
end

Instance Method Details

#closeTrueClass

Closes this appender. Logs will not be emitted by this appender any longer.

Returns:

  • (TrueClass)

    Always true.



26
27
28
# File 'lib/log4ruby/appender.rb', line 26

def close
  @closed = true
end

#closed?TrueClass, FalseClass

Check if this appender is closed.

Returns:

  • (TrueClass, FalseClass)

    true if the appender is closed.



33
34
35
# File 'lib/log4ruby/appender.rb', line 33

def closed?
  @closed
end

#process_log(log) ⇒ Object

Process the log item.

Parameters:



40
41
42
43
44
45
# File 'lib/log4ruby/appender.rb', line 40

def process_log(log)
  return if log[:level] < @level

  # Format the log item and emit it.
  emit(@formatter.format(log))
end