|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.jboss.security.xacml.sunxacml.cond.HigherOrderFunction
public class HigherOrderFunction
Represents all of the higher order bag functions, except map, which has its own class due to the issues with its return type. Unlike the other functions that are designed to work over any types (the type-* functions) these functions don't use specific names to describe what type they operate over, so you don't need to install new instances for any new datatypes you define.
| Field Summary | |
|---|---|
static String |
NAME_ALL_OF
Standard identifier for the all-of function. |
static String |
NAME_ALL_OF_ALL
Standard identifier for the all-of-all function. |
static String |
NAME_ALL_OF_ANY
Standard identifier for the all-of-any function. |
static String |
NAME_ANY_OF
Standard identifier for the any-of function. |
static String |
NAME_ANY_OF_ALL
Standard identifier for the any-of-all function. |
static String |
NAME_ANY_OF_ANY
Standard identifier for the any-of-any function. |
| Constructor Summary | |
|---|---|
HigherOrderFunction(String functionName)
Creates a new instance of the given function. |
|
| Method Summary | |
|---|---|
void |
checkInputs(List inputs)
Checks that the given inputs are valid for this function. |
void |
checkInputsNoBag(List inputs)
Checks that the given inputs are valid for this function if all inputs are considered to not be bags. |
void |
encode(OutputStream output)
Encodes this HigherOrderFunction into its XML
representation and writes this encoding to the given
OutputStream with no indentation. |
void |
encode(OutputStream output,
Indenter indenter)
Encodes this HigherOrderFunction into its XML
representation and writes this encoding to the given
OutputStream with indentation. |
EvaluationResult |
evaluate(List inputs,
EvaluationCtx context)
Evaluates the function, using the specified parameters. |
URI |
getIdentifier()
Returns the full identifier of this function, as known by the factories. |
URI |
getReturnType()
Returns the type of attribute value that will be returned by this function. |
static Set |
getSupportedIdentifiers()
Returns a Set containing all the function identifiers
supported by this class. |
URI |
getType()
Returns the same value as getReturnType. |
boolean |
returnsBag()
Returns whether or not this function will actually return a bag of values. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static final String NAME_ANY_OF
public static final String NAME_ALL_OF
public static final String NAME_ANY_OF_ANY
public static final String NAME_ALL_OF_ANY
public static final String NAME_ANY_OF_ALL
public static final String NAME_ALL_OF_ALL
| Constructor Detail |
|---|
public HigherOrderFunction(String functionName)
functionName - the function to create
IllegalArgumentException - if the function is unknown| Method Detail |
|---|
public static Set getSupportedIdentifiers()
Set containing all the function identifiers
supported by this class.
Set of Stringspublic URI getIdentifier()
getIdentifier in interface Functionpublic URI getType()
getReturnType. This is here
to support the Expression interface.
getType in interface Expressionpublic URI getReturnType()
getReturnType in interface Functionpublic boolean returnsBag()
returnsBag in interface ExpressionreturnsBag in interface Function
public EvaluationResult evaluate(List inputs,
EvaluationCtx context)
evaluate in interface Functioninputs - a List of Evaluatable
objects representing the arguments passed to the functioncontext - an EvaluationCtx so that the
Evaluatable objects can be evaluated
EvaluationResult representing the
function's result
public void checkInputs(List inputs)
throws IllegalArgumentException
checkInputs in interface Functioninputs - a List of Evaluatables
IllegalArgumentException - if the inputs are invalid
public void checkInputsNoBag(List inputs)
throws IllegalArgumentException
checkInputsNoBag in interface Functioninputs - a List of Evaluatables
IllegalArgumentException - alwayspublic void encode(OutputStream output)
HigherOrderFunction into its XML
representation and writes this encoding to the given
OutputStream with no indentation.
encode in interface Expressionencode in interface Functionoutput - a stream into which the XML-encoded data is written
public void encode(OutputStream output,
Indenter indenter)
HigherOrderFunction into its XML
representation and writes this encoding to the given
OutputStream with indentation.
encode in interface Expressionencode in interface Functionoutput - a stream into which the XML-encoded data is writtenindenter - an object that creates indentation strings
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||