cascading.operation.filter

## Class Xor

- java.lang.Object
- - cascading.operation.BaseOperation<Logic.Context>
  - - cascading.operation.filter.Logic
    - - cascading.operation.filter.Xor

- All Implemented Interfaces:
    DeclaresResults, Filter<Logic.Context>, Operation<Logic.Context>, Traceable, java.io.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

    Constructors
    Constructor and Description
    `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

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `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 Xplenty, Inc. All Rights Reserved.