module LB::Operation::Log

Helper for logging

Public Class Methods

included(base) click to toggle source

Extends base class with class interface.

@param [Class] base @return [Object]

# File lib/lb/operation/log.rb, line 25
def self.included(base)
  base.extend ClassInterface
end

Public Instance Methods

log(method, *args) click to toggle source

Calls given logger method with given arguments.

@param [Symbol] method @param [Array] args @return [Object]

# File lib/lb/operation/log.rb, line 48
def log(method, *args)
  unless logger.respond_to?(method)
    raise ArgumentError, "Logger does not respond to :#{method}."
  end
  logger.public_send(method, *args)
end
logger() click to toggle source

Retrieves the logger.

@return [Object]

# File lib/lb/operation/log.rb, line 32
def logger
  result = self.class.logger
  if result.nil?
    raise ArgumentError,
          'No logger availible: Please set logger via '\
          'LB::Operation::Log[logger] or '\
          'LB::Operation::Log.with_logger(logger)'
  end
  result
end