Class: GenesisRuby::Utils::Formatters::Base

Inherits:
Object
  • Object
show all
Defined in:
lib/genesis_ruby/utils/formatters/base.rb

Overview

Object Formatter Contract ObjectFormatter iterate over each formatter with the given structure

Instance Method Summary collapse

Instance Method Details

#collect_required_key_values(response_object) ⇒ Object

Collect required key’s values requires for the Response Object formatting Ex. Amount to Major requires Currency



27
28
29
30
31
32
33
34
35
36
37
# File 'lib/genesis_ruby/utils/formatters/base.rb', line 27

def collect_required_key_values(response_object)
  required_key_values = []

  required_keys.each do |required_key|
    next unless response_object.include?(required_key.to_sym)

    required_key_values.push response_object[required_key.to_sym]
  end

  required_key_values
end

#format_key(*_args) ⇒ Object

Format the given Response Key value

Raises:

  • (NotImplementedError)


21
22
23
# File 'lib/genesis_ruby/utils/formatters/base.rb', line 21

def format_key(*_args)
  raise NotImplementedError, 'Format method is not implemented'
end

#formatting_keysObject

The Response keys that the formatter will be applied to



11
12
13
# File 'lib/genesis_ruby/utils/formatters/base.rb', line 11

def formatting_keys
  []
end

#required_keysObject

The keys required for formatting the specific response key



16
17
18
# File 'lib/genesis_ruby/utils/formatters/base.rb', line 16

def required_keys
  []
end