Module: Serega::SeregaPlugins::Formatters

Defined in:
lib/serega/plugins/formatters/formatters.rb

Defined Under Namespace

Modules: AttributeInstanceMethods, ConfigInstanceMethods Classes: FormattersConfig

Class Method Summary collapse

Class Method Details

.after_load_plugin(serializer_class, **opts) ⇒ Object



21
22
23
24
25
26
# File 'lib/serega/plugins/formatters/formatters.rb', line 21

def self.after_load_plugin(serializer_class, **opts)
  config = serializer_class.config
  config.opts[:formatters] = {}
  config.formatters.add(opts[:formatters] || {})
  config.attribute_keys << :format
end

.before_load_plugin(serializer_class, **opts) ⇒ Object



10
11
12
13
14
# File 'lib/serega/plugins/formatters/formatters.rb', line 10

def self.before_load_plugin(serializer_class, **opts)
  if serializer_class.plugin_used?(:batch)
    raise SeregaError, "Plugin `formatters` must be loaded before `batch`"
  end
end

.load_plugin(serializer_class, **_opts) ⇒ Object



16
17
18
19
# File 'lib/serega/plugins/formatters/formatters.rb', line 16

def self.load_plugin(serializer_class, **_opts)
  serializer_class::SeregaConfig.include(ConfigInstanceMethods)
  serializer_class::SeregaAttribute.include(AttributeInstanceMethods)
end

.plugin_nameObject



6
7
8
# File 'lib/serega/plugins/formatters/formatters.rb', line 6

def self.plugin_name
  :formatters
end