class Dataflow::Nodes::MergeNode

Performs a merge operation on 2 dependencies.

Private Instance Methods

compute_impl() click to toggle source
# File lib/dataflow/nodes/merge_node.rb, line 14
def compute_impl
  process_parallel(node: dependencies.first) do |records|
    merge_records(records: records, index: 0)
  end

  process_parallel(node: dependencies.second) do |records|
    merge_records(records: records, index: 1)
  end
end
merge_records(records:, index:) click to toggle source
# File lib/dataflow/nodes/merge_node.rb, line 24
def merge_records(records:, index:)
  records.each do |record|
    # add a merge key with the corresponding value if necessary
    record[merge_key] = merge_values[index] if merge_key.present?
  end
  records
end