MultiTypeConfig config = new MultiTypeConfig();
config.setTypeHandler(TextData.class, TextDataHandler.class);
config.setTypeHandler(NumericData.class, NumericDataHandler.class);
MultiType multiType = new MultiType(config);
DataLoader dataLoader = new DataLoader("data.txt");
while (dataLoader.hasNext()) {
String line = dataLoader.getNextLine();
Data data = multiType.parse(line);
if (data instanceof TextData) {
TextDataHandler handler = multiType.getHandler(TextDataHandler.class);
handler.process((TextData) data);
} else if (data instanceof NumericData) {
NumericDataHandler handler = multiType.getHandler(NumericDataHandler.class);
handler.process((NumericData) data);
}
}