Module: Serega::Plugins
- Defined in:
- lib/serega/plugins.rb,
lib/serega/plugins/root/root.rb,
lib/serega/plugins/hide_nil/hide_nil.rb,
lib/serega/plugins/metadata/metadata.rb,
lib/serega/plugins/preloads/preloads.rb,
lib/serega/plugins/presenter/presenter.rb,
lib/serega/plugins/formatters/formatters.rb,
lib/serega/plugins/metadata/meta_attribute.rb,
lib/serega/plugins/validate_modifiers/validate.rb,
lib/serega/plugins/preloads/lib/enum_deep_freeze.rb,
lib/serega/plugins/preloads/lib/main_preload_path.rb,
lib/serega/plugins/metadata/validations/check_opts.rb,
lib/serega/plugins/metadata/validations/check_path.rb,
lib/serega/plugins/metadata/validations/check_block.rb,
lib/serega/plugins/context_metadata/context_metadata.rb,
lib/serega/plugins/preloads/lib/format_user_preloads.rb,
lib/serega/plugins/preloads/lib/preloads_constructor.rb,
lib/serega/plugins/string_modifiers/string_modifiers.rb,
lib/serega/plugins/activerecord_preloads/lib/preloader.rb,
lib/serega/plugins/validate_modifiers/validate_modifiers.rb,
lib/serega/plugins/metadata/validations/check_opt_hide_nil.rb,
lib/serega/plugins/string_modifiers/parse_string_modifiers.rb,
lib/serega/plugins/metadata/validations/check_opt_hide_empty.rb,
lib/serega/plugins/activerecord_preloads/activerecord_preloads.rb,
lib/serega/plugins/preloads/validations/check_opt_preload_path.rb
Overview
Module in which all Serega plugins should be stored
Defined Under Namespace
Modules: ActiverecordPreloads, ContextMetadata, Formatters, HideNil, Metadata, Preloads, Presenter, Root, StringModifiers, ValidateModifiers
Class Method Summary collapse
-
.find_plugin(name) ⇒ Class<Module>
Loads plugin code and returns plugin core module.
-
.register_plugin(name, mod) ⇒ Object
Registers given plugin to be able to load it using symbol name.
Class Method Details
.find_plugin(name) ⇒ Class<Module>
Loads plugin code and returns plugin core module.
33 34 35 36 37 38 39 40 |
# File 'lib/serega/plugins.rb', line 33 def find_plugin(name) return name if name.is_a?(Module) return @plugins[name] if @plugins.key?(name) require_plugin(name) @plugins[name] || raise(Error, "Plugin '#{name}' did not register itself correctly") end |
.register_plugin(name, mod) ⇒ Object
Registers given plugin to be able to load it using symbol name.
14 15 16 |
# File 'lib/serega/plugins.rb', line 14 def register_plugin(name, mod) @plugins[name] = mod end |