NestableError (Lang 2.6)
Date: 2019-01-01

org.apache.commons.lang.exception

## Class NestableError

- java.lang.Object
- - java.lang.Throwable
  - - java.lang.Error
    - - org.apache.commons.lang.exception.NestableError

- All Implemented Interfaces:
    java.io.Serializable, Nestable

      public class NestableError
      extends java.lang.Error
      implements Nestable

  The base class of all errors which can contain other exceptions.
  Since:
    1.0
  Version:
    $Id: NestableError.java 512889 2007-02-28 18:18:20Z dlr $
  See Also:
    `NestableException`, Serialized Form

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected NestableDelegate` | `delegate` The helper instance which contains much of the code which we delegate to.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `NestableError()` Constructs a new `NestableError` without specified detail message.
    `NestableError(java.lang.String msg)` Constructs a new `NestableError` with specified detail message.
    `NestableError(java.lang.String msg, java.lang.Throwable cause)` Constructs a new `NestableError` with specified detail message and nested `Throwable`.
    `NestableError(java.lang.Throwable cause)` Constructs a new `NestableError` with specified nested `Throwable`.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.Throwable` | `getCause()` Returns the reference to the exception or error that caused the exception implementing the `Nestable` to be thrown.
    `java.lang.String` | `getMessage()` Returns the detail message string of this throwable.
    `java.lang.String` | `getMessage(int index)` Returns the error message of the `Throwable` in the chain of `Throwable`s at the specified index, numbered from 0.
    `java.lang.String[]` | `getMessages()` Returns the error message of this and any nested `Throwable`s in an array of Strings, one element for each message.
    `java.lang.Throwable` | `getThrowable(int index)` Returns the `Throwable` in the chain of `Throwable`s at the specified index, numbered from 0.
    `int` | `getThrowableCount()` Returns the number of nested `Throwable`s represented by this `Nestable`, including this `Nestable`.
    `java.lang.Throwable[]` | `getThrowables()` Returns this `Nestable` and any nested `Throwable`s in an array of `Throwable`s, one element for each `Throwable`.
    `int` | `indexOfThrowable(java.lang.Class type)` Returns the index, numbered from 0, of the first occurrence of the specified type, or a subclass, in the chain of `Throwable`s.
    `int` | `indexOfThrowable(java.lang.Class type, int fromIndex)` Returns the index, numbered from 0, of the first `Throwable` that matches the specified type, or a subclass, in the chain of `Throwable`s with an index greater than or equal to the specified index.
    `void` | `printPartialStackTrace(java.io.PrintWriter out)` Prints the stack trace for this exception only--root cause not included--using the provided writer.
    `void` | `printStackTrace()`
    `void` | `printStackTrace(java.io.PrintStream out)` Prints the stack trace of this exception to the specified print stream.
    `void` | `printStackTrace(java.io.PrintWriter out)` Prints the stack trace of this exception to the specified print writer.

    - ### Methods inherited from class java.lang.Throwable

      `addSuppressed, fillInStackTrace, getLocalizedMessage, getStackTrace, getSuppressed, initCause, setStackTrace, toString`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### delegate

          protected NestableDelegate delegate

      The helper instance which contains much of the code which we delegate to.

  - ### Constructor Detail

    - #### NestableError

          public NestableError()

      Constructs a new `NestableError` without specified detail message.

    - #### NestableError

          public NestableError(java.lang.String msg)

      Constructs a new `NestableError` with specified detail message.
      Parameters:
        `msg` - The error message.

    - #### NestableError

          public NestableError(java.lang.Throwable cause)

      Constructs a new `NestableError` with specified nested `Throwable`.
      Parameters:
        `cause` - the exception or error that caused this exception to be thrown

    - #### NestableError

          public NestableError(java.lang.String msg,
                               java.lang.Throwable cause)

      Constructs a new `NestableError` with specified detail message and nested `Throwable`.
      Parameters:
        `msg` - the error message
        `cause` - the exception or error that caused this exception to be thrown

  - ### Method Detail

    - #### getCause

          public java.lang.Throwable getCause()

      Returns the reference to the exception or error that caused the exception implementing the `Nestable` to be thrown.
      Specified by:
        `getCause` in interface `Nestable`
      Overrides:
        `getCause` in class `java.lang.Throwable`
      Returns:
        throwable that caused the original exception

    - #### getMessage

          public java.lang.String getMessage()

      Returns the detail message string of this throwable. If it was created with a null message, returns the following: (cause==null ? null : cause.toString()).
      Specified by:
        `getMessage` in interface `Nestable`
      Overrides:
        `getMessage` in class `java.lang.Throwable`
      Returns:
        String message string of the throwable

    - #### getMessage

          public java.lang.String getMessage(int index)

      Returns the error message of the `Throwable` in the chain of `Throwable`s at the specified index, numbered from 0.
      Specified by:
        `getMessage` in interface `Nestable`
      Parameters:
        `index` - the index of the `Throwable` in the chain of `Throwable`s
      Returns:
        the error message, or null if the `Throwable` at the specified index in the chain does not contain a message

    - #### getMessages

          public java.lang.String[] getMessages()

      Returns the error message of this and any nested `Throwable`s in an array of Strings, one element for each message. Any `Throwable` not containing a message is represented in the array by a null. This has the effect of cause the length of the returned array to be equal to the result of the `Nestable.getThrowableCount()` operation.
      Specified by:
        `getMessages` in interface `Nestable`
      Returns:
        the error messages

    - #### getThrowable

          public java.lang.Throwable getThrowable(int index)

      Returns the `Throwable` in the chain of `Throwable`s at the specified index, numbered from 0.
      Specified by:
        `getThrowable` in interface `Nestable`
      Parameters:
        `index` - the index, numbered from 0, of the `Throwable` in the chain of `Throwable`s
      Returns:
        the `Throwable`

    - #### getThrowableCount

          public int getThrowableCount()

      Returns the number of nested `Throwable`s represented by this `Nestable`, including this `Nestable`.
      Specified by:
        `getThrowableCount` in interface `Nestable`
      Returns:
        the throwable count

    - #### getThrowables

          public java.lang.Throwable[] getThrowables()

      Returns this `Nestable` and any nested `Throwable`s in an array of `Throwable`s, one element for each `Throwable`.
      Specified by:
        `getThrowables` in interface `Nestable`
      Returns:
        the `Throwable`s

    - #### indexOfThrowable

          public int indexOfThrowable(java.lang.Class type)

      Returns the index, numbered from 0, of the first occurrence of the specified type, or a subclass, in the chain of `Throwable`s. The method returns -1 if the specified type is not found in the chain.

      NOTE: From v2.1, we have clarified the `Nestable` interface such that this method matches subclasses. If you want to NOT match subclasses, please use `ExceptionUtils.indexOfThrowable(Throwable, Class)` (which is avaiable in all versions of lang).

      Specified by:
        `indexOfThrowable` in interface `Nestable`
      Parameters:
        `type` - the type to find, subclasses match, null returns -1
      Returns:
        index of the first occurrence of the type in the chain, or -1 if the type is not found

    - #### indexOfThrowable

          public int indexOfThrowable(java.lang.Class type,
                                      int fromIndex)

      Returns the index, numbered from 0, of the first `Throwable` that matches the specified type, or a subclass, in the chain of `Throwable`s with an index greater than or equal to the specified index. The method returns -1 if the specified type is not found in the chain.

      NOTE: From v2.1, we have clarified the `Nestable` interface such that this method matches subclasses. If you want to NOT match subclasses, please use `ExceptionUtils.indexOfThrowable(Throwable, Class, int)` (which is avaiable in all versions of lang).

      Specified by:
        `indexOfThrowable` in interface `Nestable`
      Parameters:
        `type` - the type to find, subclasses match, null returns -1
        `fromIndex` - the index, numbered from 0, 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

    - #### printStackTrace

          public void printStackTrace()

      Overrides:
        `printStackTrace` in class `java.lang.Throwable`

    - #### printStackTrace

          public void printStackTrace(java.io.PrintStream out)

      Prints the stack trace of this exception to the specified print stream. Includes information from the exception, if any, which caused this exception.
      Specified by:
        `printStackTrace` in interface `Nestable`
      Overrides:
        `printStackTrace` in class `java.lang.Throwable`
      Parameters:
        `out` - `PrintStream` to use for output.

    - #### printStackTrace

          public void printStackTrace(java.io.PrintWriter out)

      Prints the stack trace of this exception to the specified print writer. Includes information from the exception, if any, which caused this exception.
      Specified by:
        `printStackTrace` in interface `Nestable`
      Overrides:
        `printStackTrace` in class `java.lang.Throwable`
      Parameters:
        `out` - `PrintWriter` to use for output.

    - #### printPartialStackTrace

          public final void printPartialStackTrace(java.io.PrintWriter out)

      Prints the stack trace for this exception only--root cause not included--using the provided writer. Used by `NestableDelegate` to write individual stack traces to a buffer. The implementation of this method should call `super.printStackTrace(out);` in most cases.
      Specified by:
        `printPartialStackTrace` in interface `Nestable`
      Parameters:
        `out` - The writer to use.

Copyright © 2001-2019 - Apache Software Foundation