Sha256: 20dad0c592ba0d682aec45e4fcc98d481a8fc819124b35b4a6b4de8882232339

Contents?: true

Size: 568 Bytes

Versions: 1

Compression:

Stored size: 568 Bytes

Contents

require 'logger'

class Radiodan
module Logging
  @output = '/dev/null'
  
  def self.included(klass)
    klass.extend ClassMethods
  end
  
  def self.output=(output)
    @output = output
  end
  
  def self.output
    @output
  end

  def logger
    self.class.logger
  end

  module ClassMethods    
    @@logs = {}
    
    def logger
      unless @@logs.include? self.name
        new_log = Logger.new(Logging.output)
        new_log.progname = self.name
        
        @@logs[self.name] = new_log
      end
      
      @@logs[self.name]
    end
  end
end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
radiodan-0.0.1 lib/radiodan/logging.rb