Class: Liza::Box
Direct Known Subclasses
ArtSystem::ArtBox, CryptoSystem::CryptoBox, DeepSystem::DeepBox, DeskSystem::DeskBox, DevSystem::DevBox, EcoSystem::EcoBox, HappySystem::HappyBox, LabSystem::LabBox, MediaSystem::MediaBox, MicroSystem::MicroBox, NetSystem::NetBox, PrimeSystem::PrimeBox, WebSystem::WebBox, WorkSystem::WorkBox
Class Method Summary collapse
- .[](symbol) ⇒ Object
- .color ⇒ Object
-
.configuration ⇒ Liza::Box
Returns the Configuration Box.
-
.configure(name, &block) ⇒ Object
Configure from the Configuration Box at app/my_box.rb.
- .forward(panel_key, method_name = nil) ⇒ Object
- .panels ⇒ Object
-
.preconfiguration ⇒ Liza::Box
Returns the Preconfiguration Box.
-
.preconfigure(name, &block) ⇒ Object
Preconfigure from the Preconfiguration Box at lib/my_system/my_box.rb.
Methods inherited from Unit
_erbs_for, #add, add, cl, #cl, class_methods_defined, const_added, const_missing, constants_defined, define_error, descendants_select, division, erbs_available, erbs_defined, erbs_for, errors, #fetch, fetch, get, #get, instance_methods_defined, log, #log, log?, #log?, #log_array, log_array, log_hash, #log_hash, #log_level, log_level, #log_level?, log_level?, log_levels, #log_levels, #log_render_convert, #log_render_format, #log_render_in, #log_render_out, method_added, methods_defined, namespace, part, raise_error, #raise_error, reload!, #reload!, #render, #render!, #render_stack, renderable_formats_for, renderable_names, section, sections, #set, set, #settings, settings, singleton_method_added, sleep, #sleep, stick, #stick, sticks, #sticks, subclasses_select, subunits, system, #system, system?, test_class, time_diff, #time_diff
Class Method Details
.[](symbol) ⇒ Object
7 8 9 |
# File 'lib/liza/systemic_units/box.rb', line 7 def self.[] symbol configuration.panels[symbol].started end |
.color ⇒ Object
70 71 72 |
# File 'lib/liza/systemic_units/box.rb', line 70 def self.color system.color end |
.configuration ⇒ Liza::Box
Returns the Configuration Box. (The Box in the app directory) DevBox, HappyBox, etc.
25 26 27 28 29 30 31 |
# File 'lib/liza/systemic_units/box.rb', line 25 def self.configuration @configuration ||= begin last_namespace == name ? self : const_get(last_namespace) rescue NameError self end end |
.configure(name, &block) ⇒ Object
Configure from the Configuration Box at app/my_box.rb
41 42 43 44 45 46 47 |
# File 'lib/liza/systemic_units/box.rb', line 41 def self.configure name, &block raise ArgumentError, "block required" unless block_given? raise ArgumentError, "Invalid panel: #{name}. Valid panels are: #{system.subs}" unless system.subs.include? name panel = panels[name] ||= Liza.const("#{name}_panel").new name panel.push block end |
.forward(panel_key, method_name = nil) ⇒ Object
51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 |
# File 'lib/liza/systemic_units/box.rb', line 51 def self.forward panel_key, method_name=nil case method_name when NilClass method_name = :call box_method_name = panel_key when Symbol box_method_name = method_name when Hash box_method_name = method_name.keys.first method_name = method_name.values.first else raise ArgumentError, "Invalid method_name: #{method_name.inspect}. Expecting Symbol or Hash." end define_singleton_method box_method_name do |*args, **kwargs| self[panel_key].send method_name, *args, **kwargs end end |
.panels ⇒ Object
3 4 5 |
# File 'lib/liza/systemic_units/box.rb', line 3 def self.panels fetch(:panels) { {} } end |
.preconfiguration ⇒ Liza::Box
Returns the Preconfiguration Box. (The Box in the systems directory) DevSystem::DevBox, HappySystem::HappyBox, etc.
17 18 19 |
# File 'lib/liza/systemic_units/box.rb', line 17 def self.preconfiguration @preconfiguration ||= last_namespace == name ? self.superclass : self end |
.preconfigure(name, &block) ⇒ Object
Preconfigure from the Preconfiguration Box at lib/my_system/my_box.rb
36 |
# File 'lib/liza/systemic_units/box.rb', line 36 def self.preconfigure(name, &block)= configure(name, &block) |