Class: Cosmos::RawLoggerPair
Overview
Holds a read/write pair of raw loggers
Instance Attribute Summary collapse
-
#read_logger ⇒ RawLogger
The read logger.
-
#write_logger ⇒ RawLogger
The write logger.
Instance Method Summary collapse
-
#clone ⇒ Object
Clone the raw logger pair.
-
#initialize(name, params = []) ⇒ RawLoggerPair
constructor
A new instance of RawLoggerPair.
-
#name=(name) ⇒ Object
Change the raw logger name.
-
#start ⇒ Object
Start raw logging.
-
#stop ⇒ Object
Close any open raw data log files.
Constructor Details
#initialize(name, params = []) ⇒ RawLoggerPair
Returns a new instance of RawLoggerPair.
25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
# File 'lib/cosmos/io/raw_logger_pair.rb', line 25 def initialize(name, params = []) if params.empty? raw_logger_class = RawLogger else raw_logger_class = Cosmos.require_class(params[0]) end if params[1] @read_logger = raw_logger_class.new(name, :READ, *params[1..-1]) @write_logger = raw_logger_class.new(name, :WRITE, *params[1..-1]) else @read_logger = raw_logger_class.new(name, :READ) @write_logger = raw_logger_class.new(name, :WRITE) end end |
Instance Attribute Details
#read_logger ⇒ RawLogger
Returns The read logger.
19 20 21 |
# File 'lib/cosmos/io/raw_logger_pair.rb', line 19 def read_logger @read_logger end |
#write_logger ⇒ RawLogger
Returns The write logger.
21 22 23 |
# File 'lib/cosmos/io/raw_logger_pair.rb', line 21 def write_logger @write_logger end |
Instance Method Details
#clone ⇒ Object
Clone the raw logger pair
60 61 62 63 64 65 66 67 |
# File 'lib/cosmos/io/raw_logger_pair.rb', line 60 def clone raw_logger_pair = super() raw_logger_pair.read_logger = @read_logger.clone raw_logger_pair.write_logger = @write_logger.clone raw_logger_pair.read_logger.start if @read_logger.logging_enabled raw_logger_pair.write_logger.start if @write_logger.logging_enabled raw_logger_pair end |
#name=(name) ⇒ Object
Change the raw logger name
42 43 44 45 |
# File 'lib/cosmos/io/raw_logger_pair.rb', line 42 def name=(name) @read_logger.name = name @write_logger.name = name end |
#start ⇒ Object
Start raw logging
48 49 50 51 |
# File 'lib/cosmos/io/raw_logger_pair.rb', line 48 def start @read_logger.start @write_logger.start end |
#stop ⇒ Object
Close any open raw data log files
54 55 56 57 |
# File 'lib/cosmos/io/raw_logger_pair.rb', line 54 def stop @read_logger.stop @write_logger.stop end |