Class CModelException

  • All Implemented Interfaces:
    Serializable

    public class CModelException
    extends org.eclipse.core.runtime.CoreException
    A checked exception representing a failure in the C model. C model exceptions contain a C-specific status object describing the cause of the exception.
    See Also:
    ICModelStatus, ICModelStatusConstants, Serialized Form
    • Constructor Detail

      • CModelException

        public CModelException​(Throwable e,
                               int code)
        Creates a C model exception that wrappers the given Throwable. The exception contains a C-specific status object with severity IStatus.ERROR and the given status code.
        Parameters:
        e - the Throwable
        code - one of the C-specific status codes declared in ICModelStatusConstants
        See Also:
        ICModelStatusConstants, IStatus.ERROR
      • CModelException

        public CModelException​(org.eclipse.core.runtime.CoreException exception)
        Creates a C model exception for the given CoreException. Equivalent to CModelException(exception,ICModelStatusConstants.CORE_EXCEPTION.
        Parameters:
        exception - the CoreException
      • CModelException

        public CModelException​(ICModelStatus status)
        Creates a C model exception for the given C-specific status object.
        Parameters:
        status - the C-specific status object
    • Method Detail

      • getException

        public Throwable getException()
        Returns the underlying Throwable that caused the failure.
        Returns:
        the wrapped Throwable, or null if the direct case of the failure was at the C model layer
      • getCModelStatus

        public ICModelStatus getCModelStatus()
        Returns the C model status object for this exception. Equivalent to (ICModelStatus) getStatus().
        Returns:
        a status object
      • doesNotExist

        public boolean doesNotExist()
        Returns whether this exception indicates that a C model element does not exist. Such exceptions have a status with a code of ICModelStatusConstants.ELEMENT_DOES_NOT_EXIST. This is a convenience method.
        Returns:
        true if this exception indicates that a C model element does not exist
        See Also:
        ICModelStatus.doesNotExist(), ICModelStatusConstants.ELEMENT_DOES_NOT_EXIST
      • toString

        public String toString()
        Returns a printable representation of this exception suitable for debugging purposes only.
        Overrides:
        toString in class Throwable