Module: TreeHaver::BackendRegistry
- Defined in:
- lib/tree_haver/backend_registry.rb
Class Method Summary collapse
Class Method Details
.all ⇒ Object
19 20 21 22 23 |
# File 'lib/tree_haver/backend_registry.rb', line 19 def all mutex.synchronize do backends.values.map { |backend| BackendReference.new(**deep_dup(backend)) } end end |
.clear! ⇒ Object
25 26 27 |
# File 'lib/tree_haver/backend_registry.rb', line 25 def clear! mutex.synchronize { backends.clear } end |
.fetch(id) ⇒ Object
14 15 16 17 |
# File 'lib/tree_haver/backend_registry.rb', line 14 def fetch(id) data = mutex.synchronize { backends[id] } data && BackendReference.new(**deep_dup(data)) end |
.register(backend) ⇒ Object
7 8 9 10 11 12 |
# File 'lib/tree_haver/backend_registry.rb', line 7 def register(backend) mutex.synchronize do backends[backend.id] = deep_dup(backend.to_h) end nil end |