Print

Print


Author: [log in to unmask]
Date: Mon Nov 10 22:41:03 2014
New Revision: 1500

Log:
Change method to return a List instead of a single TableMetaData object.

Modified:
    java/trunk/conditions/src/main/java/org/hps/conditions/DatabaseConditionsManager.java
    java/trunk/conditions/src/test/java/org/hps/conditions/svt/SvtDaqMappingTest.java
    java/trunk/conditions/src/test/java/org/hps/conditions/svt/TestRunSvtDaqMappingTest.java

Modified: java/trunk/conditions/src/main/java/org/hps/conditions/DatabaseConditionsManager.java
 =============================================================================
--- java/trunk/conditions/src/main/java/org/hps/conditions/DatabaseConditionsManager.java	(original)
+++ java/trunk/conditions/src/main/java/org/hps/conditions/DatabaseConditionsManager.java	Mon Nov 10 22:41:03 2014
@@ -227,7 +227,7 @@
      *         database
      */
     public <CollectionType extends ConditionsObjectCollection> CollectionType getCollection(Class<CollectionType> type) {
-        TableMetaData metaData = this.findTableMetaData(type);
+        TableMetaData metaData = this.findTableMetaData(type).get(0);
         if (metaData == null) {
             throw new RuntimeException("Table name data for condition of type " + type.getSimpleName() + " was not found.");
         }
@@ -430,15 +430,14 @@
      * @param type The collection class.
      * @return The table meta data.
      */
-    // FIXME: This should return a list in case of multiple conditions defined
-    // with same type.
-    public TableMetaData findTableMetaData(Class type) {
+    public List<TableMetaData> findTableMetaData(Class type) {
+        List<TableMetaData> metaDataList = new ArrayList<TableMetaData>();
         for (TableMetaData meta : tableMetaData) {
             if (meta.getCollectionClass().equals(type)) {
-                return meta;
-            }
-        }
-        return null;
+                metaDataList.add(meta);
+            }
+        }
+        return metaDataList;
     }
 
     /**

Modified: java/trunk/conditions/src/test/java/org/hps/conditions/svt/SvtDaqMappingTest.java
 =============================================================================
--- java/trunk/conditions/src/test/java/org/hps/conditions/svt/SvtDaqMappingTest.java	(original)
+++ java/trunk/conditions/src/test/java/org/hps/conditions/svt/SvtDaqMappingTest.java	Mon Nov 10 22:41:03 2014
@@ -30,7 +30,7 @@
         DatabaseConditionsManager conditionsManager = new DatabaseConditionsManager();
         conditionsManager.setDetector("HPS-Proposal2014-v7-2pt2", 0);
 
-        TableMetaData metaData = conditionsManager.findTableMetaData(SvtDaqMappingCollection.class);
+        TableMetaData metaData = conditionsManager.findTableMetaData(SvtDaqMappingCollection.class).get(0);
         SvtDaqMappingCollection daqMappingCollection = conditionsManager.getConditionsData(SvtDaqMappingCollection.class, metaData.getTableName());
 
         int totalSensors = 0;

Modified: java/trunk/conditions/src/test/java/org/hps/conditions/svt/TestRunSvtDaqMappingTest.java
 =============================================================================
--- java/trunk/conditions/src/test/java/org/hps/conditions/svt/TestRunSvtDaqMappingTest.java	(original)
+++ java/trunk/conditions/src/test/java/org/hps/conditions/svt/TestRunSvtDaqMappingTest.java	Mon Nov 10 22:41:03 2014
@@ -37,7 +37,7 @@
         conditionsManager.configure("/org/hps/conditions/config/conditions_database_testrun_2012.xml");
         conditionsManager.setDetector("HPS-TestRun-v5", 1351);
 
-        metaData = conditionsManager.findTableMetaData(TestRunSvtDaqMappingCollection.class);
+        metaData = conditionsManager.findTableMetaData(TestRunSvtDaqMappingCollection.class).get(0);
         TestRunSvtDaqMappingCollection daqMappingCollection = conditionsManager.getConditionsData(TestRunSvtDaqMappingCollection.class, metaData.getTableName());
 
         int totalSensors = 0;