Class: Fluent::Auditify::Registry
- Inherits:
-
Object
- Object
- Fluent::Auditify::Registry
- Defined in:
- lib/fluent/auditify/registry.rb
Instance Attribute Summary collapse
-
#map ⇒ Object
readonly
Returns the value of attribute map.
Instance Method Summary collapse
-
#initialize(kind, prefix) ⇒ Registry
constructor
A new instance of Registry.
-
#lookup(name) ⇒ Class
The object which inherit from Fluent::Auditify::Plugin.
- #register(kind, plugin_name, plugin_klass) ⇒ Object
Constructor Details
#initialize(kind, prefix) ⇒ Registry
Returns a new instance of Registry.
9 10 11 12 13 14 |
# File 'lib/fluent/auditify/registry.rb', line 9 def initialize(kind, prefix) @kind = kind # e.g. lib/fluent/auditify/conf_ @search_prefix = prefix @map = {} end |
Instance Attribute Details
#map ⇒ Object (readonly)
Returns the value of attribute map.
7 8 9 |
# File 'lib/fluent/auditify/registry.rb', line 7 def map @map end |
Instance Method Details
#lookup(name) ⇒ Class
Returns the object which inherit from Fluent::Auditify::Plugin.
18 19 20 21 22 |
# File 'lib/fluent/auditify/registry.rb', line 18 def lookup(name) sym = "#{@kind}/#{name}".to_sym return @map[sym] if @map[sym] raise NotFoundPluginError.new("Unknown #{@kind} plugin", name: name) end |
#register(kind, plugin_name, plugin_klass) ⇒ Object
26 27 28 29 30 31 32 |
# File 'lib/fluent/auditify/registry.rb', line 26 def register(kind, plugin_name, plugin_klass) sym = "#{kind}/#{plugin_name}".to_sym if @map.key?(sym) raise DuplicatedPluginError.new("#{sym} is already registered") end @map[sym] = plugin_klass end |