Author: [log in to unmask] Date: Wed Jun 24 14:40:32 2015 New Revision: 3194 Log: Fix db record structure Modified: java/trunk/conditions/src/main/java/org/hps/conditions/svt/SvtBiasConditionsLoader.java Modified: java/trunk/conditions/src/main/java/org/hps/conditions/svt/SvtBiasConditionsLoader.java ============================================================================= --- java/trunk/conditions/src/main/java/org/hps/conditions/svt/SvtBiasConditionsLoader.java (original) +++ java/trunk/conditions/src/main/java/org/hps/conditions/svt/SvtBiasConditionsLoader.java Wed Jun 24 14:40:32 2015 @@ -6,6 +6,7 @@ import hep.aida.*; import java.io.File; +import java.sql.SQLException; import java.util.ArrayList; import java.util.Date; import java.util.HashSet; @@ -206,9 +207,7 @@ // Load in CSV records from the exported run spreadsheet. - final String path = cl.getOptionValue("c"); - - RunMap runmap = getRunMapFromSpreadSheet(path); + RunMap runmap = getRunMapFromSpreadSheet(cl.getOptionValue("c")); // Load MYA dump @@ -276,6 +275,9 @@ // Create a new collection for each run List<Integer> runsadded = new ArrayList<Integer>(); + + + for(SvtBiasRunRange range : ranges) { logger.info("Loading " + range.toString()); RunData rundata = range.getRun(); @@ -284,9 +286,38 @@ throw new RuntimeException("Run " + Integer.toString(rundata.getRun()) + " was already added?"); } runsadded.add(rundata.getRun()); + + if(range.getRanges().isEmpty()) { + logger.info("No bias range for run " + range.getRun().getRun()); + continue; + } + + int collectionId = -1; + try { + collectionId = MANAGER.addCollection("svt_bias_constants", "whatever that is fine","run ranges for SVT HV bias ON"); + } catch (SQLException e1) { + throw new RuntimeException(e1); + } + + //create a collection + SvtBiasConstantCollection collection = new SvtBiasConstantCollection(); + try { + collection.setCollectionId(collectionId); + } catch (ConditionsObjectException e1) { + throw new RuntimeException("cant set collection id",e1); + } + + final ConditionsRecord condition = new ConditionsRecord(); + condition.setFieldValue("run_start", rundata.getRun()); + condition.setFieldValue("run_end", rundata.getRun()); + condition.setFieldValue("name", "svt_bias"); + condition.setFieldValue("table_name", "svt_bias_constants"); + condition.setFieldValue("notes", "constants from mya"); + condition.setFieldValue("created", new Date()); + condition.setFieldValue("created_by", System.getProperty("user.name")); + condition.setFieldValue("collection_id", collectionId); + for (SvtBiasMyaRange biasRange : range.getRanges()) { - //create a collection - SvtBiasConstantCollection collection = new SvtBiasConstantCollection(); //create a constant and add to the collection final SvtBiasConstant constant = new SvtBiasConstant(); constant.setFieldValue("start", biasRange.getStartDate()); @@ -294,25 +325,20 @@ constant.setFieldValue("value", biasRange.getStart().getValue()); collection.add(constant); - final ConditionsRecord condition = new ConditionsRecord(); - condition.setFieldValue("run_start", rundata.getRun()); - condition.setFieldValue("run_end", rundata.getRun()); - condition.setFieldValue("name", "svt_bias"); - condition.setFieldValue("table_name", "svt_bias_constants"); - condition.setFieldValue("notes", "constants from mya"); - condition.setFieldValue("created", new Date()); - condition.setFieldValue("created_by", System.getProperty("user.name")); - - condition.setFieldValue("collection_id", collection.getCollectionId()); - logger.info(condition.toString()); - - if(doIt) { + } + + if(doIt) { + try { try { - condition.insert(); - } catch (ConditionsObjectException e) { - throw new RuntimeException(e); + collection.insert(); + } catch (SQLException e) { + throw new RuntimeException("cant instert collection", e); } + condition.insert(); + + } catch (ConditionsObjectException e) { + throw new RuntimeException(e); } } }