Module: Tamashii::Agent::Common
- Defined in:
- lib/tamashii/agent/common.rb,
lib/tamashii/agent/common/loggable.rb
Defined Under Namespace
Modules: Loggable
Class Method Summary collapse
- .get_class_path(class_name) ⇒ Object
- .load_class(class_name) ⇒ Object
- .load_device_class(device_class_name) ⇒ Object
- .string_underscore(original) ⇒ Object
Class Method Details
.get_class_path(class_name) ⇒ Object
18 19 20 |
# File 'lib/tamashii/agent/common.rb', line 18 def self.get_class_path(class_name) string_underscore(class_name) end |
.load_class(class_name) ⇒ Object
12 13 14 15 16 |
# File 'lib/tamashii/agent/common.rb', line 12 def self.load_class(class_name) path = get_class_path(class_name) require path Module.const_get(class_name) end |
.load_device_class(device_class_name) ⇒ Object
7 8 9 10 |
# File 'lib/tamashii/agent/common.rb', line 7 def self.load_device_class(device_class_name) full_class_name = 'Tamashii::Agent::Device::' + device_class_name load_class(full_class_name) end |
.string_underscore(original) ⇒ Object
22 23 24 25 26 27 28 29 30 |
# File 'lib/tamashii/agent/common.rb', line 22 def self.string_underscore(original) word = original.dup word.gsub!(/::/, '/') word.gsub!(/([A-Z]+)([A-Z][a-z])/,'\1_\2') word.gsub!(/([a-z\d])([A-Z])/,'\1_\2') word.tr!("-", "_") word.downcase! word end |