[jboss-svn-commits] JBL Code SVN: r6016 - labs/jbossrules/trunk/drools-repository/src/java/org/drools/repository/test

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Wed Aug 30 09:02:43 EDT 2006


Author: michael.neale at jboss.com
Date: 2006-08-30 09:02:42 -0400 (Wed, 30 Aug 2006)
New Revision: 6016

Added:
   labs/jbossrules/trunk/drools-repository/src/java/org/drools/repository/test/StackUtil.java
Log:


Added: labs/jbossrules/trunk/drools-repository/src/java/org/drools/repository/test/StackUtil.java
===================================================================
--- labs/jbossrules/trunk/drools-repository/src/java/org/drools/repository/test/StackUtil.java	2006-08-30 13:01:50 UTC (rev 6015)
+++ labs/jbossrules/trunk/drools-repository/src/java/org/drools/repository/test/StackUtil.java	2006-08-30 13:02:42 UTC (rev 6016)
@@ -0,0 +1,34 @@
+package org.drools.repository.test;
+
+import java.io.ByteArrayOutputStream;
+import java.io.PrintWriter;
+import java.util.StringTokenizer;
+
+public class StackUtil {
+
+    /**
+     * Return the name of the routine that called getCurrentMethodName
+     *
+     * @author Johan Känngård, http://dev.kanngard.net
+     * (found on the net in 2000, donŽt remember where...)
+     */
+    public static String getCurrentMethodName() {
+        ByteArrayOutputStream baos = new ByteArrayOutputStream();
+        PrintWriter pw = new PrintWriter(baos);
+        (new Throwable()).printStackTrace(pw);
+        pw.flush();
+        String stackTrace = baos.toString();
+        pw.close();
+
+        StringTokenizer tok = new StringTokenizer(stackTrace, "\n");
+        String l = tok.nextToken(); // 'java.lang.Throwable'
+        l = tok.nextToken(); // 'at ...getCurrentMethodName'
+        l = tok.nextToken(); // 'at ...<caller to getCurrentRoutine>'
+        // Parse line 3
+        tok = new StringTokenizer(l.trim(), " <(");
+        String t = tok.nextToken(); // 'at'
+        t = tok.nextToken(); // '...<caller to getCurrentRoutine>'
+        return t;
+    }    
+    
+}




More information about the jboss-svn-commits mailing list