Class IndeterminateEvaluationException

  • All Implemented Interfaces:
    Serializable

    public class IndeterminateEvaluationException
    extends Exception
    Exception wrapper for XACML Indeterminate/error caused by evaluation

    TODO: although we consider Exceptions as a good solution (from a Java standpoint) to propagate error information with a full traceable stacktrace, from a functional/logical point of view, we could improve performance by using return codes instead, whenever possible, especially where we don't lose any useful error info by doing so: cf. Performance Effects of Exceptions in Java

    See Also:
    Serialized Form
    • Constructor Detail

      • IndeterminateEvaluationException

        public IndeterminateEvaluationException​(ImmutableXacmlStatus status)
        Creates exception with message and XACML StatusCode (e.g. XacmlStatusCode.PROCESSING_ERROR)
        Parameters:
        status - XACML status, StatusCode value must be a valid xs:anyURI (used as XACML StatusCode Value)
      • IndeterminateEvaluationException

        public IndeterminateEvaluationException​(String message,
                                                String xacmlStatusCode,
                                                Throwable cause)
        Instantiates with error message and XACML StatusCode (e.g. XacmlStatusCode.PROCESSING_ERROR)
        Parameters:
        message - error message XACML status, StatusCode value must be a valid xs:anyURI (used as XACML StatusCode Value)
        xacmlStatusCode - XACML StatusCode value
        cause - internal cause of error
      • IndeterminateEvaluationException

        public IndeterminateEvaluationException​(String message,
                                                IndeterminateEvaluationException cause)
        Instantiates with error message and cause
        Parameters:
        message - error message XACML status, StatusCode value must be a valid xs:anyURI (used as XACML StatusCode Value)
        cause - internal cause of error
      • IndeterminateEvaluationException

        public IndeterminateEvaluationException​(String message,
                                                String xacmlStatusCode)
        Instantiates with error message and XACML StatusCode (e.g. XacmlStatusCode.PROCESSING_ERROR)
        Parameters:
        message - error message XACML status, StatusCode value must be a valid xs:anyURI (used as XACML StatusCode Value)
        xacmlStatusCode - XACML StatusCode value
      • IndeterminateEvaluationException

        public IndeterminateEvaluationException​(String message,
                                                oasis.names.tc.xacml._3_0.core.schema.wd_17.MissingAttributeDetail missingAttributeDetail,
                                                Optional<String> customStatusCode)
        Instantiates with a missing-attribute error status with standard status code - unless a custom status code is defined - and a XACML MissingAttributeDetail
        Parameters:
        message - error message XACML status
        missingAttributeDetail - missing attribute detail
        customStatusCode - overrides standard missing-attribute status code XacmlStatusCode.MISSING_ATTRIBUTE, must be a valid xs:anyURI (used as XACML StatusCode Value)
    • Method Detail

      • getStatus

        public ImmutableXacmlStatus getStatus()
        Get status corresponding to this exception (last occurred)
        Returns:
        status (always non-null)
      • getOverridingTopLevelStatus

        public Optional<ImmutableXacmlStatus> getOverridingTopLevelStatus()
        Get Status to be returned as top-level Status in the final Result regardless of any other Status in the error stack trace.
        Returns:
        status