public final class EPMPublicFunc { public static final String getLineNumber() {
return Integer.toString(getStackTraceElement().getLineNumber());
}
public static final String getFileName() {
return getStackTraceElement().getFileName();
}
public static final String getMethodName() {
return getStackTraceElement().getMethodName();
}
protected static StackTraceElement getStackTraceElement() {
StackTraceElement[] se = Thread.currentThread().getStackTrace();
StackTraceElement stackTraceElement = null;
int n = 0;
for (StackTraceElement s : se) {
n++;
StackTraceElement set = s;
String cname = set.getClassName();
if (cname.equals("com.egenera.core.log.EPMLog")) {
break;
}
}
while (n < se.length) {
StackTraceElement nStackTraceElement = se[n];
String cname = nStackTraceElement.getClassName();
if (!cname.equals("com.egenera.core.log.EPMLog")) {
stackTraceElement = nStackTraceElement;
break;
}
}
return stackTraceElement;
}
}