class InputSanitizer::V2::PayloadTransform
Attributes
context[R]
original_payload[R]
Public Class Methods
call(original_payload, context = {})
click to toggle source
# File lib/input_sanitizer/v2/payload_transform.rb, line 6 def self.call(original_payload, context = {}) new(original_payload, context).call end
new(original_payload, context = {})
click to toggle source
# File lib/input_sanitizer/v2/payload_transform.rb, line 10 def initialize(original_payload, context = {}) fail "#{self.class} is missing #transform method" unless respond_to?(:transform) @original_payload, @context = original_payload, context end
Public Instance Methods
call()
click to toggle source
# File lib/input_sanitizer/v2/payload_transform.rb, line 15 def call transform payload end
Private Instance Methods
has?(key)
click to toggle source
# File lib/input_sanitizer/v2/payload_transform.rb, line 35 def has?(key) payload.has_key?(key) end
merge_in(field, options = {})
click to toggle source
# File lib/input_sanitizer/v2/payload_transform.rb, line 28 def merge_in(field, options = {}) if source = payload.delete(field) source = options[:using].call(source) if options[:using] payload.merge!(source) end end
payload()
click to toggle source
# File lib/input_sanitizer/v2/payload_transform.rb, line 39 def payload @payload ||= original_payload.with_indifferent_access end
rename(from, to)
click to toggle source
# File lib/input_sanitizer/v2/payload_transform.rb, line 21 def rename(from, to) if has?(from) data = payload.delete(from) payload[to] = data end end