Class CloseablePolicyProvider.Factory<CONF_T extends org.ow2.authzforce.xmlns.pdp.ext.AbstractPolicyProvider>

    • Constructor Detail

      • Factory

        public Factory()
    • Method Detail

      • getInstance

        public abstract CloseablePolicyProvider<?> getInstance​(CONF_T conf,
                                                               XmlUtils.XmlnsFilteringParserFactory xacmlParserFactory,
                                                               int maxPolicySetRefDepth,
                                                               ExpressionFactory expressionFactory,
                                                               CombiningAlgRegistry combiningAlgRegistry,
                                                               EnvironmentProperties environmentProperties,
                                                               Optional<PolicyProvider<?>> otherHelpingPolicyProvider)
                                                        throws IllegalArgumentException
        Create PolicyProvider instance
        Parameters:
        conf - configuration
        xacmlParserFactory - XACML parser factory for parsing any XACML Policy(Set)
        maxPolicySetRefDepth - maximum allowed depth of PolicySet reference chain (via PolicySetIdReference): PolicySet1 -> PolicySet2 -> ...; to be enforced by any instance created by this factory. A strictly negative value means no limit
        expressionFactory - Expression factory for parsing XACML Expressions in the policies
        combiningAlgRegistry - Combining algorithm registry for getting implementations of algorithms used in the policies
        environmentProperties - global PDP configuration environment properties
        otherHelpingPolicyProvider - other optional policy provider that helps the new instance resolve policy references that it cannot resolve on its own. It is meant to be a combination of the policy providers instantiated previously, if there was any.
        Returns:
        the instance
        Throws:
        IllegalArgumentException - if conf required but null