diff --git a/rtd_yeastx/resource/examples/allFields.quantML b/rtd_yeastx/resource/examples/allFields.quantML index f66be98c85e303c2c46e6c2bb8fc9099840925c4..58b62984f0fb119ecf86f4ca5ce647feaa8b70b0 100644 --- a/rtd_yeastx/resource/examples/allFields.quantML +++ b/rtd_yeastx/resource/examples/allFields.quantML @@ -4,7 +4,7 @@ <source>msSoft</source> <valid>true</valid> <comment>no comment</comment> - <registrationDate>2009-04-07 12:00:21</registrationDate> + <registrationDate>04-Apr-1980 12:00:21</registrationDate> <registrator>John Doe</registrator> <concentration> <datasetParent>20090822211007858-23605</datasetParent> diff --git a/rtd_yeastx/source/java/ch/systemsx/cisd/yeastx/db/DBUtils.java b/rtd_yeastx/source/java/ch/systemsx/cisd/yeastx/db/DBUtils.java index b69f0441fecd9720aa6d7825359886c2b11fe9a4..9845c86781cf99cc360aaf6a08028ed6cf659648 100644 --- a/rtd_yeastx/source/java/ch/systemsx/cisd/yeastx/db/DBUtils.java +++ b/rtd_yeastx/source/java/ch/systemsx/cisd/yeastx/db/DBUtils.java @@ -33,6 +33,8 @@ public class DBUtils /** Current version of the database. */ public static final String DATABASE_VERSION = "003"; + public static final String DATE_PATTERN = "dd-MMM-yyyy HH:mm:ss"; + static { QueryTool.getTypeMap().put(float[].class, new FloatArrayMapper()); diff --git a/rtd_yeastx/source/java/ch/systemsx/cisd/yeastx/eicml/EICMLParser.java b/rtd_yeastx/source/java/ch/systemsx/cisd/yeastx/eicml/EICMLParser.java index fd876cb13173f9878e15ebf2bea2e9609db1f924..0861c7078fa2b4484388c9a4b6ebff3d461c2f1a 100644 --- a/rtd_yeastx/source/java/ch/systemsx/cisd/yeastx/eicml/EICMLParser.java +++ b/rtd_yeastx/source/java/ch/systemsx/cisd/yeastx/eicml/EICMLParser.java @@ -33,6 +33,7 @@ import org.xml.sax.helpers.DefaultHandler; import ch.systemsx.cisd.base.convert.NativeData; import ch.systemsx.cisd.base.convert.NativeData.ByteOrder; +import ch.systemsx.cisd.yeastx.db.DBUtils; /** * A file for parsing <code>eicML</code> files. @@ -56,18 +57,18 @@ public class EICMLParser extends DefaultHandler } private static final ThreadLocal<DateFormat> dateFormatHolder = new ThreadLocal<DateFormat>(); - + public static DateFormat getDateFormat() { DateFormat dateFormat = dateFormatHolder.get(); if (dateFormat == null) { - dateFormat = new SimpleDateFormat("dd-MMM-yyyy HH:mm:ss"); + dateFormat = new SimpleDateFormat(DBUtils.DATE_PATTERN); dateFormatHolder.set(dateFormat); } return dateFormat; } - + private StringBuilder buffer = new StringBuilder(); private EICMSRunDTO msRun; diff --git a/rtd_yeastx/source/java/ch/systemsx/cisd/yeastx/fiaml/FIAMLParser.java b/rtd_yeastx/source/java/ch/systemsx/cisd/yeastx/fiaml/FIAMLParser.java index 39687b086c5329dfa264abd2709f37c6fde13be6..b8e9ef338a519453d96141c8cf1986df42b5f50e 100644 --- a/rtd_yeastx/source/java/ch/systemsx/cisd/yeastx/fiaml/FIAMLParser.java +++ b/rtd_yeastx/source/java/ch/systemsx/cisd/yeastx/fiaml/FIAMLParser.java @@ -33,6 +33,7 @@ import org.xml.sax.helpers.DefaultHandler; import ch.systemsx.cisd.base.convert.NativeData; import ch.systemsx.cisd.base.convert.NativeData.ByteOrder; +import ch.systemsx.cisd.yeastx.db.DBUtils; /** * A file for parsing <code>eicML</code> files. @@ -42,7 +43,7 @@ import ch.systemsx.cisd.base.convert.NativeData.ByteOrder; public class FIAMLParser extends DefaultHandler { private final static String FIA_RUN = "fiaRun"; - + /** A role that observes {@link FIAMSRunDTO}s. */ public interface IMSRunObserver { @@ -56,7 +57,7 @@ public class FIAMLParser extends DefaultHandler DateFormat dateFormat = dateFormatHolder.get(); if (dateFormat == null) { - dateFormat = new SimpleDateFormat("dd-MMM-yyyy HH:mm:ss"); + dateFormat = new SimpleDateFormat(DBUtils.DATE_PATTERN); dateFormatHolder.set(dateFormat); } return dateFormat; @@ -65,7 +66,7 @@ public class FIAMLParser extends DefaultHandler private StringBuilder buffer = new StringBuilder(); private FIAMSRunDTO msRun; - + private FIAMSRunDataDTO fiaRunData; private boolean parsingMsRun; @@ -138,13 +139,17 @@ public class FIAMLParser extends DefaultHandler throw new SAXException("Illegal polarity: must be of length 1"); } msRun.setPolarity(value.charAt(0)); - } else if ("lowMz".equals(name)){ + } else if ("lowMz".equals(name)) + { msRun.setLowMz(Float.parseFloat(value)); - } else if ("highMz".equals(name)){ + } else if ("highMz".equals(name)) + { msRun.setHighMz(Float.parseFloat(value)); - } else if ("is".equals(name)){ + } else if ("is".equals(name)) + { msRun.setInternalStandard(Float.parseFloat(value)); - } else if ("od".equals(name)){ + } else if ("od".equals(name)) + { msRun.setOd(Float.parseFloat(value)); } else if ("operator".equals(name)) { diff --git a/rtd_yeastx/source/java/ch/systemsx/cisd/yeastx/quant/QuantMLParser.java b/rtd_yeastx/source/java/ch/systemsx/cisd/yeastx/quant/QuantMLParser.java index d91ed30160d597af8b1df2b2a017653e2832d189..3fed98618f82c83fee3a9389ea88f5dd6704c57c 100644 --- a/rtd_yeastx/source/java/ch/systemsx/cisd/yeastx/quant/QuantMLParser.java +++ b/rtd_yeastx/source/java/ch/systemsx/cisd/yeastx/quant/QuantMLParser.java @@ -82,7 +82,6 @@ class QuantMLParser private MSQuantificationsDTO doParseMSQuantifications(File dataSet) { - try { Object object = unmarshaller.unmarshal(dataSet); diff --git a/rtd_yeastx/source/java/ch/systemsx/cisd/yeastx/quant/XmlDateAdapter.java b/rtd_yeastx/source/java/ch/systemsx/cisd/yeastx/quant/XmlDateAdapter.java index 0a8efd546c24364f0a73b0fd8bfc247f9c96446a..6d3334ca433eb5915aee54aecc254e469b63e1b5 100644 --- a/rtd_yeastx/source/java/ch/systemsx/cisd/yeastx/quant/XmlDateAdapter.java +++ b/rtd_yeastx/source/java/ch/systemsx/cisd/yeastx/quant/XmlDateAdapter.java @@ -21,12 +21,14 @@ import java.util.Date; import javax.xml.bind.annotation.adapters.XmlAdapter; +import ch.systemsx.cisd.yeastx.db.DBUtils; + /** * @author Tomasz Pylak */ public class XmlDateAdapter extends XmlAdapter<String, Date> { - static String PATTERN = "yyyy-MM-dd HH:mm:ss"; + private static final String PATTERN = DBUtils.DATE_PATTERN; @Override public String marshal(Date date) throws Exception diff --git a/rtd_yeastx/sourceTest/java/ch/systemsx/cisd/yeastx/db/AbstractDBTest.java b/rtd_yeastx/sourceTest/java/ch/systemsx/cisd/yeastx/db/AbstractDBTest.java index 5362ec35c8b06aadaa5818eb6dc2717efaaf2184..695bc4ecda87ed22e9d35b86412b321288f7597e 100644 --- a/rtd_yeastx/sourceTest/java/ch/systemsx/cisd/yeastx/db/AbstractDBTest.java +++ b/rtd_yeastx/sourceTest/java/ch/systemsx/cisd/yeastx/db/AbstractDBTest.java @@ -35,18 +35,23 @@ public abstract class AbstractDBTest static { LogInitializer.init(); + DBUtils.init(getDatabaseContext()); } - + protected DataSource datasource; - + @BeforeClass(alwaysRun = true) public void setUpClass() throws SQLException + { + datasource = getDatabaseContext().getDataSource(); + } + + private static DatabaseConfigurationContext getDatabaseContext() { final DatabaseConfigurationContext context = DBUtils.createDefaultDBContext(); context.setDatabaseKind("dbtest"); context.setCreateFromScratch(true); - DBUtils.init(context); - datasource = context.getDataSource(); + return context; } } diff --git a/rtd_yeastx/sourceTest/java/ch/systemsx/cisd/yeastx/eicml/EICMLTest.java b/rtd_yeastx/sourceTest/java/ch/systemsx/cisd/yeastx/eicml/EICMLTest.java index a66cedc8ef04ff63908de3864a8f1612a8628fd0..f8d194dd8a8bd96e3d62056eb2159fbebb355711 100644 --- a/rtd_yeastx/sourceTest/java/ch/systemsx/cisd/yeastx/eicml/EICMLTest.java +++ b/rtd_yeastx/sourceTest/java/ch/systemsx/cisd/yeastx/eicml/EICMLTest.java @@ -53,9 +53,9 @@ public class EICMLTest extends AbstractDBTest public void testUploadEicML() throws SQLException { EICML2Database db = new EICML2Database(datasource); - db.uploadEicMLFile(new File("resource/examples/example.eicML"), - new DMDataSetDTO("data set perm id", "sample perm id", "sample name", - "experiment perm id", "experiment name")); + db.uploadEicMLFile(new File("resource/examples/example.eicML"), new DMDataSetDTO( + "data set perm id eicml", "sample perm id eicml", "sample name eicml", + "experiment perm id eicml", "experiment name eicml")); } private void checkChromatograms(int count, ChromatogramDTO chrom) diff --git a/rtd_yeastx/sourceTest/java/ch/systemsx/cisd/yeastx/fiaml/FIAMLTest.java b/rtd_yeastx/sourceTest/java/ch/systemsx/cisd/yeastx/fiaml/FIAMLTest.java index cfb4ed22690da413011a2d06e4f6be27786373f7..6d26f86aaf6fc7ab248eca39aed6728a29dd0433 100644 --- a/rtd_yeastx/sourceTest/java/ch/systemsx/cisd/yeastx/fiaml/FIAMLTest.java +++ b/rtd_yeastx/sourceTest/java/ch/systemsx/cisd/yeastx/fiaml/FIAMLTest.java @@ -60,7 +60,7 @@ public class FIAMLTest extends AbstractDBTest { FIAML2Database fiaML2Database = new FIAML2Database(datasource); fiaML2Database.uploadFiaMLFile(new File("resource/examples/example.fiaML"), - new DMDataSetDTO("data set perm id", "sample perm id", "sample name", + new DMDataSetDTO("data set perm id fiaml", "sample perm id", "sample name", "experiment perm id", "experiment name")); } diff --git a/rtd_yeastx/sourceTest/java/ch/systemsx/cisd/yeastx/quant/QuantMLParserTest.java b/rtd_yeastx/sourceTest/java/ch/systemsx/cisd/yeastx/quant/QuantMLParserTest.java index 45ef8ad8ba3dd560cd339e164f7be606702e146b..c6b4420711206f808ea05f659e6a618cb61adabc 100644 --- a/rtd_yeastx/sourceTest/java/ch/systemsx/cisd/yeastx/quant/QuantMLParserTest.java +++ b/rtd_yeastx/sourceTest/java/ch/systemsx/cisd/yeastx/quant/QuantMLParserTest.java @@ -72,7 +72,7 @@ public class QuantMLParserTest extends AssertJUnit assertTrue(quantification.isValid()); assertEquals("no comment", quantification.getComment()); assertEquals("John Doe", quantification.getRegistrator()); - Date expectedDate = new XmlDateAdapter().unmarshal("2009-04-07 12:00:21"); + Date expectedDate = new XmlDateAdapter().unmarshal("04-Apr-1980 12:00:21"); assertEquals(expectedDate, quantification.getRegistrationDate()); assertEquals(1, quantification.getConcentrations().size()); diff --git a/rtd_yeastx/sourceTest/java/ch/systemsx/cisd/yeastx/quant/QuantMSDAOTest.java b/rtd_yeastx/sourceTest/java/ch/systemsx/cisd/yeastx/quant/QuantMSDAOTest.java index 2885f5fde54c5ef4d7db1304e1845ed3de3a1ab9..14c3782430a1e5f513b3940ff6f6040daee38d99 100644 --- a/rtd_yeastx/sourceTest/java/ch/systemsx/cisd/yeastx/quant/QuantMSDAOTest.java +++ b/rtd_yeastx/sourceTest/java/ch/systemsx/cisd/yeastx/quant/QuantMSDAOTest.java @@ -55,7 +55,7 @@ public class QuantMSDAOTest extends AbstractDBTest { QuantML2Database uploader = new QuantML2Database(datasource); DMDataSetDTO dataSetDTO = - new DMDataSetDTO("data set perm id", "sample perm id", "sample name", + new DMDataSetDTO("data set perm id quant", "sample perm id quant", "sample name", "experiment perm id", "experiment name"); uploader.uploadQuantMLFile(new File("resource/examples/allFields.quantML"), dataSetDTO); }