| 1 14 package org.jmanage.core.management.data.jdk; 15 16 import org.jmanage.core.management.data.DataFormat; 17 18 import javax.management.openmbean.CompositeData ; 19 20 30 public class StackTraceElementFormat implements DataFormat { 31 32 public String format(Object data) { 33 CompositeData [] compositeData = (CompositeData [])data; 34 StringBuffer stackTrace = new StringBuffer (); 35 for(int i=0; i<compositeData.length; i++){ 36 if(i > 0) 37 stackTrace.append("\n"); 38 stackTrace.append(format(compositeData[i])); 39 } 40 return stackTrace.toString(); 41 } 42 43 private String format(CompositeData compositeData){ 44 StringBuffer stackTraceElement = new StringBuffer (" "); 45 stackTraceElement.append((String )compositeData.get("className")); 46 stackTraceElement.append('.'); 47 stackTraceElement.append(compositeData.get("methodName")); 48 stackTraceElement.append('('); 49 Boolean nativeMethod = (Boolean )compositeData.get("nativeMethod"); 50 if(!nativeMethod.booleanValue()){ 51 stackTraceElement.append(compositeData.get("fileName")); 52 stackTraceElement.append(':'); 53 stackTraceElement.append(compositeData.get("lineNumber")); 54 }else{ 55 stackTraceElement.append("Native Method"); 56 } 57 stackTraceElement.append(')'); 58 return stackTraceElement.toString(); 59 } 60 } 61 | Popular Tags |