Interface DecisionRequestPreprocessor.Factory<IDR,​OIDR extends DecisionRequest>

    • Method Detail

      • getInputRequestType

        Class<IDR> getInputRequestType()
        Returns the type of input requests handled by created instances
        Returns:
        IDR class.
      • getOutputRequestType

        Class<OIDR> getOutputRequestType()
        Returns the type of output individual decision requests produced by created instances
        Returns:
        OIDR class.
      • getInstance

        DecisionRequestPreprocessor<IDR,​OIDR> getInstance​(AttributeValueFactoryRegistry datatypeFactoryRegistry,
                                                                boolean strictAttributeIssuerMatch,
                                                                boolean requireContentForXPath,
                                                                net.sf.saxon.s9api.Processor xmlProcessor,
                                                                Set<String> extraPdpEngineFeatures)
        Create instance of Request pre-processor
        Parameters:
        datatypeFactoryRegistry - attribute datatype factory for parsing XACML Request AttributeValues into Java types compatible with/optimized for the policy evaluation engine
        strictAttributeIssuerMatch - true iff it is required that AttributeDesignator without Issuer only match request Attributes without Issuer. This mode is not fully compliant with XACML 3.0, ยง5.29, in the case that the Issuer is not present; but it performs better and is recommended when all AttributeDesignators have an Issuer (best practice). Set it to false, if you want full compliance with the XACML 3.0 AttributeDesignator Evaluation: "If the Issuer is not present in the attribute designator, then the matching of the attribute to the named attribute SHALL be governed by AttributeId and DataType attributes alone."
        requireContentForXPath - true iff XPath evaluation against Attributes/Content element is required (e.g. for AttributeSelector or xpathExpression evaluation). A preprocessor may skip Content parsing for XPath evaluation, if and only if this is false. (Be aware that a preprocessor may support the MultipleDecision Profile or Hierarchical Profile and therefore require Content parsing for other purposes defined by these profiles.)
        xmlProcessor - XML processor for parsing Attributes/Content prior to XPATH evaluation (e.g. AttributeSelectors). May be null if requireContentForXPath is false.
        extraPdpEngineFeatures - extra - not mandatory per XACML 3.0 core specification - features supported by the PDP engine. If a decision request requests any such non-mandatory feature (e.g. CombinedDecision=true in XACML), the request preprocessor should use this argument to check whether it is supported by the PDP before processing the request further. See DecisionResultPostprocessor.Features for example.
        Returns:
        instance of Request preprocessor