|
GWT 2.7.0 | |||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object java.lang.Throwable com.google.gwt.core.shared.SerializableThrowable
public final class SerializableThrowable
A serializable copy of a Throwable
, including its causes and stack trace. It overrides
#toString
to mimic original Throwable.toString()
so that Throwable.printStackTrace()
will work as if it is coming from the original exception.
This class is especially useful for logging and testing as the emulated Throwable class does not serialize recursively and does not serialize the stack trace. This class, as an alternative, can be used to transfer the Throwable without losing any of these data, even if the underlying Throwable is not serializable.
Please note that, to get more useful stack traces from client side, this class needs to be used
in conjunction with StackTraceDeobfuscator
.
NOTE: Does not serialize suppressed exceptions to remain compatible with Java 6 and below.
Constructor Summary | |
---|---|
SerializableThrowable(java.lang.String designatedType,
java.lang.String message)
Constructs a new SerializableThrowable with the specified detail message. |
Method Summary | |
---|---|
java.lang.Throwable |
fillInStackTrace()
|
static SerializableThrowable |
fromThrowable(java.lang.Throwable throwable)
Create a new SerializableThrowable from a provided throwable and its causes
recursively. |
java.lang.String |
getDesignatedType()
Returns the designated throwable's type name. |
java.lang.Throwable |
getOriginalThrowable()
Returns the original throwable that this serializable throwable is derived from. |
java.lang.Throwable |
initCause(java.lang.Throwable cause)
Initializes the cause of this throwable. |
boolean |
isExactDesignatedTypeKnown()
Return true if provided type name is the exact type of the throwable that is designated
by this instance. |
void |
setDesignatedType(java.lang.String typeName,
boolean isExactType)
Sets the designated Throwable's type name. |
java.lang.String |
toString()
|
Methods inherited from class java.lang.Throwable |
---|
getCause, getLocalizedMessage, getMessage, getStackTrace, printStackTrace, printStackTrace, printStackTrace, setStackTrace |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public SerializableThrowable(java.lang.String designatedType, java.lang.String message)
Method Detail |
---|
public static SerializableThrowable fromThrowable(java.lang.Throwable throwable)
SerializableThrowable
from a provided throwable and its causes
recursively.
null
or
already a SerializableThrowable.public java.lang.Throwable fillInStackTrace()
fillInStackTrace
in class java.lang.Throwable
public void setDesignatedType(java.lang.String typeName, boolean isExactType)
typeName
- the class name of the underlying designated throwable.isExactType
- false
if provided type name is not the exact type.isExactDesignatedTypeKnown()
public java.lang.String getDesignatedType()
isExactDesignatedTypeKnown()
public boolean isExactDesignatedTypeKnown()
true
if provided type name is the exact type of the throwable that is designated
by this instance. This can return false
if the class metadata is not available in the
runtime. In that case getDesignatedType()
will return the type resolved by best-effort
and may not be the exact type; instead it can be one of the ancestors of the real type that
this instance designates.
public java.lang.Throwable initCause(java.lang.Throwable cause)
This method will convert the cause to SerializableThrowable
if it is not already.
initCause
in class java.lang.Throwable
public java.lang.Throwable getOriginalThrowable()
null
.
public java.lang.String toString()
toString
in class java.lang.Throwable
|
GWT 2.7.0 | |||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |