if (!new File(fName).exists()) {
throw new RuntimeException("Cannot parse: " + new File(fName).getAbsolutePath() + ", file does not exist");
}
String parserName = _config.getParser();
EventParser parser = null;
try {
@SuppressWarnings("unchecked")
Class<EventParser> classDefinition = (Class<EventParser>) Class.forName(parserName);
parser = classDefinition.newInstance();
} catch (ClassCastException cce) {
_log.error(cce);
} catch (InstantiationException ie) {
_log.error(ie);
} catch (IllegalAccessException iae) {
_log.error(iae);
} catch (ClassNotFoundException cnfe) {
_log.error(cnfe);
}
if (parser == null) {
String msg = "Could not instantiate parser; please add eventParser property to config.properties";
_log.fatal(msg);
throw new RuntimeException(msg);
}
Vector<PowerEvent> events = parser.read(fName);
Collections.sort(events, new Comparator<PowerEvent>() {
@Override
public int compare(PowerEvent arg0, PowerEvent arg1) {
return arg0.getStart().compareTo(arg1.getStart());