SunTM's XACML Implementation for JavaTM

com.sun.xacml.cond
Class ComparisonFunction

java.lang.Object
  extended bycom.sun.xacml.cond.FunctionBase
      extended bycom.sun.xacml.cond.ComparisonFunction
All Implemented Interfaces:
Function

public class ComparisonFunction
extends FunctionBase

A class that implements all of the standard comparison functions.

Since:
1.0

Field Summary
static String NAME_DATE_GREATER_THAN
          Standard identifier for the date-greater-than function.
static String NAME_DATE_GREATER_THAN_OR_EQUAL
          Standard identifier for the date-greater-than-or-equal function.
static String NAME_DATE_LESS_THAN
          Standard identifier for the date-less-than function.
static String NAME_DATE_LESS_THAN_OR_EQUAL
          Standard identifier for the date-less-than-or-equal function.
static String NAME_DATETIME_GREATER_THAN
          Standard identifier for the dateTime-greater-than function.
static String NAME_DATETIME_GREATER_THAN_OR_EQUAL
          Standard identifier for the dateTime-greater-than-or-equal function.
static String NAME_DATETIME_LESS_THAN
          Standard identifier for the dateTime-less-than function.
static String NAME_DATETIME_LESS_THAN_OR_EQUAL
          Standard identifier for the dateTime-less-than-or-equal function.
static String NAME_DOUBLE_GREATER_THAN
          Standard identifier for the double-greater-than function.
static String NAME_DOUBLE_GREATER_THAN_OR_EQUAL
          Standard identifier for the double-greater-than-or-equal function.
static String NAME_DOUBLE_LESS_THAN
          Standard identifier for the double-less-than function.
static String NAME_DOUBLE_LESS_THAN_OR_EQUAL
          Standard identifier for the double-less-than-or-equal function.
static String NAME_INTEGER_GREATER_THAN
          Standard identifier for the integer-greater-than function.
static String NAME_INTEGER_GREATER_THAN_OR_EQUAL
          Standard identifier for the integer-greater-than-or-equal function.
static String NAME_INTEGER_LESS_THAN
          Standard identifier for the integer-less-than function.
static String NAME_INTEGER_LESS_THAN_OR_EQUAL
          Standard identifier for the integer-less-than-or-equal function.
static String NAME_STRING_GREATER_THAN
          Standard identifier for the string-greater-than function.
static String NAME_STRING_GREATER_THAN_OR_EQUAL
          Standard identifier for the string-greater-than-or-equal function.
static String NAME_STRING_LESS_THAN
          Standard identifier for the string-less-than function.
static String NAME_STRING_LESS_THAN_OR_EQUAL
          Standard identifier for the string-less-than-or-equal function.
static String NAME_TIME_GREATER_THAN
          Standard identifier for the time-greater-than function.
static String NAME_TIME_GREATER_THAN_OR_EQUAL
          Standard identifier for the time-greater-than-or-equal function.
static String NAME_TIME_LESS_THAN
          Standard identifier for the time-less-than function.
static String NAME_TIME_LESS_THAN_OR_EQUAL
          Standard identifier for the time-less-than-or-equal function.
 
Fields inherited from class com.sun.xacml.cond.FunctionBase
FUNCTION_NS
 
Constructor Summary
ComparisonFunction(String functionName)
          Creates a new ComparisonFunction object.
 
Method Summary
 EvaluationResult evaluate(List inputs, EvaluationCtx context)
          Evaluate the function, using the specified parameters.
static Set getSupportedIdentifiers()
          Returns a Set containing all the function identifiers supported by this class.
 
Methods inherited from class com.sun.xacml.cond.FunctionBase
checkInputs, checkInputsNoBag, evalArgs, getFunctionId, getFunctionName, getIdentifier, getReturnType, getReturnTypeAsString, makeProcessingError, returnsBag
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

NAME_INTEGER_GREATER_THAN

public static final String NAME_INTEGER_GREATER_THAN
Standard identifier for the integer-greater-than function.

See Also:
Constant Field Values

NAME_INTEGER_GREATER_THAN_OR_EQUAL

public static final String NAME_INTEGER_GREATER_THAN_OR_EQUAL
Standard identifier for the integer-greater-than-or-equal function.

See Also:
Constant Field Values

NAME_INTEGER_LESS_THAN

public static final String NAME_INTEGER_LESS_THAN
Standard identifier for the integer-less-than function.

See Also:
Constant Field Values

NAME_INTEGER_LESS_THAN_OR_EQUAL

public static final String NAME_INTEGER_LESS_THAN_OR_EQUAL
Standard identifier for the integer-less-than-or-equal function.

See Also:
Constant Field Values

NAME_DOUBLE_GREATER_THAN

public static final String NAME_DOUBLE_GREATER_THAN
Standard identifier for the double-greater-than function.

See Also:
Constant Field Values

