class Realize::Filter::ByKeyValue
This transformer can take an array or a hash (put in array) and it understands how to select only the records where a key's value statically equates to the transformer's value.
Attributes
desired_value[R]
key[R]
value[R]
Public Class Methods
new(key:, value:)
click to toggle source
# File lib/realize/filter/by_key_value.rb, line 25 def initialize(key:, value:) raise ArgumentError, 'key is required' if key.to_s.empty? @key = key @value = value freeze end
Public Instance Methods
transform(resolver, value, _time, _record)
click to toggle source
# File lib/realize/filter/by_key_value.rb, line 34 def transform(resolver, value, _time, _record) records = array(value) records.select do |record| record_value = resolver.get(record, key) record_value == desired_value end end