deegree 2.3 (2010/04/09 10:10 build-4-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: 18195 $, $Date: 2009-06-18 17:55:39 +0200 (Do, 18. Jun 2009) $
Author:
Markus Schneider, last edited by: $Author: mschneider $

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 to100XML()
          Produces an XML representation of this object that complies to Filter Encoding specification 1.0.0.
 StringBuffer to110XML()
          Produces an XML representation of this object that complies to Filter Encoding specification 1.1.0.
 StringBuffer toXML()
          Produces an 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()
Description copied from interface: Operation
Produces an XML representation of this object.

Returns:
an XML representation of this object.

to100XML

public StringBuffer to100XML()
Description copied from interface: Operation
Produces an XML representation of this object that complies to Filter Encoding specification 1.0.0.

Returns:
an XML representation of this object

to110XML

public StringBuffer to110XML()
Description copied from interface: Operation
Produces an XML representation of this object that complies to Filter Encoding specification 1.1.0.

Returns:
an 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.3 (2010/04/09 10:10 build-4-official)

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