Print

Print


Commit in java/trunk/conditions/src on MAIN
main/java/org/hps/conditions/TableConstants.java+5-2753 -> 754
main/java/org/hps/conditions/svt/SvtAlignmentConstant.java+24-10753 -> 754
                                /SvtConverterRegistry.java+11753 -> 754
main/resources/org/hps/conditions/config/conditions_dev.xml+12753 -> 754
test/java/org/hps/conditions/ConditionsDevTest.java+11-2753 -> 754
+63-14
5 modified files
Add working implementation of SVT alignment constants.  Uses sample data in the dev conditions database.

java/trunk/conditions/src/main/java/org/hps/conditions
TableConstants.java 753 -> 754
--- java/trunk/conditions/src/main/java/org/hps/conditions/TableConstants.java	2014-07-01 21:30:35 UTC (rev 753)
+++ java/trunk/conditions/src/main/java/org/hps/conditions/TableConstants.java	2014-07-01 21:31:35 UTC (rev 754)
@@ -41,10 +41,13 @@
     public static final String ECAL_TIME_SHIFTS = "ecal_time_shifts";
     
     /** ECAL LED setup. */
-    public static final String ECAL_LEDS = "ecal_leds";
+    public static final String ECAL_LEDS = "ecal_leds";    
 
-    /** Conditions key for combined ECal conditions. */
+    /** Conditions key for combined SVT conditions. */
     public static final String SVT_CONDITIONS = "svt_conditions";
+    
+    /** Conditions key for SVT alignment data. */
+    public static final String SVT_ALIGNMENTS = "svt_alignments";
 
     /** Table with SVT channel data. */
     public static final String SVT_CHANNELS = "svt_channels";

java/trunk/conditions/src/main/java/org/hps/conditions/svt
SvtAlignmentConstant.java 753 -> 754
--- java/trunk/conditions/src/main/java/org/hps/conditions/svt/SvtAlignmentConstant.java	2014-07-01 21:30:35 UTC (rev 753)
+++ java/trunk/conditions/src/main/java/org/hps/conditions/svt/SvtAlignmentConstant.java	2014-07-01 21:31:35 UTC (rev 754)
@@ -1,6 +1,7 @@
 package org.hps.conditions.svt;
 
 import org.hps.conditions.AbstractConditionsObject;
