Package org.ow2.authzforce.core.pdp.api
Interface DecisionRequestPreprocessor.Factory<IDR,OIDR extends DecisionRequest>
-
- Type Parameters:
OIDR
- type of individual decision request.IDR
- type of output result corresponding to individual decision request(s). Usually serializable, e.g. XACML-schema-derived JAXB Result for XML.
- All Superinterfaces:
PdpExtension
- All Known Implementing Classes:
BaseXacmlJaxbRequestPreprocessor.Factory
- Enclosing interface:
- DecisionRequestPreprocessor<INPUT_DECISION_REQUEST,OUTPUT_INDIVIDUAL_DECISION_REQUEST extends DecisionRequest>
public static interface DecisionRequestPreprocessor.Factory<IDR,OIDR extends DecisionRequest> extends PdpExtension
Factory of request preprocessors
-
-
Field Summary
-
Fields inherited from interface org.ow2.authzforce.core.pdp.api.PdpExtension
AUTHZFORCE_EXTENSION_PREFIX
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Class<IDR>
getInputRequestType()
Returns the type of input requests handled by created instancesDecisionRequestPreprocessor<IDR,OIDR>
getInstance(AttributeValueFactoryRegistry datatypeFactoryRegistry, boolean strictAttributeIssuerMatch, boolean requireContentForXPath, Set<String> extraPdpEngineFeatures)
Create instance of Request pre-processorClass<OIDR>
getOutputRequestType()
Returns the type of output individual decision requests produced by created instances-
Methods inherited from interface org.ow2.authzforce.core.pdp.api.PdpExtension
getId
-
-
-
-
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, 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 enginestrictAttributeIssuerMatch
- 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.)extraPdpEngineFeatures
- extra - not mandatory per XACML 3.0 core specification - features supported by the PDP engine. If a decision request uses 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. SeeDecisionResultPostprocessor.Features
for example.- Returns:
- instance of Request preprocessor
-
-