Class: Jisota::Logger
- Inherits:
-
Object
- Object
- Jisota::Logger
- Defined in:
- lib/jisota/logger.rb
Overview
Responsible for outputting to the user / log file / whatever
Will default to use STDOUT and STDERR, but that can be overwritten in the initializer
Instance Attribute Summary collapse
-
#indent_level ⇒ Object
Returns the value of attribute indent_level.
-
#prefix ⇒ Object
Returns the value of attribute prefix.
-
#stderr ⇒ Object
Returns the value of attribute stderr.
-
#stdout ⇒ Object
Returns the value of attribute stdout.
-
#verbose ⇒ Object
Returns the value of attribute verbose.
Instance Method Summary collapse
- #command(command) ⇒ Object
- #error(message) ⇒ Object
- #indent ⇒ Object
- #info(message) ⇒ Object
-
#initialize(options = {}) ⇒ Logger
constructor
A new instance of Logger.
- #outdent ⇒ Object
- #package(package_script) ⇒ Object
- #package_cancelled_by_verify(package_script) ⇒ Object
- #prefixed_message(message) ⇒ Object
- #upload(from:, to:) ⇒ Object
- #warn(message) ⇒ Object
Constructor Details
#initialize(options = {}) ⇒ Logger
Returns a new instance of Logger.
10 11 12 13 14 15 16 |
# File 'lib/jisota/logger.rb', line 10 def initialize( = {}) @stdout = .fetch(:stdout) { $stdout } @stderr = .fetch(:stderr) { $stderr } @verbose = .fetch(:verbose) { false } @prefix = .fetch(:prefix) { "-----> " } @indent_level = 0 end |
Instance Attribute Details
#indent_level ⇒ Object
Returns the value of attribute indent_level.
8 9 10 |
# File 'lib/jisota/logger.rb', line 8 def indent_level @indent_level end |
#prefix ⇒ Object
Returns the value of attribute prefix.
8 9 10 |
# File 'lib/jisota/logger.rb', line 8 def prefix @prefix end |
#stderr ⇒ Object
Returns the value of attribute stderr.
8 9 10 |
# File 'lib/jisota/logger.rb', line 8 def stderr @stderr end |
#stdout ⇒ Object
Returns the value of attribute stdout.
8 9 10 |
# File 'lib/jisota/logger.rb', line 8 def stdout @stdout end |
#verbose ⇒ Object
Returns the value of attribute verbose.
8 9 10 |
# File 'lib/jisota/logger.rb', line 8 def verbose @verbose end |
Instance Method Details
#command(command) ⇒ Object
18 19 20 |
# File 'lib/jisota/logger.rb', line 18 def command(command) "Executing #{command}" end |
#error(message) ⇒ Object
46 47 48 |
# File 'lib/jisota/logger.rb', line 46 def error() stderr.write() end |
#indent ⇒ Object
50 51 52 |
# File 'lib/jisota/logger.rb', line 50 def indent self.indent_level += 1 end |
#info(message) ⇒ Object
38 39 40 |
# File 'lib/jisota/logger.rb', line 38 def info() stdout.write() if verbose end |
#outdent ⇒ Object
54 55 56 |
# File 'lib/jisota/logger.rb', line 54 def outdent self.indent_level -= 1 end |
#package(package_script) ⇒ Object
26 27 28 |
# File 'lib/jisota/logger.rb', line 26 def package(package_script) "Package #{package_script}" end |
#package_cancelled_by_verify(package_script) ⇒ Object
30 31 32 |
# File 'lib/jisota/logger.rb', line 30 def package_cancelled_by_verify(package_script) "Package #{package_script} already installed" end |
#prefixed_message(message) ⇒ Object
34 35 36 |
# File 'lib/jisota/logger.rb', line 34 def () stdout.write((, true, true)) end |
#upload(from:, to:) ⇒ Object
22 23 24 |
# File 'lib/jisota/logger.rb', line 22 def upload(from: , to: ) "Uploading #{from} -> #{to}" end |
#warn(message) ⇒ Object
42 43 44 |
# File 'lib/jisota/logger.rb', line 42 def warn() stderr.write() if verbose end |