Class: Humboldt::Reducer

Inherits:
Processor show all
Defined in:
lib/humboldt/reducer.rb

Direct Known Subclasses

Patterns::SumReducer

Defined Under Namespace

Classes: TypeConversionEnumerator

Instance Attribute Summary

Attributes inherited from Processor

#current_context

Class Method Summary collapse

Methods inherited from Processor

cleanup, #cleanup, input, output, setup, #setup, type_accessor

Class Method Details

.reduce(&block) ⇒ Object



6
7
8
9
10
11
12
# File 'lib/humboldt/reducer.rb', line 6

def reduce(&block)
  define_method(:reduce) do |key, values, context|
    @in_key.hadoop = key
    values_enumerator = TypeConversionEnumerator.new(@in_value, values.iterator)
    instance_exec(@in_key.ruby, values_enumerator, &block)
  end
end