Interface Function<RETURN_T extends Value>

    • Field Detail

      • AUTHZFORCE_EXTENSION_PREFIX

        static final String AUTHZFORCE_EXTENSION_PREFIX
        Prefix used by AuthZForce non-standard functions (PDP extensions). Third-party (outside AuthZForce project) contributions must use a different prefix to avoid conflicts.
        See Also:
        Constant Field Values
      • XACML_NS_1_0

        static final String XACML_NS_1_0
        The standard namespace where all XACML 1.0 spec-defined functions are defined
        See Also:
        Constant Field Values
      • XACML_NS_2_0

        static final String XACML_NS_2_0
        The standard namespace where all XACML 2.0 spec-defined functions are defined
        See Also:
        Constant Field Values
      • XACML_NS_3_0

        static final String XACML_NS_3_0
        The standard namespace where all XACML 3.0 spec-defined functions are defined
        See Also:
        Constant Field Values
    • Method Detail

      • getReturnType

        Datatype<RETURN_T> getReturnType()
        Gets the return type of the function
        Returns:
        function return type
      • getXdmItem

        default net.sf.saxon.s9api.XdmItem getXdmItem()
        Specified by:
        getXdmItem in interface PrimitiveValue
        Returns:
        corresponding XPath (XDM) value
      • newCall

        FunctionCall<RETURN_T> newCall​(List<Expression<?>> argExpressions)
                                throws IllegalArgumentException
        Creates new function call with given arguments (Expressions). Any implementation of this method should first validate inputs according to the function signature/definition.
        Parameters:
        argExpressions - function arguments (expressions)
        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