Class NotImplementedException

  • All Implemented Interfaces:
    Serializable, Nestable

    public class NotImplementedException
    extends UnsupportedOperationException
    implements Nestable

    Thrown to indicate that a block of code has not been implemented. This exception supplements UnsupportedOperationException by providing a more semantically rich description of the problem.

    NotImplementedException represents the case where the author has yet to implement the logic at this point in the program. This can act as an exception based TODO tag. Because this logic might be within a catch block, this exception suports exception chaining.

     public void foo() {
       try {
         // do something that throws an Exception
       } catch (Exception ex) {
         // don't know what to do here yet
         throw new NotImplementedException("TODO", ex);
       }
     }
     
    Since:
    2.0
    Version:
    $Id: NotImplementedException.java 905636 2010-02-02 14:03:32Z niallp $
    See Also:
    Serialized Form
    • Constructor Detail

      • NotImplementedException

        public NotImplementedException()
        Constructs a new NotImplementedException with default message.
        Since:
        2.1
      • NotImplementedException

        public NotImplementedException​(String msg)
        Constructs a new NotImplementedException with specified detail message.
        Parameters:
        msg - the error message.
      • NotImplementedException

        public NotImplementedException​(Throwable cause)
        Constructs a new NotImplementedException with specified nested Throwable and default message.
        Parameters:
        cause - the exception that caused this exception to be thrown
        Since:
        2.1
      • NotImplementedException

        public NotImplementedException​(String msg,
                                       Throwable cause)
        Constructs a new NotImplementedException with specified detail message and nested Throwable.
        Parameters:
        msg - the error message
        cause - the exception that caused this exception to be thrown
        Since:
        2.1
      • NotImplementedException

        public NotImplementedException​(Class clazz)
        Constructs a new NotImplementedException referencing the specified class.
        Parameters:
        clazz - the Class that has not implemented the method
    • Method Detail

      • getCause

        public Throwable getCause()
        Gets the root cause of this exception.
        Specified by:
        getCause in interface Nestable
        Overrides:
        getCause in class Throwable
        Returns:
        the root cause of this exception.
        Since:
        2.1
      • getMessage

        public String getMessage()
        Gets the combined the error message of this and any nested errors.
        Specified by:
        getMessage in interface Nestable
        Overrides:
        getMessage in class Throwable
        Returns:
        the error message
        Since:
        2.1
      • getMessage

        public String getMessage​(int index)
        Returns the error message of the Throwable in the chain of Throwables at the specified index, numbered from 0.
        Specified by:
        getMessage in interface Nestable
        Parameters:
        index - the index of the Throwable in the chain
        Returns:
        the error message, or null if the Throwable at the specified index in the chain does not contain a message
        Throws:
        IndexOutOfBoundsException - if the index argument is negative or not less than the count of Throwables in the chain
        Since:
        2.1
      • getMessages

        public String[] getMessages()
        Returns the error message of this and any nested Throwable objects. Each throwable returns a message, a null string is included in the array if there is no message for a particular Throwable.
        Specified by:
        getMessages in interface Nestable
        Returns:
        the error messages
        Since:
        2.1
      • getThrowable

        public Throwable getThrowable​(int index)
        Returns the Throwable in the chain by index.
        Specified by:
        getThrowable in interface Nestable
        Parameters:
        index - the index to retrieve
        Returns:
        the Throwable
        Throws:
        IndexOutOfBoundsException - if the index argument is negative or not less than the count of Throwables in the chain
        Since:
        2.1
      • getThrowableCount

        public int getThrowableCount()
        Returns the number of nested Throwables represented by this Nestable, including this Nestable.
        Specified by:
        getThrowableCount in interface Nestable
        Returns:
        the throwable count
        Since:
        2.1
      • getThrowables

        public Throwable[] getThrowables()
        Returns this Nestable and any nested Throwables in an array of Throwables, one element for each Throwable.
        Specified by:
        getThrowables in interface Nestable
        Returns:
        the Throwables
        Since:
        2.1
      • indexOfThrowable

        public int indexOfThrowable​(Class type)
        Returns the index of the first occurrence of the specified type. If there is no match, -1 is returned.
        Specified by:
        indexOfThrowable in interface Nestable
        Parameters:
        type - the type to search for
        Returns:
        index of the first occurrence of the type in the chain, or -1 if the type is not found
        Since:
        2.1
      • indexOfThrowable

        public int indexOfThrowable​(Class type,
                                    int fromIndex)
        Returns the index of the first occurrence of the specified type starting from the specified index. If there is no match, -1 is returned.
        Specified by:
        indexOfThrowable in interface Nestable
        Parameters:
        type - the type to search for
        fromIndex - the index of the starting position in the chain to be searched
        Returns:
        index of the first occurrence of the type in the chain, or -1 if the type is not found
        Throws:
        IndexOutOfBoundsException - if the fromIndex argument is negative or not less than the count of Throwables in the chain
        Since:
        2.1
      • printStackTrace

        public void printStackTrace()
        Prints the stack trace of this exception. Includes information from the exception, if any, which caused this exception.
        Overrides:
        printStackTrace in class Throwable
        Since:
        2.1
      • printStackTrace

        public void printStackTrace​(PrintStream out)
        Prints the stack trace of this exception to the specified stream. Includes information from the exception, if any, which caused this exception.
        Specified by:
        printStackTrace in interface Nestable
        Overrides:
        printStackTrace in class Throwable
        Parameters:
        out - the stream to write to
        Since:
        2.1
      • printStackTrace

        public void printStackTrace​(PrintWriter out)
        Prints the stack trace of this exception to the specified writer. Includes information from the exception, if any, which caused this exception.
        Specified by:
        printStackTrace in interface Nestable
        Overrides:
        printStackTrace in class Throwable
        Parameters:
        out - the writer to write to
        Since:
        2.1
      • printPartialStackTrace

        public final void printPartialStackTrace​(PrintWriter out)
        Prints the stack trace for this exception only (root cause not included) using the specified writer.
        Specified by:
        printPartialStackTrace in interface Nestable
        Parameters:
        out - the writer to write to
        Since:
        2.1