UtilLoggingXmlLogImporter extends AbstractPluginableElement implements LogImporter { protected StringBuilder appendStackFrame(StringBuilder sb, String clazz, String method, String line, String fileName) { sb.append("\n\tat "); sb.append(clazz).append(".").append(method); if (fileName != null) { sb.append("("); sb.append(fileName).append(".java"); if (line != null) { sb.append(":").append(line); } sb.append(")"); } return sb; } UtilLoggingXmlLogImporter(); @Override void init(Properties properties); @Override void importLogs(InputStream in, LogDataCollector collector, ParsingContext parsingContext); void decodeEvents(final String document, LogDataCollector collector, ParsingContext parsingContext); @Override String getKeyStrokeAccelelator(); @Override int getMnemonic(); @Override Icon getIcon(); @Override TableColumns[] getTableColumnsToUse(); @Override void initParsingContext(ParsingContext parsingContext); @Override int getApiVersion();  }
@Test public void testAppendStackFrame() { assertEquals("\n\tat a.b.C.d(C.java:120)", importer.appendStackFrame(new StringBuilder(), "a.b.C", "d", "120", "C").toString()); assertEquals("\n\tat a.b.C$I.d(C.java:120)", importer.appendStackFrame(new StringBuilder(), "a.b.C$I", "d", "120", "C").toString()); }