Class FirstOrderBagFunctions.SetFunction<AV extends AttributeValue,RETURN extends Value>
- java.lang.Object
-
- org.ow2.authzforce.core.pdp.api.func.BaseFunction<RETURN>
-
- org.ow2.authzforce.core.pdp.api.func.FirstOrderFunction<RETURN_T>
-
- org.ow2.authzforce.core.pdp.api.func.SingleParameterTypedFirstOrderFunction<RETURN,Bag<AV>>
-
- org.ow2.authzforce.core.pdp.api.func.FirstOrderBagFunctions.SetFunction<AV,RETURN>
-
- Type Parameters:
AV
- primitive type of elements in bag/setRETURN
- return type
- All Implemented Interfaces:
Function<RETURN>
,PdpExtension
,PrimitiveValue
,Value
- Direct Known Subclasses:
FirstOrderBagFunctions.AtLeastOneMemberOf
,FirstOrderBagFunctions.Intersection
,FirstOrderBagFunctions.SetEquals
,FirstOrderBagFunctions.Subset
,FirstOrderBagFunctions.Union
- Enclosing class:
- FirstOrderBagFunctions
public abstract static class FirstOrderBagFunctions.SetFunction<AV extends AttributeValue,RETURN extends Value> extends SingleParameterTypedFirstOrderFunction<RETURN,Bag<AV>>
Base class of all *-set functions
-
-
Field Summary
-
Fields inherited from class org.ow2.authzforce.core.pdp.api.func.SingleParameterTypedFirstOrderFunction
functionSignature
-
Fields inherited from interface org.ow2.authzforce.core.pdp.api.func.Function
AUTHZFORCE_EXTENSION_PREFIX, XACML_NS_1_0, XACML_NS_2_0, XACML_NS_3_0
-
-
Constructor Summary
Constructors Constructor Description SetFunction(String functionIdSuffix, Datatype<RETURN> returnType, boolean varArgs, List<? extends BagDatatype<AV>> parameterTypes)
Creates instance
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract RETURN
eval(Bag<AV>[] bagArgs)
FirstOrderFunctionCall<RETURN>
newCall(List<Expression<?>> argExpressions, Datatype<?>... remainingArgTypes)
Returns a function call for calling this function.-
Methods inherited from class org.ow2.authzforce.core.pdp.api.func.SingleParameterTypedFirstOrderFunction
getParameterTypes, getReturnType
-
Methods inherited from class org.ow2.authzforce.core.pdp.api.func.FirstOrderFunction
newCall
-
Methods inherited from class org.ow2.authzforce.core.pdp.api.func.BaseFunction
equals, getId, getIndeterminateArgException, getIndeterminateArgMessage, hashCode, toString
-
-
-
-
Constructor Detail
-
SetFunction
public SetFunction(String functionIdSuffix, Datatype<RETURN> returnType, boolean varArgs, List<? extends BagDatatype<AV>> parameterTypes)
Creates instance- Parameters:
functionIdSuffix
- suffix to functionId; resulting functionId =parameterType.getTypeParameter().getFuncIdPrefix()+ functionIdSuffix
function IDreturnType
- return typevarArgs
- variable-length parameter (the number of parameters to set function is variable)parameterTypes
- parameter types
-
-
Method Detail
-
newCall
public final FirstOrderFunctionCall<RETURN> newCall(List<Expression<?>> argExpressions, Datatype<?>... remainingArgTypes) throws IllegalArgumentException
Description copied from class:FirstOrderFunction
Returns a function call for calling this function.- Specified by:
newCall
in classFirstOrderFunction<RETURN extends Value>
- Parameters:
argExpressions
- function arguments (expressions)remainingArgTypes
- types of remaining inputs to be passed only at request evaluation time, if not all arguments are specified inargExpressions
. Therefore, only their type is checked at this point. The actual argument values will be passed as last parameters when callingBaseFirstOrderFunctionCall.evaluate(org.ow2.authzforce.core.pdp.api.EvaluationContext, boolean, org.ow2.authzforce.core.pdp.api.value.AttributeValue...)
at request evaluation time, via the returnedFunctionCall
.- Returns:
- Function call handle for calling this function which such inputs (with possible changes from original inputs due to optimizations for instance)
- Throws:
IllegalArgumentException
- if inputs are invalid for this function
-
-