diff --git a/common/source/java/ch/systemsx/cisd/common/parser/DefaultReaderParser.java b/common/source/java/ch/systemsx/cisd/common/parser/DefaultReaderParser.java index 421be80ab5f00bb32cc689c1d6d41623fbce1fc4..0ed2a9677a8f149ae78b79ebb8ef9098f323cdbf 100644 --- a/common/source/java/ch/systemsx/cisd/common/parser/DefaultReaderParser.java +++ b/common/source/java/ch/systemsx/cisd/common/parser/DefaultReaderParser.java @@ -82,18 +82,6 @@ public class DefaultReaderParser<E> implements IReaderParser<E> return lineTokenizer.tokenize(lineNumber, line); } - /** Inits the parsing. */ - protected void initParsing() { - // Inits <code>ILineTokenizer</code> - lineTokenizer.init(); - String line; - // - if (mapperFactory.getHeaderLine() < 0) - { - - } - } - /////////////////////////////////////////////////////// // Parser /////////////////////////////////////////////////////// @@ -116,13 +104,14 @@ public class DefaultReaderParser<E> implements IReaderParser<E> List<E> elements = new ArrayList<E>(); synchronized (lineTokenizer) { - initParsing(); + // Inits <code>ILineTokenizer</code> + lineTokenizer.init(); String line; try { for (int lineNumber = 0; (line = bufferedReader.readLine()) != null; lineNumber++) { - if (mapperFactory.getHeaderLine() > -1) + if (mapperFactory != null && mapperFactory.getHeaderLine() > -1) { String[] tokens = parseLine(lineNumber, line); factory.setPropertyMapper(mapperFactory.createPropertyMapper(tokens)); diff --git a/common/source/java/ch/systemsx/cisd/common/parser/IParserObjectFactory.java b/common/source/java/ch/systemsx/cisd/common/parser/IParserObjectFactory.java index 0183eeed7ae63924c6466bc67f0d1af599b24b9d..b7ef78fdb38cfa1914fd5693b5e44ed9da80bd1b 100644 --- a/common/source/java/ch/systemsx/cisd/common/parser/IParserObjectFactory.java +++ b/common/source/java/ch/systemsx/cisd/common/parser/IParserObjectFactory.java @@ -38,9 +38,9 @@ public interface IParserObjectFactory<E> public final static IParserObjectFactory<String[]> DO_NOTHING_OBJECT_FACTORY = new IParserObjectFactory<String[]>() { - // ///////////////////////////////////////////////////// + /////////////////////////////////////////////////////// // IParserObjectFactory - // ///////////////////////////////////////////////////// + /////////////////////////////////////////////////////// public String[] createObject(String[] lineTokens) { diff --git a/common/source/java/ch/systemsx/cisd/common/parser/IPropertyMapper.java b/common/source/java/ch/systemsx/cisd/common/parser/IPropertyMapper.java index 838dda1e09f70d570e26bbb7a86ecbaee3a532be..0c202ac7eca0116bb37d348edeec07df721ca1b0 100644 --- a/common/source/java/ch/systemsx/cisd/common/parser/IPropertyMapper.java +++ b/common/source/java/ch/systemsx/cisd/common/parser/IPropertyMapper.java @@ -37,6 +37,7 @@ public interface IPropertyMapper * * @author Christian Ribeaud */ + // TODO Christian: we should maybe add a type... public final static class Property { public final int column; diff --git a/common/source/java/ch/systemsx/cisd/common/parser/IPropertyMapperFactory.java b/common/source/java/ch/systemsx/cisd/common/parser/IPropertyMapperFactory.java index d2c3c54de32b630801f557efa825b8e471366ab2..9d3a6ee5fb8b3572e90612fc064b3d98bb6774fe 100644 --- a/common/source/java/ch/systemsx/cisd/common/parser/IPropertyMapperFactory.java +++ b/common/source/java/ch/systemsx/cisd/common/parser/IPropertyMapperFactory.java @@ -21,6 +21,8 @@ package ch.systemsx.cisd.common.parser; * * @author Christian Ribeaud */ +// TODO Christian: actually this only can understand file with a header. We should +// be more generic. public interface IPropertyMapperFactory { public int getHeaderLine();