Class: Nucleon::Core
- Includes:
- Mixin::Colors
- Defined in:
- lib/core/core.rb
Direct Known Subclasses
Constant Summary collapse
- @@logger =
Properties
Util::Logger.new('core')
- @@ui =
Util::Console.new('core')
- @@ui_lock =
Mutex.new
Instance Attribute Summary collapse
-
#logger ⇒ Object
—————————————————————————– Accessor / Modifiers.
-
#ui ⇒ Object
—————————————————————————– Accessor / Modifiers.
Class Method Summary collapse
-
.logger ⇒ Object
—.
-
.ui ⇒ Object
—.
-
.ui_group(resource, color = :cyan) ⇒ Object
—————————————————————————– General utilities.
Instance Method Summary collapse
-
#initialize(data = {}, defaults = {}, force = true, set_initialized = true, basic_merge = true) ⇒ Core
constructor
—————————————————————————– Constructor / Destructor.
-
#initialized? ⇒ Boolean
—————————————————————————– Checks.
-
#ui_group(resource, color = :cyan) ⇒ Object
—.
Methods included from Mixin::Colors
#black, #blue, #cyan, #green, #grey, #purple, #red, #yellow
Methods inherited from Config
#[], #[]=, #array, array, #clear, #defaults, #delete, #empty?, ensure, #export, filter, #filter, #get, #get_array, #get_hash, #has_key?, hash, #hash, #import, #init, init, init_flat, #keys, #set, #string, string, #string_map, string_map, symbol, #symbol, symbol_map, #symbol_map, test, #test
Methods included from Mixin::ConfigOptions
#all_options, #clear_options, #contexts, #get_options, #set_options
Methods included from Mixin::ConfigCollection
#all_properties, #clear_properties, #delete_property, #get_property, #save_properties, #set_property
Constructor Details
#initialize(data = {}, defaults = {}, force = true, set_initialized = true, basic_merge = true) ⇒ Core
Constructor / Destructor
17 18 19 20 21 22 23 24 25 26 27 28 |
# File 'lib/core/core.rb', line 17 def initialize(data = {}, defaults = {}, force = true, set_initialized = true, basic_merge = true) super(data, defaults, force, basic_merge) @class_color = Util::Data.ensure_value(delete(:class_color, :cyan), :cyan) @class_label = self.class.to_s.downcase.gsub(/^nucleon::/, '') self.logger = delete(:logger, @class_label) self.ui = Config.new(export).defaults({ :resource => Util::Console.colorize(@class_label, @class_color) }) logger.debug('Initialized instance logger and interface') @initialized = true if set_initialized end |
Instance Attribute Details
#logger ⇒ Object
Accessor / Modifiers
40 41 42 |
# File 'lib/core/core.rb', line 40 def logger @logger end |
#ui ⇒ Object
Accessor / Modifiers
40 41 42 |
# File 'lib/core/core.rb', line 40 def ui @ui end |
Class Method Details
.logger ⇒ Object
44 45 46 |
# File 'lib/core/core.rb', line 44 def self.logger return @@logger end |
.ui ⇒ Object
60 61 62 |
# File 'lib/core/core.rb', line 60 def self.ui return @@ui end |
.ui_group(resource, color = :cyan) ⇒ Object
General utilities
75 76 77 78 79 80 81 82 83 84 85 86 |
# File 'lib/core/core.rb', line 75 def self.ui_group(resource, color = :cyan) @@ui_lock.synchronize do begin ui_resource = ui.resource ui.resource = Util::Console.colorize(resource, color) yield(ui) ensure ui.resource = ui_resource end end end |
Instance Method Details
#initialized? ⇒ Boolean
Checks
33 34 35 |
# File 'lib/core/core.rb', line 33 def initialized? @initialized end |
#ui_group(resource, color = :cyan) ⇒ Object
90 91 92 93 94 95 96 97 |
# File 'lib/core/core.rb', line 90 def ui_group(resource, color = :cyan) ui_resource = ui.resource ui.resource = Util::Console.colorize(resource, color) yield(ui) ensure ui.resource = ui_resource end |