Class: Zodra::ApiRegistry
- Inherits:
-
Object
- Object
- Zodra::ApiRegistry
- Includes:
- Enumerable
- Defined in:
- lib/zodra/api_registry.rb
Class Method Summary collapse
Instance Method Summary collapse
- #clear! ⇒ Object
- #each ⇒ Object
- #find(base_path) ⇒ Object
-
#initialize ⇒ ApiRegistry
constructor
A new instance of ApiRegistry.
- #register(base_path) ⇒ Object
Constructor Details
#initialize ⇒ ApiRegistry
Returns a new instance of ApiRegistry.
11 12 13 |
# File 'lib/zodra/api_registry.rb', line 11 def initialize @store = {} end |
Class Method Details
.global ⇒ Object
7 8 9 |
# File 'lib/zodra/api_registry.rb', line 7 def self.global @global ||= new end |
Instance Method Details
#clear! ⇒ Object
29 30 31 |
# File 'lib/zodra/api_registry.rb', line 29 def clear! @store.clear end |
#each ⇒ Object
25 26 27 |
# File 'lib/zodra/api_registry.rb', line 25 def each(&) @store.each_value(&) end |
#find(base_path) ⇒ Object
21 22 23 |
# File 'lib/zodra/api_registry.rb', line 21 def find(base_path) @store[base_path] end |
#register(base_path) ⇒ Object
15 16 17 18 19 |
# File 'lib/zodra/api_registry.rb', line 15 def register(base_path) raise DuplicateTypeError, "API '#{base_path}' is already registered" if @store.key?(base_path) @store[base_path] = ApiDefinition.new(base_path:) end |