NAME_DOUBLE_GREATER_THAN_OR_EQUAL

public static final String NAME_DOUBLE_GREATER_THAN_OR_EQUAL
Standard identifier for the double-greater-than-or-equal function.

See Also:
Constant Field Values

NAME_DOUBLE_LESS_THAN

public static final String NAME_DOUBLE_LESS_THAN
Standard identifier for the double-less-than function.

See Also:
Constant Field Values

NAME_DOUBLE_LESS_THAN_OR_EQUAL

public static final String NAME_DOUBLE_LESS_THAN_OR_EQUAL
Standard identifier for the double-less-than-or-equal function.

See Also:
Constant Field Values

NAME_STRING_GREATER_THAN

public static final String NAME_STRING_GREATER_THAN
Standard identifier for the string-greater-than function.

See Also:
Constant Field Values

NAME_STRING_GREATER_THAN_OR_EQUAL

public static final String NAME_STRING_GREATER_THAN_OR_EQUAL
Standard identifier for the string-greater-than-or-equal function.

See Also:
Constant Field Values

NAME_STRING_LESS_THAN

public static final String NAME_STRING_LESS_THAN
Standard identifier for the string-less-than function.

See Also:
Constant Field Values

NAME_STRING_LESS_THAN_OR_EQUAL

public static final String NAME_STRING_LESS_THAN_OR_EQUAL
Standard identifier for the string-less-than-or-equal function.

See Also:
Constant Field Values

NAME_TIME_GREATER_THAN

public static final String NAME_TIME_GREATER_THAN
Standard identifier for the time-greater-than function.

See Also:
Constant Field Values

NAME_TIME_GREATER_THAN_OR_EQUAL

public static final String NAME_TIME_GREATER_THAN_OR_EQUAL
Standard identifier for the time-greater-than-or-equal function.

See Also:
Constant Field Values

NAME_TIME_LESS_THAN

public static final String NAME_TIME_LESS_THAN
Standard identifier for the time-less-than function.

See Also:
Constant Field Values

NAME_TIME_LESS_THAN_OR_EQUAL

public static final String NAME_TIME_LESS_THAN_OR_EQUAL
Standard identifier for the time-less-than-or-equal function.

See Also:
Constant Field Values

NAME_DATETIME_GREATER_THAN

public static final String NAME_DATETIME_GREATER_THAN
Standard identifier for the dateTime-greater-than function.

See Also:
Constant Field Values

NAME_DATETIME_GREATER_THAN_OR_EQUAL

public static final String NAME_DATETIME_GREATER_THAN_OR_EQUAL
Standard identifier for the dateTime-greater-than-or-equal function.

See Also:
Constant Field Values

NAME_DATETIME_LESS_THAN

public static final String NAME_DATETIME_LESS_THAN
Standard identifier for the dateTime-less-than function.

See Also:
Constant Field Values

NAME_DATETIME_LESS_THAN_OR_EQUAL

public static final String NAME_DATETIME_LESS_THAN_OR_EQUAL
Standard identifier for the dateTime-less-than-or-equal function.

See Also:
Constant Field Values

NAME_DATE_GREATER_THAN

public static final String NAME_DATE_GREATER_THAN
Standard identifier for the date-greater-than function.

See Also:
Constant Field Values

NAME_DATE_GREATER_THAN_OR_EQUAL

public static final String NAME_DATE_GREATER_THAN_OR_EQUAL
Standard identifier for the date-greater-than-or-equal function.

See Also:
Constant Field Values

NAME_DATE_LESS_THAN

public static final String NAME_DATE_LESS_THAN
Standard identifier for the date-less-than function.

See Also:
Constant Field Values

NAME_DATE_LESS_THAN_OR_EQUAL

public static final String NAME_DATE_LESS_THAN_OR_EQUAL
Standard identifier for the date-less-than-or-equal function.

See Also:
Constant Field Values
Constructor Detail

ComparisonFunction

public ComparisonFunction(String functionName)
Creates a new ComparisonFunction object.

Parameters:
functionName - the standard XACML name of the function to be handled by this object, including the full namespace
Throws:
IllegalArgumentException - if the function isn't known
Method Detail

getSupportedIdentifiers

public static Set getSupportedIdentifiers()
Returns a Set containing all the function identifiers supported by this class.

Returns:
a Set of Strings

evaluate

public EvaluationResult evaluate(List inputs,
                                 EvaluationCtx context)
Evaluate the function, using the specified parameters.

Parameters:
inputs - a List of Evaluatable objects representing the arguments passed to the function
context - an EvaluationCtx so that the Evaluatable objects can be evaluated
Returns:
an EvaluationResult representing the function's result

Sun's XACML Implementation Version 1.2

Copyright 2003-2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms.

Sun, Sun Microsystems, the Sun Logo, and Java are trademarks or registered trademarks of Sun Microsystems, Inc. in the US and other countries.