Class: Logger::Joint
- Inherits:
-
Object
- Object
- Logger::Joint
- Includes:
- PlusMethod
- Defined in:
- lib/logger/joint/version.rb,
lib/logger/joint.rb
Defined Under Namespace
Modules: PlusMethod
Constant Summary collapse
- VERSION =
'0.1.0'
Class Method Summary collapse
-
.respond_as_logger?(object) ⇒ Boolean
methods common to Logger and Syslog::Logger are need for.
Instance Method Summary collapse
- #add(*args, &block) ⇒ Object
- #debug(*args, &block) ⇒ Object
- #debug? ⇒ Boolean
- #error(*args, &block) ⇒ Object
- #error? ⇒ Boolean
- #fatal(*args, &block) ⇒ Object
- #fatal? ⇒ Boolean
- #info(*args, &block) ⇒ Object
- #info? ⇒ Boolean
-
#initialize(primary_logger, secondary_logger) ⇒ Joint
constructor
A new instance of Joint.
- #level ⇒ Object
- #unknown(*args, &block) ⇒ Object
- #warn(*args, &block) ⇒ Object
- #warn? ⇒ Boolean
Methods included from PlusMethod
Constructor Details
#initialize(primary_logger, secondary_logger) ⇒ Joint
Returns a new instance of Joint.
25 26 27 28 29 30 |
# File 'lib/logger/joint.rb', line 25 def initialize(primary_logger, secondary_logger) self.class.respond_as_logger? primary_logger or raise TypeError, 'primary is not a logger.' self.class.respond_as_logger? secondary_logger or raise TypeError, 'secondary is not a logger.' @primary = primary_logger @secondary = secondary_logger end |
Class Method Details
.respond_as_logger?(object) ⇒ Boolean
methods common to Logger and Syslog::Logger are need for.
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
# File 'lib/logger/joint.rb', line 8 def self.respond_as_logger?(object) [ :level, :add, :debug, :info, :warn, :error, :fatal, :unknown, :debug?, :info?, :warn?, :error?, :fatal? ].all?{|name| object.respond_to? name } end |
Instance Method Details
#add(*args, &block) ⇒ Object
43 44 45 |
# File 'lib/logger/joint.rb', line 43 def add(*args, &block) apply_method(:add, *args, &block) end |
#debug(*args, &block) ⇒ Object
47 48 49 |
# File 'lib/logger/joint.rb', line 47 def debug(*args, &block) apply_method(:debug, *args, &block) end |
#debug? ⇒ Boolean
76 77 78 |
# File 'lib/logger/joint.rb', line 76 def debug? apply_level_predicate(:debug?) end |
#error(*args, &block) ⇒ Object
59 60 61 |
# File 'lib/logger/joint.rb', line 59 def error(*args, &block) apply_method(:error, *args, &block) end |
#error? ⇒ Boolean
88 89 90 |
# File 'lib/logger/joint.rb', line 88 def error? apply_level_predicate(:error?) end |
#fatal(*args, &block) ⇒ Object
63 64 65 |
# File 'lib/logger/joint.rb', line 63 def fatal(*args, &block) apply_method(:fatal, *args, &block) end |
#fatal? ⇒ Boolean
92 93 94 |
# File 'lib/logger/joint.rb', line 92 def fatal? apply_level_predicate(:fatal?) end |
#info(*args, &block) ⇒ Object
51 52 53 |
# File 'lib/logger/joint.rb', line 51 def info(*args, &block) apply_method(:info, *args, &block) end |
#info? ⇒ Boolean
80 81 82 |
# File 'lib/logger/joint.rb', line 80 def info? apply_level_predicate(:info?) end |
#level ⇒ Object
32 33 34 |
# File 'lib/logger/joint.rb', line 32 def level [ @primary, @secondary ].map(&:level).min end |
#unknown(*args, &block) ⇒ Object
67 68 69 |
# File 'lib/logger/joint.rb', line 67 def unknown(*args, &block) apply_method(:unknown, *args, &block) end |
#warn(*args, &block) ⇒ Object
55 56 57 |
# File 'lib/logger/joint.rb', line 55 def warn(*args, &block) apply_method(:warn, *args, &block) end |
#warn? ⇒ Boolean
84 85 86 |
# File 'lib/logger/joint.rb', line 84 def warn? apply_level_predicate(:warn?) end |