Sha256: 3538ca3ee658d9e8a639886d11f6ccaa8e051a4549261efa27b4d83d8a3ea436
Contents?: true
Size: 785 Bytes
Versions: 6
Compression:
Stored size: 785 Bytes
Contents
module Madvertise module Logging ## # MultiLogger is a simple class for multiplexing ImprovedLogger objects. It # support attach/detach to send messages to any number of loggers. class MultiLogger def initialize(*loggers) @loggers = loggers end # Attach an ImprovedLogger object. def attach(logger) logger.token = @loggers.first.token rescue nil @loggers << logger end # Detach an ImprovedLogger object. def detach(logger) @loggers.delete(logger) end # Delegate all method calls to all attached loggers. # # @private def method_missing(name, *args) @loggers.each do |logger| logger.send(name, *args) end end end end end
Version data entries
6 entries across 6 versions & 1 rubygems