Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.logging.log4j.core.impl
Class ThrowableProxy

    java.lang.Object
      org.apache.logging.log4j.core.impl.ThrowableProxy

All Implemented Interfaces:
  Serializable

    public class ThrowableProxy

extends Object
implements Serializable

Wraps a Throwable to add packaging information about each stack trace element.

A proxy is used to represent a throwable that may not exist in a different class loader or JVM. When an application deserializes a ThrowableProxy, the throwable may not be set, but the throwable's information is preserved in other fields of the proxy like the message and stack trace.

TODO: Move this class to org.apache.logging.log4j.core because it is used from LogEvent.

TODO: Deserialize: Try to rebuild Throwable if the target exception is in this class loader?

See Also:
  Serialized Form

Constructor Summary
`ThrowableProxy(Throwable throwable)` Constructs the wrapper for the Throwable that includes packaging data.

Method Summary
`boolean` | `equals(Object obj)`
`void` | `formatWrapper(StringBuilder sb, ThrowableProxy cause)` Formats the specified Throwable.
`void` | `formatWrapper(StringBuilder sb, ThrowableProxy cause, List<String> packages)` Formats the specified Throwable.
`ThrowableProxy` | `getCauseProxy()`
`String` | `getCauseStackTraceAsString()` Format the Throwable that is the cause of this Throwable.
`String` | `getCauseStackTraceAsString(List<String> packages)` Format the Throwable that is the cause of this Throwable.
`int` | `getCommonElementCount()` Return the number of elements that are being omitted because they are common with the parent Throwable's stack trace.
`ExtendedStackTraceElement[]` | `getExtendedStackTrace()` Gets the stack trace including packaging information.
`String` | `getExtendedStackTraceAsString()` Format the stack trace including packaging information.
`String` | `getExtendedStackTraceAsString(List<String> ignorePackages)` Format the stack trace including packaging information.
`String` | `getLocalizedMessage()`
`String` | `getMessage()`
`String` | `getName()` Return the FQCN of the Throwable.
`StackTraceElement[]` | `getStackTrace()`
`ThrowableProxy[]` | `getSuppressedProxies()` Gets proxies for suppressed exceptions.
`String` | `getSuppressedStackTrace()` Format the suppressed Throwables.
`Throwable` | `getThrowable()` The throwable or null if this object is deserialized from XML or JSON.
`int` | `hashCode()`
`String` | `toString()`

Methods inherited from class java.lang.Object
`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

Constructor Detail

### ThrowableProxy

    public ThrowableProxy(Throwable throwable)

  Constructs the wrapper for the Throwable that includes packaging data.

  Parameters:
    `throwable` - The Throwable to wrap, must not be null.

Method Detail

### equals

    public boolean equals(Object obj)

  Overrides:
    `equals` in class `Object`

### formatWrapper

    public void formatWrapper(StringBuilder sb,
                              ThrowableProxy cause)

  Formats the specified Throwable.

  Parameters:
    `sb` - StringBuilder to contain the formatted Throwable.
    `cause` - The Throwable to format.

### formatWrapper

    public void formatWrapper(StringBuilder sb,
                              ThrowableProxy cause,
                              List<String> packages)

  Formats the specified Throwable.

  Parameters:
    `sb` - StringBuilder to contain the formatted Throwable.
    `cause` - The Throwable to format.
    `packages` - The List of packages to be suppressed from the trace.

### getCauseProxy

    public ThrowableProxy getCauseProxy()

### getCauseStackTraceAsString

    public String getCauseStackTraceAsString()

  Format the Throwable that is the cause of this Throwable.

  Returns:
    The formatted Throwable that caused this Throwable.

### getCauseStackTraceAsString

    public String getCauseStackTraceAsString(List<String> packages)

  Format the Throwable that is the cause of this Throwable.

  Parameters:
    `packages` - The List of packages to be suppressed from the trace.
  Returns:
    The formatted Throwable that caused this Throwable.

### getCommonElementCount

    public int getCommonElementCount()

  Return the number of elements that are being omitted because they are common with the parent Throwable's stack trace.

  Returns:
    The number of elements omitted from the stack trace.

### getExtendedStackTrace

    public ExtendedStackTraceElement[] getExtendedStackTrace()

  Gets the stack trace including packaging information.

  Returns:
    The stack trace including packaging information.

### getExtendedStackTraceAsString

    public String getExtendedStackTraceAsString()

  Format the stack trace including packaging information.

  Returns:
    The formatted stack trace including packaging information.

### getExtendedStackTraceAsString

    public String getExtendedStackTraceAsString(List<String> ignorePackages)

  Format the stack trace including packaging information.

  Parameters:
    `ignorePackages` - List of packages to be ignored in the trace.
  Returns:
    The formatted stack trace including packaging information.

### getLocalizedMessage

    public String getLocalizedMessage()

### getMessage

    public String getMessage()

### getName

    public String getName()

  Return the FQCN of the Throwable.

  Returns:
    The FQCN of the Throwable.

### getStackTrace

    public StackTraceElement[] getStackTrace()

### getSuppressedProxies

    public ThrowableProxy[] getSuppressedProxies()

  Gets proxies for suppressed exceptions.

  Returns:
    proxies for suppressed exceptions.

### getSuppressedStackTrace

    public String getSuppressedStackTrace()

  Format the suppressed Throwables.

  Returns:
    The formatted suppressed Throwables.

### getThrowable

    public Throwable getThrowable()

  The throwable or null if this object is deserialized from XML or JSON.

  Returns:
    The throwable or null if this object is deserialized from XML or JSON.

### hashCode

    public int hashCode()

  Overrides:
    `hashCode` in class `Object`

### toString

    public String toString()

  Overrides:
    `toString` in class `Object`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 1999-2015 Apache Software Foundation. All Rights Reserved.
Apache Logging, Apache Log4j, Log4j, Apache, the Apache feather logo, the Apache Logging project logo, and the Apache Log4j logo are trademarks of The Apache Software Foundation.