boolean (Callback callback) { final String line = callback.getNextLine(); if(line == null) { return false; } // common statistics messages (javac & jikes) for (ParserAction action : myParserActions) { if (action.execute(line, callback)) { return true; } } if (StringUtil.startsWithChar(line, '[') && StringUtil.endsWithChar(line, ']')) { // at this point any meaningful output surrounded with '[' and ']' characters is processed, so // suppress messages like "[total 4657ms]" or "[search path for source files: []]" return true; } return false; }