Class: Dial::ProsopiteCompositeLogger

Inherits:
Object
  • Object
show all
Defined in:
lib/dial/prosopite_composite_logger.rb

Instance Method Summary collapse

Constructor Details

#initialize(dial_logger, existing_logger = nil) ⇒ ProsopiteCompositeLogger

Returns a new instance of ProsopiteCompositeLogger.



7
8
9
10
# File 'lib/dial/prosopite_composite_logger.rb', line 7

def initialize dial_logger, existing_logger = nil
  @dial_logger = dial_logger
  @existing_logger = existing_logger
end

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(method, *args, &block) ⇒ Object



21
22
23
24
25
26
# File 'lib/dial/prosopite_composite_logger.rb', line 21

def method_missing method, *args, &block
  result = nil
  result = @dial_logger.send method, *args, &block if @dial_logger.respond_to? method
  @existing_logger.send method, *args, &block if @existing_logger&.respond_to? method
  result
end

Instance Method Details

#levelObject



12
13
14
# File 'lib/dial/prosopite_composite_logger.rb', line 12

def level
  @dial_logger.level
end

#level=(value) ⇒ Object



16
17
18
19
# File 'lib/dial/prosopite_composite_logger.rb', line 16

def level= value
  @dial_logger.level = value
  @existing_logger.level = value if @existing_logger&.respond_to? :level=
end

#respond_to_missing?(method, include_private = false) ⇒ Boolean

Returns:

  • (Boolean)


28
29
30
31
32
# File 'lib/dial/prosopite_composite_logger.rb', line 28

def respond_to_missing? method, include_private = false
  @dial_logger.respond_to?(method, include_private) ||
    @existing_logger&.respond_to?(method, include_private) ||
      false
end