You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by sc...@apache.org on 2017/01/13 15:04:16 UTC
svn commit: r1778608 -
/uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/internal/util/Misc.java
Author: schor
Date: Fri Jan 13 15:04:15 2017
New Revision: 1778608
URL: http://svn.apache.org/viewvc?rev=1778608&view=rev
Log:
[UIMA-4674] slight improvement to dumping callers for debugging
Modified:
uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/internal/util/Misc.java
Modified: uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/internal/util/Misc.java
URL: http://svn.apache.org/viewvc/uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/internal/util/Misc.java?rev=1778608&r1=1778607&r2=1778608&view=diff
==============================================================================
--- uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/internal/util/Misc.java (original)
+++ uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/internal/util/Misc.java Fri Jan 13 15:04:15 2017
@@ -60,12 +60,15 @@ public class Misc {
* @return x called by: y ...
*/
public static StringBuilder getCallers(final int s, final int n) {
- StackTraceElement[] e = Thread.currentThread().getStackTrace();
+ return dumpCallers(Thread.currentThread().getStackTrace(), s, n);
+ }
+
+ public static StringBuilder dumpCallers(final StackTraceElement[] e, final int s, final int n) {
StringBuilder sb = new StringBuilder();
for (int i = s + 2; i < s + n + 3; i++) {
if (i >= e.length) break;
if (i != s + 2) {
- sb.append(" called_by: ");
+ sb.append("\n called_by: ");
}
sb.append(formatcaller(e[i]));
}
@@ -73,11 +76,11 @@ public class Misc {
}
/**
- * @return the name of the caller in the stack
+ * @return the name of the caller in the stack and their caller
*/
public static String getCaller() {
StackTraceElement[] e = Thread.currentThread().getStackTrace();
- return formatcaller(e[4]) + "called by: " + formatcaller(e[5]);
+ return formatcaller(e[5]) + " => " + formatcaller(e[4]);
}
private static String formatcaller(StackTraceElement e) {