Class IsBetweenImpl

All Implemented Interfaces:
Filter, MultiValuedFilter, PropertyIsBetween, FilterType

public class IsBetweenImpl extends CompareFilterImpl implements PropertyIsBetween
Straight implementation of GeoAPI interface.
Author:
Justin Deoliveira, The Open Planning Project
  • Field Details

  • Constructor Details

  • Method Details

    • getExpression

      public Expression getExpression()
      Description copied from interface: PropertyIsBetween
      Returns the expression to be compared by this operator.
      Specified by:
      getExpression in interface PropertyIsBetween
    • setExpression

      public void setExpression(Expression expression)
    • getMatchAction

      public MultiValuedFilter.MatchAction getMatchAction()
      Description copied from interface: MultiValuedFilter
      * Flag Controlling MatchAction property When one or more of the operands evaluates to multiple values rather than a single value, which action should be taken? If there are n values for the left operand and m values for the right operand, there are n * m possible combinations that can be compared,

      ANY - if any of the possible combinations match, the result is true (aggregated OR) ALL - only if all of the possible combinations match, the result is true (aggregated AND) ONE - only if exactly one of the possible combinations match, the result is true (aggregated XOR)

      Specified by:
      getMatchAction in interface MultiValuedFilter
      Overrides:
      getMatchAction in class BinaryComparisonAbstract
      Returns:
      MatchAction flag
    • evaluate

      public boolean evaluate(Object feature)
      Description copied from interface: Filter
      Give an object, this method determines if the test(s) represented by this filter object are passed.

      This ability is used to allow Queries against both Features and and non spatial data (such as Record) and to express constraints on permissable data values.

      Specified by:
      evaluate in interface Filter
      Returns:
      true if the test(s) are passed for the provided object
    • evaluateInternal

      public boolean evaluateInternal(Object value, Object lower, Object upper)
    • accept

      public Object accept(FilterVisitor visitor, Object extraData)
      Description copied from class: CompareFilterImpl
      Used by FilterVisitors to perform some action on this filter instance. Typicaly used by Filter decoders, but may also be used by any thing which needs infomration from filter structure. Implementations should always call: visitor.visit(this); It is importatant that this is not left to a parent class unless the parents API is identical.
      Specified by:
      accept in interface Filter
      Specified by:
      accept in class CompareFilterImpl
      Parameters:
      visitor - The visitor which requires access to this filter, the method must call visitor.visit(this);
    • getLowerBoundary

      public Expression getLowerBoundary()
      Description copied from interface: PropertyIsBetween
      Returns the lower bounds (inclusive) an an expression.
      Specified by:
      getLowerBoundary in interface PropertyIsBetween
    • setLowerBoundary

      public void setLowerBoundary(Expression lowerBoundary)
    • getUpperBoundary

      public Expression getUpperBoundary()
      Description copied from interface: PropertyIsBetween
      Returns the upper bounds (inclusive) as an expression.
      Specified by:
      getUpperBoundary in interface PropertyIsBetween
    • setUpperBoundary

      public void setUpperBoundary(Expression upperBoundary)
    • toString

      public String toString()
      Description copied from class: CompareFilterImpl
      Returns a string representation of this filter.
      Overrides:
      toString in class CompareFilterImpl
      Returns:
      String representation of the compare filter.
    • hashCode

      public int hashCode()
      Description copied from class: CompareFilterImpl
      Override of hashCode method.
      Overrides:
      hashCode in class CompareFilterImpl
      Returns:
      a code to hash this object by.
    • equals

      public boolean equals(Object obj)
      Description copied from class: CompareFilterImpl
      Compares this filter to the specified object. Returns true if the passed in object is the same as this filter. Checks to make sure the filter types are the same as well as both of the values.
      Overrides:
      equals in class CompareFilterImpl
      Parameters:
      obj - - the object to compare this CompareFilter against.
      Returns:
      true if specified object is equal to this filter; false otherwise.