cascading.pipe
Class Every

java.lang.Object
  extended by cascading.pipe.Pipe
      extended by cascading.pipe.Operator
          extended by cascading.pipe.Every
All Implemented Interfaces:
FlowElement, Serializable

public class Every
extends Operator

The Every operator applies an Aggregator or Buffer to every grouping.

Any number of Every instances may follow other Every, GroupBy, or CoGroup instances if they apply an Aggregator, not a Buffer. If a Buffer, only one Every may follow a GroupBy or CoGroup.

Every operators create aggregate values for every grouping they encounter. This aggregate value is added to the current grouping Tuple.

In the case of a CoGroup, the grouping Tuple will be all the grouping keys from all joined streams, and if an "outer" type join is used, one value on the groupingTuple may be null.

Subsequent Every instances can continue to append values to the grouping Tuple. When an Each follows and Every, the Each applies its operation to the grouping Tuple (thus all child values in the grouping are discarded and only aggregate values are propagated).

See Also:
Serialized Form

Field Summary
 
Fields inherited from class cascading.pipe.Operator
argumentSelector, operation, outputSelector, plannerLevel
 
Fields inherited from class cascading.pipe.Pipe
configDef, previous, stepConfigDef
 
Constructor Summary
Every(Pipe previous, Aggregator aggregator)
          Constructor Every creates a new Every instance.
Every(Pipe previous, Aggregator aggregator, Fields outputSelector)
          Constructor Every creates a new Every instance.
Every(Pipe previous, AssertionLevel assertionLevel, GroupAssertion assertion)
          Constructor Every creates a new Every instance.
Every(Pipe previous, Buffer buffer)
          Constructor Every creates a new Every instance.
Every(Pipe previous, Buffer buffer, Fields outputSelector)
          Constructor Every creates a new Every instance.
Every(Pipe previous, Fields argumentSelector, Aggregator aggregator)
          Constructor Every creates a new Every instance.
Every(Pipe previous, Fields argumentSelector, Aggregator aggregator, Fields outputSelector)
          Constructor Every creates a new Every instance.
Every(Pipe previous, Fields argumentSelector, AssertionLevel assertionLevel, GroupAssertion assertion)
          Constructor Every creates a new Every instance.
Every(Pipe previous, Fields argumentSelector, Buffer buffer)
          Constructor Every creates a new Every instance.
Every(Pipe previous, Fields argumentSelector, Buffer buffer, Fields outputSelector)
          Constructor Every creates a new Every instance.
 
Method Summary
 Aggregator getAggregator()
           
 Buffer getBuffer()
           
 GroupAssertion getGroupAssertion()
           
 boolean isAggregator()
          Method isReducer returns true if this Every instance holds a Aggregator operation.
 boolean isBuffer()
          Method isBuffer returns true if this Every instance holds a Buffer operation.
 boolean isGroupAssertion()
           
 cascading.flow.planner.Scope outgoingScopeFor(Set<cascading.flow.planner.Scope> incomingScopes)
          Method outgoingScopeFor returns the Scope this FlowElement hands off to the next FlowElement.
 Fields resolveIncomingOperationArgumentFields(cascading.flow.planner.Scope incomingScope)
          Method resolveIncomingOperationArgumentFields returns the Fields outgoing from the previous FlowElement that are consumable by this FlowElement when preparing Operation arguments.
 Fields resolveIncomingOperationPassThroughFields(cascading.flow.planner.Scope incomingScope)
          Method resolveIncomingOperationPassThroughFields returns the Fields outgoing from the previous FlowElement that are consumable by this FlowElement when preparing the Pipe outgoing tuple.
 
Methods inherited from class cascading.pipe.Operator
equals, getArgumentSelector, getAssertionLevel, getFieldDeclaration, getOperation, getOutputSelector, getPlannerLevel, hashCode, hasPlannerLevel, isEquivalentTo, printInternal, resolveRemainderFields, toString, verifyOperation
 
Methods inherited from class cascading.pipe.Pipe
getConfigDef, getHeads, getName, getPrevious, getStepConfigDef, getTrace, hasConfigDef, hasStepConfigDef, named, names, pipes, print
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Every

@ConstructorProperties(value={"previous","aggregator"})
public Every(Pipe previous,
                                        Aggregator aggregator)
Constructor Every creates a new Every instance.

Parameters:
previous - previous Pipe to receive input Tuples from
aggregator - Aggregator to be applied to every input Tuple grouping

Every

@ConstructorProperties(value={"previous","argumentSelector","aggregator"})
public Every(Pipe previous,
                                        Fields argumentSelector,
                                        Aggregator aggregator)
Constructor Every creates a new Every instance.

Parameters:
previous - previous Pipe to receive input Tuples from
argumentSelector - field selector that selects Function arguments from the input Tuple
aggregator - Aggregator to be applied to every input Tuple grouping

Every

@ConstructorProperties(value={"previous","argumentSelector","aggregator","outputSelector"})
public Every(Pipe previous,
                                        Fields argumentSelector,
                                        Aggregator aggregator,
                                        Fields outputSelector)
Constructor Every creates a new Every instance.

Parameters:
previous - previous Pipe to receive input Tuples from
argumentSelector - field selector that selects Function arguments from the input Tuple
aggregator - Aggregator to be applied to every input Tuple grouping
outputSelector - field selector that selects the output Tuple from the grouping and Aggregator results Tuples

