public LogParser createLogParser(File logFile) throws LogParserException, IOException { BufferedReader reader = null; try { reader = new BufferedReader(new FileReader(logFile)); String line = reader.readLine(); LogFormat format = detectLogFormat(line); if (DEBUG) { System.out.println("Log format=" + format.name() + " for line:" + line); } switch (format) { case UNIFORM_LOG_FORMAT: return new UniformLogParser(logFile.getName()); case ODL_LOG_FORMAT: return new ODLLogParser(logFile.getName()); default: return new RawLogParser(logFile.getName()); } } finally { if (reader != null) { reader.close(); } } }