- 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_T,PARAM_T>
-
- Type Parameters:
RETURN_T
- function return typePARAM_T
- single/common parameter type
- All Implemented Interfaces:
Function<RETURN_T>
,PdpExtension
,PrimitiveValue
,Value
- Direct Known Subclasses:
ComparisonFunction
,DatatypeConversionFunction
,EqualTypeMatchFunction
,FirstOrderBagFunctions.BagSize
,FirstOrderBagFunctions.PrimitiveToBag
,FirstOrderBagFunctions.SetFunction
,FirstOrderBagFunctions.SingletonBagToPrimitive
public abstract class SingleParameterTypedFirstOrderFunction<RETURN_T extends Value,PARAM_T extends Value> extends FirstOrderFunction<RETURN_T>
Superclass of "first-order" functions of single-type parameters, i.e. whose all parameters have the same datatype. Supplies several useful methods, making it easier to implement such "first-order" function.
-
-
Field Summary
Fields Modifier and Type Field Description protected SingleParameterTypedFirstOrderFunctionSignature<RETURN_T,PARAM_T>
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
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description List<? extends Datatype<?>>
getParameterTypes()
Get parameter typesDatatype<RETURN_T>
getReturnType()
Gets the return type of the function-
Methods inherited from class org.ow2.authzforce.core.pdp.api.func.FirstOrderFunction
newCall, newCall
-
Methods inherited from class org.ow2.authzforce.core.pdp.api.func.BaseFunction
equals, getId, getIndeterminateArgException, getIndeterminateArgMessage, hashCode, toString
-
-
-
-
Field Detail
-
functionSignature
protected final SingleParameterTypedFirstOrderFunctionSignature<RETURN_T extends Value,PARAM_T extends Value> functionSignature
-
-
Constructor Detail
-
SingleParameterTypedFirstOrderFunction
public SingleParameterTypedFirstOrderFunction(String name, Datatype<RETURN_T> returnType, boolean varargs, List<? extends Datatype<PARAM_T>> parameterTypes) throws IllegalArgumentException
Constructor that creates a function from its signature definition- Parameters:
name
- function namereturnType
- function return typevarargs
- true iff the function takes a variable number of arguments (like JavaMethod.isVarArgs()
parameterTypes
- function parameter types. Note: the "? extends" allows to useBagDatatype
.- Throws:
IllegalArgumentException
- if (name == null || returnType == null || parameterTypes == null || parameterTypes.size() < 1
)
-
-
Method Detail
-
getReturnType
public final Datatype<RETURN_T> getReturnType()
Description copied from interface:Function
Gets the return type of the function- Returns:
- function return type
-
getParameterTypes
public final List<? extends Datatype<?>> getParameterTypes()
Get parameter types- Specified by:
getParameterTypes
in classFirstOrderFunction<RETURN_T extends Value>
- Returns:
- parameter types
-
-