deegree 2.2 (2008/12/22 11:33 build-3038-official)

org.deegree.model.filterencoding
Class PropertyIsBetweenOperation

java.lang.Object
  extended by org.deegree.model.filterencoding.AbstractOperation
      extended by org.deegree.model.filterencoding.ComparisonOperation
          extended by org.deegree.model.filterencoding.PropertyIsBetweenOperation
All Implemented Interfaces:
Operation

public class PropertyIsBetweenOperation
extends ComparisonOperation

Encapsulates the information of a -element (as defined in Filter DTD).

Version:
$Revision: 9343 $, $Date: 2007-12-27 14:30:32 +0100 (Do, 27 Dez 2007) $
Author:
Markus Schneider, last edited by: $Author: apoth $

Field Summary
 
Fields inherited from class org.deegree.model.filterencoding.AbstractOperation
operatorId
 
Constructor Summary
PropertyIsBetweenOperation(PropertyName propertyName, Expression lowerBoundary, Expression upperBoundary)
           
 
Method Summary
static Operation buildFromDOM(Element element)
          Given a DOM-fragment, a corresponding Operation-object is built.
 boolean evaluate(Feature feature)
          Calculates the PropertyIsBetween -Operation's logical value based on the certain property values of the given Feature.
 Expression getLowerBoundary()
           
 PropertyName getPropertyName()
           
 Expression getUpperBoundary()
           
 StringBuffer toXML()
          Produces an indented XML representation of this object.
 
Methods inherited from class org.deegree.model.filterencoding.ComparisonOperation
buildFromDOM
 
Methods inherited from class org.deegree.model.filterencoding.AbstractOperation
getOperatorId, getOperatorName
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PropertyIsBetweenOperation

public PropertyIsBetweenOperation(PropertyName propertyName,
                                  Expression lowerBoundary,
                                  Expression upperBoundary)
Parameters:
propertyName - to check against
lowerBoundary - of the property
upperBoundary - of the property
Method Detail

buildFromDOM

public static Operation buildFromDOM(Element element)
                              throws FilterConstructionException
Given a DOM-fragment, a corresponding Operation-object is built. This method recursively calls other buildFromDOM () - methods to validate the structure of the DOM-fragment.

Parameters:
element -
Returns:
the propertyIsBetween operation
Throws:
FilterConstructionException - if the structure of the DOM-fragment is invalid

getPropertyName

public PropertyName getPropertyName()
Returns:
the name of the property that shall be compared to the boundaries

getLowerBoundary

public Expression getLowerBoundary()
Returns:
the lower boundary of the operation as an Expression

getUpperBoundary

public Expression getUpperBoundary()
Returns:
the upper boundary of the operation as an Expression

toXML

public StringBuffer toXML()
Produces an indented XML representation of this object.


evaluate

public boolean evaluate(Feature feature)
                 throws FilterEvaluationException
Calculates the PropertyIsBetween -Operation's logical value based on the certain property values of the given Feature. TODO: Improve datatype handling.

Parameters:
feature - that determines the property values
Returns:
true, if the Operation evaluates to true, else false
Throws:
FilterEvaluationException - if the evaluation fails

deegree 2.2 (2008/12/22 11:33 build-3038-official)

an open source project founded by lat/lon, Bonn, Germany.
For more information visit: http://deegree.sourceforge.net