+import org.hps.conditions.ConditionsObjectCollection;
 
 /**
  * <p>
@@ -18,6 +19,9 @@
  */
 public class SvtAlignmentConstant extends AbstractConditionsObject {
     
+    public static class SvtAlignmentCollection extends ConditionsObjectCollection<SvtAlignmentConstant> {       
+    }
+    
     /** Top or bottom half. */
     public enum Half {                
         TOP(1), 
@@ -65,8 +69,8 @@
      * Get the alignment constant's full key with the encoded information.
      * @return the alignment constant's key
      */
-    public String getKey() {
-        return getFieldValue("key");
+    public String getParameter() {
+        return getFieldValue("parameter");
     }
     
     /**
@@ -82,13 +86,13 @@
      * @return the Half value from the key
      */
     public Half getHalf() {
-        int half = Integer.parseInt(getKey().substring(0,0));
+        int half = Integer.parseInt(getParameter().substring(0, 1));
         if (half == Half.TOP.getValue()) {
             return Half.TOP;
-        } else if (half == Half.TOP.getValue()) {
+        } else if (half == Half.BOTTOM.getValue()) {
             return Half.BOTTOM;
         } else {
-            throw new IllegalArgumentException("Could not parse valid Half from " + getKey());
+            throw new IllegalArgumentException("Could not parse valid Half from " + getParameter());
         }                              
     }
     
@@ -97,13 +101,13 @@
      * @return the AlignmentType value from the key
      */
     public AlignmentType getAlignmentType() {
-        int alignmentType = Integer.parseInt(getKey().substring(1, 1));
+        int alignmentType = Integer.parseInt(getParameter().substring(1, 2));
         if (alignmentType == AlignmentType.TRANSLATION.getValue()) {
             return AlignmentType.TRANSLATION;
         } else if (alignmentType == AlignmentType.ROTATION.getValue()) {
             return AlignmentType.ROTATION;
         } else {
-            throw new IllegalArgumentException("Could not parse valid AlignmentType from " + getKey());
+            throw new IllegalArgumentException("Could not parse valid AlignmentType from " + getParameter());
         }
     }
     
@@ -112,7 +116,7 @@
      * @return the UnitAxis v
      */
     public UnitAxis getUnitAxis() {
-        int unitAxis = Integer.parseInt(getKey().substring(3,3));
+        int unitAxis = Integer.parseInt(getParameter().substring(2, 3));
         if (unitAxis == UnitAxis.U.getValue()) {
             return UnitAxis.U;
         } else if (unitAxis == UnitAxis.V.getValue()) {
@@ -120,7 +124,7 @@
         } else if (unitAxis == UnitAxis.W.getValue()) {
             return UnitAxis.W;
         } else {
-            throw new IllegalArgumentException("Could not parse valid UnitAxis from " + getKey());
+            throw new IllegalArgumentException("Could not parse valid UnitAxis from " + getParameter());
         }
     }
     
@@ -129,10 +133,20 @@
      * @return the module number from the key 
      */
     public int getModuleNumber() {
-        int moduleNumber = Integer.parseInt(getKey().substring(3, 4));
+        int moduleNumber = Integer.parseInt(getParameter().substring(3, 5));
         if (moduleNumber > MAX_MODULE_NUMBER || moduleNumber == 0) {
             throw new IllegalArgumentException("The decoded module number " + moduleNumber + " is invalid.");
         }
         return moduleNumber;
     }
+    
+    public String toString() {
+        StringBuffer buff = new StringBuffer();
+        buff.append(super.toString());
+        buff.append("half: ").append(getHalf().getValue()).append('\n');
+        buff.append("alignment_type: ").append(getAlignmentType().getValue()).append('\n');
+        buff.append("unit_axis: ").append(getUnitAxis().getValue()).append('\n');
+        buff.append("module_number: " ).append(getModuleNumber()).append('\n');
+        return buff.toString();
+    }
 }
\ No newline at end of file

java/trunk/conditions/src/main/java/org/hps/conditions/svt
SvtConverterRegistry.java 753 -> 754
--- java/trunk/conditions/src/main/java/org/hps/conditions/svt/SvtConverterRegistry.java	2014-07-01 21:30:35 UTC (rev 753)
+++ java/trunk/conditions/src/main/java/org/hps/conditions/svt/SvtConverterRegistry.java	2014-07-01 21:31:35 UTC (rev 754)
@@ -1,6 +1,7 @@
 package org.hps.conditions.svt;
 
 import org.hps.conditions.ConditionsObjectConverter;
+import org.hps.conditions.svt.SvtAlignmentConstant.SvtAlignmentCollection;
 import org.hps.conditions.svt.SvtBadChannel.SvtBadChannelCollection;
 import org.hps.conditions.svt.SvtCalibration.SvtCalibrationCollection;
 import org.hps.conditions.svt.SvtChannel.SvtChannelCollection;
@@ -9,9 +10,19 @@
 import org.hps.conditions.svt.SvtPulseParameters.SvtPulseParametersCollection;
 import org.hps.conditions.svt.SvtTimeShift.SvtTimeShiftCollection;
 
+/**
+ * Definitions of converters from the database to SVT specific conditions classes.
+ * @author Jeremy McCormick <[log in to unmask]>
+ */
 @SuppressWarnings({ "unchecked", "rawtypes" })
 public final class SvtConverterRegistry {
 
+    public static class SvtAlignmentConverter extends ConditionsObjectConverter<SvtAlignmentCollection> {        
+        public Class getType() {
+            return SvtAlignmentCollection.class;
+        }               
+    }
+    
     public static class SvtBadChannelConverter extends ConditionsObjectConverter<SvtBadChannelCollection> {
         public Class getType() {
             return SvtBadChannelCollection.class;

java/trunk/conditions/src/main/resources/org/hps/conditions/config
conditions_dev.xml 753 -> 754
--- java/trunk/conditions/src/main/resources/org/hps/conditions/config/conditions_dev.xml	2014-07-01 21:30:35 UTC (rev 753)
+++ java/trunk/conditions/src/main/resources/org/hps/conditions/config/conditions_dev.xml	2014-07-01 21:31:35 UTC (rev 754)
@@ -7,6 +7,7 @@
 
         <!-- SVT converters -->
         <converter class="org.hps.conditions.svt.SvtConditionsConverter"/>
+        <converter class="org.hps.conditions.svt.SvtConverterRegistry$SvtAlignmentConverter"/>
         <converter class="org.hps.conditions.svt.SvtConverterRegistry$SvtBadChannelConverter"/>
         <converter class="org.hps.conditions.svt.SvtConverterRegistry$SvtCalibrationConverter"/>
         <converter class="org.hps.conditions.svt.SvtConverterRegistry$SvtChannelConverter"/>
@@ -50,6 +51,17 @@
                 <field name="collection_id" />
             </fields>
         </table>
+        
+        <table key="svt_alignments" name="svt_alignments">
+            <classes>
+                <object class="org.hps.conditions.svt.SvtAlignmentConstant"/>
+                <collection class="org.hps.conditions.svt.SvtAlignmentConstant$SvtAlignmentCollection"/>                
+            </classes>
+            <fields>
+                <field name="parameter"/>
+                <field name="value"/>
+            </fields>        
+        </table>
     
         <table key="svt_channels" name="svt_channels">
             <classes>

java/trunk/conditions/src/test/java/org/hps/conditions
ConditionsDevTest.java 753 -> 754
--- java/trunk/conditions/src/test/java/org/hps/conditions/ConditionsDevTest.java	2014-07-01 21:30:35 UTC (rev 753)
+++ java/trunk/conditions/src/test/java/org/hps/conditions/ConditionsDevTest.java	2014-07-01 21:31:35 UTC (rev 754)
@@ -16,6 +16,7 @@
             TableConstants.ECAL_GAINS,
             TableConstants.ECAL_LEDS,
             TableConstants.ECAL_TIME_SHIFTS,
+            TableConstants.SVT_ALIGNMENTS,
             TableConstants.SVT_CALIBRATIONS,
             TableConstants.SVT_CHANNELS,
             TableConstants.SVT_DAQ_MAP,
@@ -38,9 +39,17 @@
         
         for (String conditionsKey : conditionsKeys) {
             TableMetaData metaData = manager.findTableMetaData(conditionsKey);
-            @SuppressWarnings("rawtypes")
-            ConditionsObjectCollection collection = (ConditionsObjectCollection)manager.getConditionsData(metaData.collectionClass, metaData.getKey());
+            @SuppressWarnings("unchecked")
+            ConditionsObjectCollection<AbstractConditionsObject> collection = 
+                (ConditionsObjectCollection<AbstractConditionsObject>)manager.getConditionsData(metaData.collectionClass, metaData.getKey());
             System.out.println(metaData.getKey() + " has " + collection.getObjects().size() + " objects");
+            System.out.println();
+            System.out.println("Printing objects in " + metaData.getKey() + " collection ...");
+            System.out.println();
+            for (ConditionsObject object : collection.getObjects()) {
+                System.out.println(object.toString());
+                //System.out.println();
+            }
         }
     }
 
SVNspam 0.1