cascading.flow.stream.element

## Class GroupingSpliceGate

- java.lang.Object
- - cascading.flow.stream.duct.Duct<Incoming,Outgoing>
  - - cascading.flow.stream.duct.Gate<Incoming,Outgoing>
    - - cascading.flow.stream.element.SpliceGate<TupleEntry,Grouping<TupleEntry,TupleEntryIterator>>
      - - cascading.flow.stream.element.GroupingSpliceGate

All Implemented Interfaces:
  Collapsing, Window, ElementDuct

Direct Known Subclasses:
  MemorySpliceGate

    public abstract class GroupingSpliceGate
    extends SpliceGate<TupleEntry,Grouping<TupleEntry,TupleEntryIterator>>
    implements Window

### Nested Class Summary

Nested Classes
`protected class` `GroupingSpliceGate.DelegatedTuple`

### Field Summary

Fields
`protected java.util.Comparator<Tuple>[]` `groupComparators`
`protected TupleHasher` `groupHasher`
`protected Grouping<TupleEntry,TupleEntryIterator>` `grouping`
`protected Resettable2<Tuple,Tuple>` `groupSortTuple`
`protected Resettable1<Tuple>` `groupTuple`
`protected TupleBuilder[]` `keyBuilder`
`protected TupleEntry` `keyEntry`
`protected Fields[]` `keyFields`
`protected Tuple` `keyTuple`
`protected boolean` `nullsAreNotEqual`
`protected TupleBuilder[]` `sortBuilder`
`protected Fields[]` `sortFields`
`protected TupleEntryChainIterator` `tupleEntryIterator`
`protected java.util.Comparator<Tuple>[]` `valueComparators`
`protected TupleBuilder[]` `valuesBuilder`
`protected Fields[]` `valuesFields`
`protected Resettable1<Tuple>` `valueTuple`

### Fields inherited from class cascading.flow.stream.element.SpliceGate

`flowProcess, incomingScopes, outgoingScopes, role, splice`

### Fields inherited from class cascading.flow.stream.duct.Duct

`next`

### Constructor Summary

Constructors
`protected` `GroupingSpliceGate(FlowProcess flowProcess, Splice splice)`
`protected` `GroupingSpliceGate(FlowProcess flowProcess, Splice splice, IORole role)`

### Method Summary

Methods
`void` `cleanup()`
`protected TupleBuilder` `createDefaultNarrowBuilder(Fields incomingFields, Fields narrowFields)`
`protected TupleBuilder` `createNarrowBuilder(Fields incomingFields, Fields narrowFields)`
`protected TupleBuilder` `createNulledBuilder(Fields incomingFields, Fields keyField)`
`protected Tuple` `getDelegatedTuple(Tuple object)` This allows the tuple to honor the hasher and comparators, if any
`protected java.util.Comparator` `getKeyComparator()`
`protected int` `getNumDeclaredIncomingBranches()`
`protected void` `initComparators()`
`void` `initialize()` Called immediately after bind

### Methods inherited from class cascading.flow.stream.element.SpliceGate

`equals, getBranchNames, getFlowElement, getIncomingScopes, getOutgoingScopes, getSplice, handleException, handleReThrowableException, hashCode, hasTrapHandler, setBranchNames, setTrapHandler, toString`

### Methods inherited from class cascading.flow.stream.duct.Duct

`bind, complete, getNext, getNextFor, prepare, receive, receiveFirst, start`

### Methods inherited from class java.lang.Object

`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

### Field Detail

#### keyFields

    protected Fields[] keyFields

#### sortFields

    protected Fields[] sortFields

#### valuesFields

    protected Fields[] valuesFields

#### groupComparators

    protected java.util.Comparator<Tuple>[] groupComparators

#### valueComparators

    protected java.util.Comparator<Tuple>[] valueComparators

#### groupHasher

    protected TupleHasher groupHasher

#### nullsAreNotEqual

    protected boolean nullsAreNotEqual

#### keyBuilder

    protected TupleBuilder[] keyBuilder

#### valuesBuilder

    protected TupleBuilder[] valuesBuilder

#### sortBuilder

    protected TupleBuilder[] sortBuilder

#### keyTuple

    protected Tuple keyTuple

#### groupTuple

    protected Resettable1<Tuple> groupTuple

#### groupSortTuple

    protected Resettable2<Tuple,Tuple> groupSortTuple

#### valueTuple

    protected Resettable1<Tuple> valueTuple

#### grouping

    protected Grouping<TupleEntry,TupleEntryIterator> grouping

#### keyEntry

    protected TupleEntry keyEntry

#### tupleEntryIterator

    protected TupleEntryChainIterator tupleEntryIterator

### Constructor Detail

#### GroupingSpliceGate

    protected GroupingSpliceGate(FlowProcess flowProcess,
                      Splice splice)

#### GroupingSpliceGate

    protected GroupingSpliceGate(FlowProcess flowProcess,
                      Splice splice,
                      IORole role)

### Method Detail

#### createNarrowBuilder

    protected TupleBuilder createNarrowBuilder(Fields incomingFields,
                                   Fields narrowFields)

#### createDefaultNarrowBuilder

    protected TupleBuilder createDefaultNarrowBuilder(Fields incomingFields,
                                          Fields narrowFields)

#### createNulledBuilder

    protected TupleBuilder createNulledBuilder(Fields incomingFields,
                                   Fields keyField)

#### initialize

    public void initialize()

Description copied from class: `Duct`
Called immediately after bind

Overrides:
  `initialize` in class `SpliceGate<TupleEntry,Grouping<TupleEntry,TupleEntryIterator>>`

#### initComparators

    protected void initComparators()

#### getKeyComparator

    protected java.util.Comparator getKeyComparator()

#### cleanup

    public void cleanup()

Overrides:
  `cleanup` in class `Duct<TupleEntry,Grouping<TupleEntry,TupleEntryIterator>>`

#### getNumDeclaredIncomingBranches

    protected int getNumDeclaredIncomingBranches()

#### getDelegatedTuple

    protected final Tuple getDelegatedTuple(Tuple object)

This allows the tuple to honor the hasher and comparators, if any

Parameters:
  `object` - the tuple to wrap
Returns:
  a DelegatedTuple instance