Interface ExtendedDecision

  • All Known Subinterfaces:
    DecisionResult
    All Known Implementing Classes:
    BaseDecisionResult

    public interface ExtendedDecision
    Extended decision, i.e. XACML Decision with optional ExtendedIndeterminate and Status if Indeterminate. This is mostly used as return type of combining algorithms.
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      Optional<IndeterminateEvaluationException> getCauseForIndeterminate()
      Gets the optional error stacktrace detailing the cause for the Indeterminate decision.
      oasis.names.tc.xacml._3_0.core.schema.wd_17.DecisionType getDecision()
      Get XACML Decision
      oasis.names.tc.xacml._3_0.core.schema.wd_17.DecisionType getExtendedIndeterminate()
      Provides the Extended Indeterminate value, iff #getDecision() == DecisionType.INDETERMINATE, else it should be ignored, as defined in section 7.10 of XACML 3.0 core: potential effect value which could have occurred if there would not have been an error causing the “Indeterminate”.
      oasis.names.tc.xacml._3_0.core.schema.wd_17.Status getStatus()
      Status code/message/detail
    • Method Detail

      • getDecision

        oasis.names.tc.xacml._3_0.core.schema.wd_17.DecisionType getDecision()
        Get XACML Decision
        Returns:
        decision
      • getStatus

        oasis.names.tc.xacml._3_0.core.schema.wd_17.Status getStatus()
        Status code/message/detail
        Returns:
        status
      • getExtendedIndeterminate

        oasis.names.tc.xacml._3_0.core.schema.wd_17.DecisionType getExtendedIndeterminate()
        Provides the Extended Indeterminate value, iff #getDecision() == DecisionType.INDETERMINATE, else it should be ignored, as defined in section 7.10 of XACML 3.0 core: potential effect value which could have occurred if there would not have been an error causing the “Indeterminate”. We use the following convention:
        • DecisionType.DENY means "Indeterminate{D}"
        • DecisionType.PERMIT means "Indeterminate{P}"
        • DecisionType.INDETERMINATE 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
        Returns:
        extended Indeterminate value
      • getCauseForIndeterminate

        Optional<IndeterminateEvaluationException> getCauseForIndeterminate()
        Gets the optional error stacktrace detailing the cause for the Indeterminate decision. It is always present iff #getDecision() == DecisionType.INDETERMINATE
        Returns:
        error stacktrace associated to Indeterminate