java.lang.Object
com.sun.xacml.combine.CombiningAlgorithm
com.sun.xacml.combine.PolicyCombiningAlgorithm
- Direct Known Subclasses:
- DenyOverridesPolicyAlg, FirstApplicablePolicyAlg, OnlyOneApplicablePolicyAlg, PermitOverridesPolicyAlg
- public abstract class PolicyCombiningAlgorithm
- extends CombiningAlgorithm
The base type for all Policy combining algorithms. Unlike in Rule
Combining Algorithms, each policy must be matched before they're evaluated
to make sure they apply. Also, in combining policies, obligations must be
handled correctly. Specifically, no obligation may be included in the
Result
that doesn't match the effect being returned. So, if
INDETERMINATE or NOT_APPLICABLE is the returned effect, no obligations
may be included in the result. If the effect of the combining algorithm
is PERMIT or DENY, then obligations with a matching fulfillOn effect
are also included in the result.
- Since:
- 1.0
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
PolicyCombiningAlgorithm
public PolicyCombiningAlgorithm(java.net.URI identifier)
- Constructor that takes the algorithm's identifier.
combine
public abstract com.sun.xacml.ctx.Result combine(com.sun.xacml.EvaluationCtx context,
java.util.List policies)
- Combines the policies based on the context to produce some unified
result. This is the one function of a combining algorithm.
Note that unlike in the RuleCombiningAlgorithms, here you must
explicitly match the sub-policies to make sure that you should
consider them, and you must handle Obligations.
- Specified by:
combine
in class CombiningAlgorithm