Class: TableSync::Plugins::Registry Private
- Inherits:
-
Object
- Object
- TableSync::Plugins::Registry
- Includes:
- Enumerable
- Defined in:
- lib/table_sync/plugins/registry.rb
Overview
This class is part of a private API. You should avoid using this class if possible, as it may be removed or be changed in the future.
Instance Method Summary collapse
- #[](plugin_name) ⇒ TableSync::Plugins::Abstract private
- #each(&block) ⇒ Enumerable private
- #initialize ⇒ void constructor private
- #loaded ⇒ Hash<String,Class<TableSync::Plugins::Abstract>> private
- #names ⇒ Array<String> private
- #register(plugin_name, plugin_module) ⇒ void (also: #[]=) private
Constructor Details
#initialize ⇒ void
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
12 13 14 15 |
# File 'lib/table_sync/plugins/registry.rb', line 12 def initialize @plugin_set = {} @access_lock = Mutex.new end |
Instance Method Details
#[](plugin_name) ⇒ TableSync::Plugins::Abstract
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
22 23 24 |
# File 'lib/table_sync/plugins/registry.rb', line 22 def [](plugin_name) thread_safe { fetch(plugin_name) } end |
#each(&block) ⇒ Enumerable
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
58 59 60 |
# File 'lib/table_sync/plugins/registry.rb', line 58 def each(&block) thread_safe { iterate(&block) } end |
#loaded ⇒ Hash<String,Class<TableSync::Plugins::Abstract>>
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
49 50 51 |
# File 'lib/table_sync/plugins/registry.rb', line 49 def loaded thread_safe { loaded_plugins } end |
#names ⇒ Array<String>
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
41 42 43 |
# File 'lib/table_sync/plugins/registry.rb', line 41 def names thread_safe { plugin_names } end |
#register(plugin_name, plugin_module) ⇒ void Also known as: []=
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
This method returns an undefined value.
32 33 34 |
# File 'lib/table_sync/plugins/registry.rb', line 32 def register(plugin_name, plugin_module) thread_safe { apply(plugin_name, plugin_module) } end |