|
||||||||||
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 unknownMethod Detail |
---|
public static Set getSupportedIdentifiers()
Set
containing all the function identifiers
supported by this class.
Set
of String
spublic URI getIdentifier()
getIdentifier
in interface Function
public URI getType()
getReturnType
. This is here
to support the Expression
interface.
getType
in interface Expression
public URI getReturnType()
getReturnType
in interface Function
public boolean returnsBag()
returnsBag
in interface Expression
returnsBag
in interface Function
public EvaluationResult evaluate(List inputs, EvaluationCtx context)
evaluate
in interface Function
inputs
- 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 resultpublic void checkInputs(List inputs) throws IllegalArgumentException
checkInputs
in interface Function
inputs
- a List
of Evaluatable
s
IllegalArgumentException
- if the inputs are invalidpublic void checkInputsNoBag(List inputs) throws IllegalArgumentException
checkInputsNoBag
in interface Function
inputs
- a List
of Evaluatable
s
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 Expression
encode
in interface Function
output
- a stream into which the XML-encoded data is writtenpublic void encode(OutputStream output, Indenter indenter)
HigherOrderFunction
into its XML
representation and writes this encoding to the given
OutputStream
with indentation.
encode
in interface Expression
encode
in interface Function
output
- 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 |