cascading.operation.filter
Class Xor

java.lang.Object
  extended by cascading.operation.BaseOperation<Logic.Context>
      extended by cascading.operation.filter.Logic
          extended by cascading.operation.filter.Xor
All Implemented Interfaces:
DeclaresResults, Filter<Logic.Context>, Operation<Logic.Context>, Traceable, Serializable

public class Xor
extends Logic

Class Xor is a Filter class that will logically 'xor' (exclusive or) the results of the constructor provided Filter instances.

Logically, if Filter.isRemove(cascading.flow.FlowProcess, cascading.operation.FilterCall) returns true for all given instances, or returns false for all given instances, this filter will return false.

Note that Xor can only be applied to two values.

See Also:
And, Or, Not, Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class cascading.operation.filter.Logic
Logic.Context
 
Field Summary
 
Fields inherited from class cascading.operation.filter.Logic
argumentSelectors, filters
 
Fields inherited from class cascading.operation.BaseOperation
fieldDeclaration, numArgs, trace
 
Fields inherited from interface cascading.operation.Operation
ANY
 
Constructor Summary
Xor(Fields lhsArgumentSelector, Filter lhsFilter, Fields rhsArgumentSelector, Filter rhsFilter)
          Constructor Xor creates a new Xor instance.
Xor(Filter... filters)
          Constructor Xor creates a new Xor instance where all Filter instances receive all arguments.
 
Method Summary
 boolean isRemove(FlowProcess flowProcess, FilterCall filterCall)
          Method isRemove returns true if input should be removed from the tuple stream.
 
Methods inherited from class cascading.operation.filter.Logic
cleanup, equals, getArgumentSelectors, getFieldsSize, getFilters, hashCode, prepare, verify
 
Methods inherited from class cascading.operation.BaseOperation
flush, getFieldDeclaration, getNumArgs, getTrace, isSafe, printOperationInternal, toString, toStringInternal
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface cascading.operation.Operation
flush, getFieldDeclaration, getNumArgs, isSafe
 

Constructor Detail

Xor

@ConstructorProperties(value="filters")
public Xor(Filter... filters)
Constructor Xor creates a new Xor instance where all Filter instances receive all arguments.

Parameters:
filters - of type Filter...

Xor

@ConstructorProperties(value={"lhsArgumentsSelector","lhsFilter","rhsArgumentSelector","rhsFilter"})
public Xor(Fields lhsArgumentSelector,
                                      Filter lhsFilter,
                                      Fields rhsArgumentSelector,
                                      Filter rhsFilter)
Constructor Xor creates a new Xor instance.

Parameters:
lhsArgumentSelector - of type Fields
lhsFilter - of type Filter
rhsArgumentSelector - of type Fields
rhsFilter - of type Filter
Method Detail

isRemove

public boolean isRemove(FlowProcess flowProcess,
                        FilterCall filterCall)
Description copied from interface: Filter
Method isRemove returns true if input should be removed from the tuple stream.

Parameters:
flowProcess - of type FlowProcess
filterCall - of type FilterCall
Returns:
boolean


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