Every

@ConstructorProperties(value={"previous","aggregator","outputSelector"})
public Every(Pipe previous,
                                        Aggregator aggregator,
                                        Fields outputSelector)
Constructor Every creates a new Every instance.

Parameters:
previous - previous Pipe to receive input Tuples from
aggregator - Aggregator to be applied to every input Tuple grouping
outputSelector - field selector that selects the output Tuple from the grouping and Aggregator results Tuples

Every

@ConstructorProperties(value={"previous","buffer"})
public Every(Pipe previous,
                                        Buffer buffer)
Constructor Every creates a new Every instance.

Parameters:
previous - previous Pipe to receive input Tuples from
buffer - Buffer to be applied to every input Tuple grouping

Every

@ConstructorProperties(value={"previous","argumentSelector","buffer"})
public Every(Pipe previous,
                                        Fields argumentSelector,
                                        Buffer buffer)
Constructor Every creates a new Every instance.

Parameters:
previous - previous Pipe to receive input Tuples from
argumentSelector - field selector that selects Function arguments from the input Tuple
buffer - Buffer to be applied to every input Tuple grouping

Every

@ConstructorProperties(value={"previous","argumentSelector","buffer","outputSelector"})
public Every(Pipe previous,
                                        Fields argumentSelector,
                                        Buffer buffer,
                                        Fields outputSelector)
Constructor Every creates a new Every instance.

Parameters:
previous - previous Pipe to receive input Tuples from
argumentSelector - field selector that selects Function arguments from the input Tuple
buffer - Buffer to be applied to every input Tuple grouping
outputSelector - field selector that selects the output Tuple from the grouping and Buffer results Tuples

Every

@ConstructorProperties(value={"previous","buffer","outputSelector"})
public Every(Pipe previous,
                                        Buffer buffer,
                                        Fields outputSelector)
Constructor Every creates a new Every instance.

Parameters:
previous - previous Pipe to receive input Tuples from
buffer - Buffer to be applied to every input Tuple grouping
outputSelector - field selector that selects the output Tuple from the grouping and Buffer results Tuples

Every

@ConstructorProperties(value={"previous","assertionLevel","assertion"})
public Every(Pipe previous,
                                        AssertionLevel assertionLevel,
                                        GroupAssertion assertion)
Constructor Every creates a new Every instance.

Parameters:
previous - previous Pipe to receive input Tuples from
assertionLevel - of type AssertionLevel
assertion - GroupAssertion to be applied to every input Tuple grouping

Every

@ConstructorProperties(value={"previous","argumentSelector","assertionLevel","assertion"})
public Every(Pipe previous,
                                        Fields argumentSelector,
                                        AssertionLevel assertionLevel,
                                        GroupAssertion assertion)
Constructor Every creates a new Every instance.

Parameters:
previous - previous Pipe to receive input Tuples from
argumentSelector - field selector that selects Function arguments from the input Tuple
assertionLevel - AssertionLevel to associate with the Assertion
assertion - GroupAssertion to be applied to every input Tuple grouping
Method Detail

isBuffer

public boolean isBuffer()
Method isBuffer returns true if this Every instance holds a Buffer operation.

Returns:
boolean

isAggregator

public boolean isAggregator()
Method isReducer returns true if this Every instance holds a Aggregator operation.

Returns:
boolean

isGroupAssertion

public boolean isGroupAssertion()

getAggregator

public Aggregator getAggregator()

getBuffer

public Buffer getBuffer()

getGroupAssertion

public GroupAssertion getGroupAssertion()

resolveIncomingOperationArgumentFields

public Fields resolveIncomingOperationArgumentFields(cascading.flow.planner.Scope incomingScope)
Description copied from interface: FlowElement
Method resolveIncomingOperationArgumentFields returns the Fields outgoing from the previous FlowElement that are consumable by this FlowElement when preparing Operation arguments.

Specified by:
resolveIncomingOperationArgumentFields in interface FlowElement
Overrides:
resolveIncomingOperationArgumentFields in class Pipe
Parameters:
incomingScope - of type Scope
Returns:
Fields

resolveIncomingOperationPassThroughFields

public Fields resolveIncomingOperationPassThroughFields(cascading.flow.planner.Scope incomingScope)
Description copied from interface: FlowElement
Method resolveIncomingOperationPassThroughFields returns the Fields outgoing from the previous FlowElement that are consumable by this FlowElement when preparing the Pipe outgoing tuple.

Specified by:
resolveIncomingOperationPassThroughFields in interface FlowElement
Overrides:
resolveIncomingOperationPassThroughFields in class Pipe
Parameters:
incomingScope - of type Scope
Returns:
Fields

outgoingScopeFor

public cascading.flow.planner.Scope outgoingScopeFor(Set<cascading.flow.planner.Scope> incomingScopes)
Description copied from interface: FlowElement
Method outgoingScopeFor returns the Scope this FlowElement hands off to the next FlowElement.

Specified by:
outgoingScopeFor in interface FlowElement
Specified by:
outgoingScopeFor in class Operator
Parameters:
incomingScopes - of type Set
Returns:
Scope


Copyright © 2007-2012 Concurrent, Inc. All Rights Reserved.