Class: Togls::RuleTypeRepositoryDrivers::InMemoryDriver
- Inherits:
-
Object
- Object
- Togls::RuleTypeRepositoryDrivers::InMemoryDriver
- Defined in:
- lib/togls/rule_type_repository_drivers/in_memory_driver.rb
Instance Method Summary collapse
- #get_klass(type_id) ⇒ Object
- #get_type_id(klass_str) ⇒ Object
- #get_type_meta_data(type_id) ⇒ Object
-
#initialize ⇒ InMemoryDriver
constructor
A new instance of InMemoryDriver.
- #store(type_id, klass_str, title, description, target_type) ⇒ Object
Constructor Details
#initialize ⇒ InMemoryDriver
Returns a new instance of InMemoryDriver.
4 5 6 7 8 9 |
# File 'lib/togls/rule_type_repository_drivers/in_memory_driver.rb', line 4 def initialize @rule_types = {} @rule_type_meta_data = {} @type_ids = {} @rule_types_lock = Mutex.new end |
Instance Method Details
#get_klass(type_id) ⇒ Object
21 22 23 24 25 26 27 28 29 |
# File 'lib/togls/rule_type_repository_drivers/in_memory_driver.rb', line 21 def get_klass(type_id) @rule_types_lock.synchronize do if @rule_types.has_key?(type_id) @rule_types[type_id].dup else nil end end end |
#get_type_id(klass_str) ⇒ Object
41 42 43 44 45 46 47 48 49 |
# File 'lib/togls/rule_type_repository_drivers/in_memory_driver.rb', line 41 def get_type_id(klass_str) @rule_types_lock.synchronize do if @type_ids.has_key?(klass_str) @type_ids[klass_str].dup else nil end end end |
#get_type_meta_data(type_id) ⇒ Object
31 32 33 34 35 36 37 38 39 |
# File 'lib/togls/rule_type_repository_drivers/in_memory_driver.rb', line 31 def (type_id) @rule_types_lock.synchronize do if @rule_types.has_key?(type_id) @rule_type_meta_data[type_id].dup else nil end end end |
#store(type_id, klass_str, title, description, target_type) ⇒ Object
11 12 13 14 15 16 17 18 19 |
# File 'lib/togls/rule_type_repository_drivers/in_memory_driver.rb', line 11 def store(type_id, klass_str, title, description, target_type) @rule_types_lock.synchronize do @rule_types[type_id] = klass_str @rule_type_meta_data[type_id] = { title: title, description: description, target_type: target_type } @type_ids[klass_str] = type_id end end |