public class StackTraceUtils
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
STACK_LOG_NAME |
Constructor and Description |
---|
StackTraceUtils() |
Modifier and Type | Method and Description |
---|---|
static void |
addClassTest(Closure test)
Adds a groovy.lang.Closure to test whether the stack trace
element should be added or not.
|
static java.lang.Throwable |
deepSanitize(java.lang.Throwable t)
Sanitize the exception and ALL nested causes
|
static java.lang.Throwable |
extractRootCause(java.lang.Throwable t)
Extracts the root cause of the exception, no matter how nested it is
|
static boolean |
isApplicationClass(java.lang.String className) |
static void |
printSanitizedStackTrace(java.lang.Throwable t) |
static void |
printSanitizedStackTrace(java.lang.Throwable t,
java.io.PrintWriter p) |
static java.lang.Throwable |
sanitize(java.lang.Throwable t)
Remove all apparently groovy-internal trace entries from the exception instance
|
static java.lang.Throwable |
sanitizeRootCause(java.lang.Throwable t)
Get the root cause of an exception and sanitize it for display to the user
|
public static final java.lang.String STACK_LOG_NAME
public static void addClassTest(Closure test)
The groovy.lang.Closure will be given the class name as parameter. the return value decides if the element will be added or not.
test
- the testing groovy.lang.Closurepublic static java.lang.Throwable sanitize(java.lang.Throwable t)
This modifies the original instance and returns it, it does not clone
t
- the Throwable whose stack trace we want to sanitizepublic static void printSanitizedStackTrace(java.lang.Throwable t, java.io.PrintWriter p)
public static void printSanitizedStackTrace(java.lang.Throwable t)
public static boolean isApplicationClass(java.lang.String className)
public static java.lang.Throwable extractRootCause(java.lang.Throwable t)
t
- a Throwablepublic static java.lang.Throwable sanitizeRootCause(java.lang.Throwable t)
This will MODIFY the stacktrace of the root cause exception object and return it
t
- a throwablepublic static java.lang.Throwable deepSanitize(java.lang.Throwable t)
This will MODIFY the stacktrace of the exception instance and all its causes irreversibly
t
- a throwable