|
GWT 2.5.0.rc1 | |||||||||
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 characterMethod 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.rc1 | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |