Print

Print


Author: omoreno
Date: Mon Oct 27 11:35:12 2014
New Revision: 1313

Log:
Obtain the SVT channels collection before retrieving anything else from the database, otherwise it causes the conditions converter to crash.

Modified:
    java/branches/hps_java_trunk_HPSJAVA-255/conditions/src/main/java/org/hps/conditions/svt/SvtConditionsConverter.java

Modified: java/branches/hps_java_trunk_HPSJAVA-255/conditions/src/main/java/org/hps/conditions/svt/SvtConditionsConverter.java
 =============================================================================
--- java/branches/hps_java_trunk_HPSJAVA-255/conditions/src/main/java/org/hps/conditions/svt/SvtConditionsConverter.java	(original)
+++ java/branches/hps_java_trunk_HPSJAVA-255/conditions/src/main/java/org/hps/conditions/svt/SvtConditionsConverter.java	Mon Oct 27 11:35:12 2014
@@ -1,12 +1,9 @@
 package org.hps.conditions.svt;
 
-import static org.hps.conditions.TableConstants.SVT_DAQ_MAP;
-
+import org.lcsim.conditions.ConditionsManager;
 import org.hps.conditions.DatabaseConditionsManager;
-import org.hps.conditions.TableMetaData;
+import org.hps.conditions.svt.SvtChannel.SvtChannelCollection;
 import org.hps.conditions.svt.SvtDaqMapping.SvtDaqMappingCollection;
-
-import org.lcsim.conditions.ConditionsManager;
 
 /**
  * This class creates an {@link SvtConditions} object from the database, based on the
@@ -17,34 +14,32 @@
  */
 public final class SvtConditionsConverter extends AbstractSvtConditionsConverter<SvtConditions> {
 
-	private TableMetaData metaData = null; 
-	private String tableName = null; 
-
 	public SvtConditionsConverter(){
 		this.conditions = new SvtConditions();
 	}
 	
     /**
-     * Create and return the SVT conditions object.
+     * Create and return an {@link SvtConditions} object 
+     * 
      * @param manager The current conditions manager.
      * @param name The conditions key, which is ignored for now.
      */
+    @Override
     public SvtConditions getData(ConditionsManager manager, String name) {
-    	conditions = super.getData(manager, name);
     	
     	DatabaseConditionsManager dbConditionsManager = (DatabaseConditionsManager) manager;
-    	
-    	// Get the table name containing the SVT DAQ map from the database
-        // configuration.  If it doesn't exist, use the default value.
-        metaData = dbConditionsManager.findTableMetaData(SvtDaqMappingCollection.class);
-    	if(metaData != null){
-    		tableName = metaData.getTableName();
-    	} else { 
-    		tableName = SVT_DAQ_MAP; 
-    	}
-        // Get the DAQ map from the conditions database
-        SvtDaqMappingCollection daqMap = manager.getCachedConditions(SvtDaqMappingCollection.class, tableName).getCachedData();
+
+    	// Get the channel map from the conditions database
+        SvtChannelCollection channels = this.getCollection(SvtChannelCollection.class, dbConditionsManager); 
+
+        // Create the SVT conditions object to use to encapsulate SVT condition collections
+        conditions.setChannelMap(channels);
+       
+    	// Get the DAQ map from the conditions database
+    	SvtDaqMappingCollection daqMap= this.getCollection(SvtDaqMappingCollection.class, dbConditionsManager);
         conditions.setDaqMap(daqMap);
+        
+        conditions = super.getData(manager, name);
         
         return conditions;
     }
@@ -53,6 +48,7 @@
      * Get the type handled by this converter.
      * @return The type handled by this converter.
      */
+    @Override
     public Class<SvtConditions> getType() {
         return SvtConditions.class;
     }