class Batsir::Transformers::FieldTransformer
Attributes
fields[RW]
Public Instance Methods
execute(message)
click to toggle source
# File lib/batsir/transformers/field_transformer.rb, line 17 def execute(message) fields = self.fields if fields.any? && message.respond_to?(:keys) symbolized_message_keys = {} message.keys.each do |key| symbolized_message_keys[key.to_sym] = key end fields_to_remove = symbolized_message_keys.keys - fields.keys - fields.values fields.each do |new, old| message[new.to_s] = message.delete(symbolized_message_keys[old]) end fields_to_remove.each do |field| message.delete(symbolized_message_keys[field]) end end message end
fields=(hash)
click to toggle source
# File lib/batsir/transformers/field_transformer.rb, line 10 def fields=(hash) @fields = {} hash.each do |k, v| @fields[k.to_sym] = v.to_sym end end