Class GenericHigherOrderFunctionFactory
- java.lang.Object
-
- org.ow2.authzforce.core.pdp.api.func.GenericHigherOrderFunctionFactory
-
- All Implemented Interfaces:
PdpExtension
public abstract class GenericHigherOrderFunctionFactory extends Object implements PdpExtension
Interface for generic higher-order function factories, such as the one used for the standard map function in Authzforce PDP engine. A generic function is a function class with a type parameter depending on the sub-function's return type, e.g. the standard map function, therefore the function is instantiated for a specific sub-function's return type.- Version:
- $Id: $
-
-
Field Summary
-
Fields inherited from interface org.ow2.authzforce.core.pdp.api.PdpExtension
AUTHZFORCE_EXTENSION_PREFIX
-
-
Constructor Summary
Constructors Constructor Description GenericHigherOrderFunctionFactory()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract <SUB_RETURN_T extends AttributeValue>
HigherOrderBagFunction<?,SUB_RETURN_T>getInstance(Datatype<SUB_RETURN_T> subFunctionReturnType)
Returns instance of the Higher-order functionString
toString()
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.ow2.authzforce.core.pdp.api.PdpExtension
getId
-
-
-
-
Method Detail
-
getInstance
public abstract <SUB_RETURN_T extends AttributeValue> HigherOrderBagFunction<?,SUB_RETURN_T> getInstance(Datatype<SUB_RETURN_T> subFunctionReturnType) throws IllegalArgumentException
Returns instance of the Higher-order function- Parameters:
subFunctionReturnType
- sub-function's return datatype- Returns:
- higher-order function instance (non-null, throw exceptions below if no instance may be returned for this argument)
- Throws:
IllegalArgumentException
- iffsubFunctionReturnType == null
orsubFunctionReturnType
is not compatible with this factory (i.e. map function only accepts primitive datatype as subfunction's return type
-
-