|
GWT 2.5.0.rc2 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectcom.google.gwt.logging.server.StackTraceDeobfuscator
public class StackTraceDeobfuscator
Deobfuscates stack traces on the server side. This class requires that you have turned on
emulated stack traces, via <set-property name="compiler.stackMode" value="emulated"
/> in your .gwt.xml module file for non-Chrome browsers or
<set-property name="compiler.useSourceMaps" value="true"/> for Chrome, and
moved your symbol map files to a location accessible by your server sever side code. You can use
the GWT compiler -deploy command line argument to specify the location of the folder
into which the generated symbolMaps directory is written. By default, the final
symbolMaps directory is war/WEB-INF/deploy/yourmodulename/symbolMaps/.
Pass the resulting directory location into this class' symbolMapsDirectory
constructor or setSymbolMapsDirectory(String) setter method.
TODO(unnurg): Combine this code with similar code in JUnitHostImpl
| Field Summary | |
|---|---|
(package private) java.util.regex.Pattern |
fragmentIdPattern
|
protected java.io.File |
symbolMapsDirectory
|
| Constructor Summary | |
|---|---|
StackTraceDeobfuscator(java.lang.String symbolMapsDirectory)
Constructor, which takes a symbolMaps directory as its argument. |
|
| Method Summary | |
|---|---|
java.util.logging.LogRecord |
deobfuscateLogRecord(java.util.logging.LogRecord lr,
java.lang.String strongName)
Best effort resymbolization of a log record's stack trace. |
java.lang.StackTraceElement[] |
deobfuscateStackTrace(java.lang.StackTraceElement[] st,
java.lang.String strongName)
Convenience method which resymbolizes an entire stack trace to extent possible. |
protected java.io.InputStream |
getSourceMapInputStream(java.lang.String permutationStrongName,
int fragmentNumber)
|
protected java.io.InputStream |
getSymbolMapInputStream(java.lang.String permutationStrongName)
Retrieves a new InputStream for the given permutation strong name. |
java.lang.StackTraceElement |
resymbolize(java.lang.StackTraceElement ste,
java.lang.String strongName)
Best effort resymbolization of a a single stack trace element. |
void |
setSymbolMapsDirectory(java.lang.String symbolMapsDirectory)
|
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
java.util.regex.Pattern fragmentIdPattern
protected java.io.File symbolMapsDirectory
| Constructor Detail |
|---|
public StackTraceDeobfuscator(java.lang.String symbolMapsDirectory)
symbolMaps directory as its argument. Symbol maps are
generated into the location specified by the GWT compiler -deploy command line
argument.
symbolMapsDirectory - the symbolMaps directory with, or without trailing
directory separator character| Method Detail |
|---|
public java.util.logging.LogRecord deobfuscateLogRecord(java.util.logging.LogRecord lr,
java.lang.String strongName)
lr - the log record to resymbolizestrongName - the GWT permutation strong name
public java.lang.StackTraceElement[] deobfuscateStackTrace(java.lang.StackTraceElement[] st,
java.lang.String strongName)
st - the stack trace to resymbolizestrongName - the GWT permutation strong name
public java.lang.StackTraceElement resymbolize(java.lang.StackTraceElement ste,
java.lang.String strongName)
ste - the stack trace element to resymbolizestrongName - the GWT permutation strong name
public void setSymbolMapsDirectory(java.lang.String symbolMapsDirectory)
protected java.io.InputStream getSourceMapInputStream(java.lang.String permutationStrongName,
int fragmentNumber)
throws java.io.IOException
java.io.IOException
protected java.io.InputStream getSymbolMapInputStream(java.lang.String permutationStrongName)
throws java.io.IOException
InputStream for the given permutation strong name. This implementation,
which subclasses may override, returns a InputStream for the
permutation-strong-name.symbolMap file in the symbolMaps directory.
permutationStrongName - the GWT permutation strong name
InputStream
java.io.IOException
|
GWT 2.5.0.rc2 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||