Package org.ow2.authzforce.core.pdp.api
Class ExtendedDecisions
- java.lang.Object
-
- org.ow2.authzforce.core.pdp.api.ExtendedDecisions
-
public final class ExtendedDecisions extends Object
(Immutable) ExtendedDecision factory
-
-
Field Summary
Fields Modifier and Type Field Description static ExtendedDecision
SIMPLE_DENY
Simple immutable Deny Decision result (no status)static ExtendedDecision
SIMPLE_NOT_APPLICABLE
Simple immutable NoApplicable Decision result (no status)static ExtendedDecision
SIMPLE_PERMIT
Simple immutable Permit extended Decision (no status)
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static ExtendedDecision
getDeny(oasis.names.tc.xacml._3_0.core.schema.wd_17.Status status)
Instantiates a Deny decisionstatic ExtendedDecision
getNotApplicable(oasis.names.tc.xacml._3_0.core.schema.wd_17.Status status)
Instantiates a NotApplicable decisionstatic ExtendedDecision
getPermit(oasis.names.tc.xacml._3_0.core.schema.wd_17.Status status)
Instantiates a Permit decisionstatic ExtendedDecision
newIndeterminate(oasis.names.tc.xacml._3_0.core.schema.wd_17.DecisionType extendedIndeterminate, IndeterminateEvaluationException cause)
Instantiates a Indeterminate Decision result with a given summary error info (status) and optional stacktrace (cause
-
-
-
Field Detail
-
SIMPLE_PERMIT
public static final ExtendedDecision SIMPLE_PERMIT
Simple immutable Permit extended Decision (no status)
-
SIMPLE_DENY
public static final ExtendedDecision SIMPLE_DENY
Simple immutable Deny Decision result (no status)
-
SIMPLE_NOT_APPLICABLE
public static final ExtendedDecision SIMPLE_NOT_APPLICABLE
Simple immutable NoApplicable Decision result (no status)
-
-
Method Detail
-
getPermit
public static ExtendedDecision getPermit(oasis.names.tc.xacml._3_0.core.schema.wd_17.Status status)
Instantiates a Permit decision- Parameters:
status
- status; even if decision is Permit/Deny, there may be a status "ok" (standard status in XACML 3.0) or internal error on attribute resolution but not resulting in Indeterminate because of special combining algorithm ignoring such results (like deny-unless-permit) or MustBePresent="false"- Returns:
- permit result, more particularly
SIMPLE_PERMIT
iffstatus == null
.
-
getDeny
public static ExtendedDecision getDeny(oasis.names.tc.xacml._3_0.core.schema.wd_17.Status status)
Instantiates a Deny decision- Parameters:
status
- status; even if decision is Permit/Deny, there may be a status "ok" (standard status in XACML 3.0) or internal error on attribute resolution but not resulting in Indeterminate because of special combining algorithm ignoring such results (like deny-unless-permit) or MustBePresent="false"- Returns:
- deny result, more particularly
SIMPLE_DENY
iffstatus == null
.
-
getNotApplicable
public static ExtendedDecision getNotApplicable(oasis.names.tc.xacml._3_0.core.schema.wd_17.Status status)
Instantiates a NotApplicable decision- Parameters:
status
- status; even if decision is Permit/Deny, there may be a status "ok" (standard status in XACML 3.0) or internal error on attribute resolution but not resulting in Indeterminate because of special combining algorithm ignoring such results (like deny-unless-permit) or MustBePresent="false"- Returns:
- deny result, more particularly
SIMPLE_NOT_APPLICABLE
iffstatus == null
.
-
newIndeterminate
public static ExtendedDecision newIndeterminate(oasis.names.tc.xacml._3_0.core.schema.wd_17.DecisionType extendedIndeterminate, IndeterminateEvaluationException cause) throws IllegalArgumentException
Instantiates a Indeterminate Decision result with a given summary error info (status) and optional stacktrace (cause- Parameters:
extendedIndeterminate
- (required) Extended Indeterminate value (XACML 3.0 Core, section 7.10). We use the following convention:DecisionType.DENY
means "Indeterminate{D}"DecisionType.PERMIT
means "Indeterminate{P}"DecisionType.INDETERMINATE
or null means "Indeterminate{DP}"DecisionType.NOT_APPLICABLE
is the default value and means the decision is not Indeterminate, and therefore any extended Indeterminate value should be ignored
cause
- cause of the Indeterminate result- Returns:
- Indeterminate result
- Throws:
IllegalArgumentException
- ifcause ==null
-
-