Make the following method public in StackTraceDeobfuscator, for reuse by user server side code:
StackTraceElement resymbolize(StackTraceElement ste, String strongName)
Review at http://gwt-code-reviews.appspot.com/1040801
Review by: unnurg@google.com
git-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@9131 8db76d5a-ed1c-0410-87a9-c151d255dfc7
diff --git a/user/src/com/google/gwt/logging/server/StackTraceDeobfuscator.java b/user/src/com/google/gwt/logging/server/StackTraceDeobfuscator.java
index 40787fd..0f35748 100644
--- a/user/src/com/google/gwt/logging/server/StackTraceDeobfuscator.java
+++ b/user/src/com/google/gwt/logging/server/StackTraceDeobfuscator.java
@@ -62,6 +62,25 @@
return lr;
}
+ public StackTraceElement resymbolize(StackTraceElement ste,
+ String strongName) {
+ SymbolMap map = loadSymbolMap(strongName);
+ String symbolData = map == null ? null : map.get(ste.getMethodName());
+
+ if (symbolData != null) {
+ // jsniIdent, className, memberName, sourceUri, sourceLine
+ String[] parts = symbolData.split(",");
+ if (parts.length == 5) {
+ String[] ref = parse(
+ parts[0].substring(0, parts[0].lastIndexOf(')') + 1));
+ return new StackTraceElement(
+ ref[0], ref[1], ste.getFileName(), ste.getLineNumber());
+ }
+ }
+ // If anything goes wrong, just return the unobfuscated element
+ return ste;
+ }
+
public void setSymbolMapsDirectory(String dir) {
// Switching the directory should clear the symbolMaps variable (which
// is read in lazily), but causing the symbolMaps variable to be re-read
@@ -132,23 +151,4 @@
String[] toReturn = new String[] {className, memberName};
return toReturn;
}
-
- private StackTraceElement resymbolize(StackTraceElement ste,
- String strongName) {
- SymbolMap map = loadSymbolMap(strongName);
- String symbolData = map == null ? null : map.get(ste.getMethodName());
-
- if (symbolData != null) {
- // jsniIdent, className, memberName, sourceUri, sourceLine
- String[] parts = symbolData.split(",");
- if (parts.length == 5) {
- String[] ref = parse(
- parts[0].substring(0, parts[0].lastIndexOf(')') + 1));
- return new StackTraceElement(
- ref[0], ref[1], ste.getFileName(), ste.getLineNumber());
- }
- }
- // If anything goes wrong, just return the unobfuscated element
- return ste;
- }
}