Print

Print


Commit in GeomConverter/src/org/lcsim/detector on MAIN
DetectorElement.java+19-11.31 -> 1.32
DetectorElementContainer.java+2-21.7 -> 1.8
DetectorElementStore.java+2-21.5 -> 1.6
+23-5
3 modified files
JM: Add guards against null Identifier or IdentifierHelper from DetectorElement.

GeomConverter/src/org/lcsim/detector
DetectorElement.java 1.31 -> 1.32
diff -u -r1.31 -r1.32
--- DetectorElement.java	4 Jul 2007 07:19:39 -0000	1.31
+++ DetectorElement.java	12 Jul 2007 04:41:14 -0000	1.32
@@ -7,13 +7,14 @@
 
 import org.lcsim.detector.identifier.IExpandedIdentifier;
 import org.lcsim.detector.identifier.IIdentifier;
+import org.lcsim.detector.identifier.Identifier;
 import org.lcsim.detector.identifier.IIdentifierHelper;
 
 /**
  * Implementation of {@link IDetectorElement}.
  * 
  * @author Jeremy McCormick
- * @version $Id: DetectorElement.java,v 1.31 2007/07/04 07:19:39 jeremy Exp $
+ * @version $Id: DetectorElement.java,v 1.32 2007/07/12 04:41:14 jeremy Exp $
  */
 public class DetectorElement 
 extends Named
@@ -278,6 +279,10 @@
 
     public IIdentifier getIdentifier()
     {
+        if (id == null)
+        {
+            id = new Identifier();
+        }
         return id;
     }
 
@@ -418,6 +423,19 @@
 
     public IIdentifierHelper getIdentifierHelper()
     {
+        if ( helper == null ) 
+        {
+            IDetectorElement par = getParent();
+            if ( par.getIdentifierHelper() != null ) 
+            {
+                this.helper = par.getIdentifierHelper();
+            }
+
+            if (this.helper == null) 
+            {
+                throw new RuntimeException("Could not locate IdentifierHelper for DetectorElement : " + getName()); 
+            }
+        }
         return helper;
     }
     

GeomConverter/src/org/lcsim/detector
DetectorElementContainer.java 1.7 -> 1.8
diff -u -r1.7 -r1.8
--- DetectorElementContainer.java	25 May 2007 20:16:26 -0000	1.7
+++ DetectorElementContainer.java	12 Jul 2007 04:41:14 -0000	1.8
@@ -33,7 +33,7 @@
         {
             for (IDetectorElement de : this)
             {
-                if (de.getIdentifier() != null)
+                if (de.getIdentifier().isValid())
                 {
                     if (de.getIdentifier().equals(id))
                     {
@@ -92,4 +92,4 @@
         super.add(de);
         return true;
     }
-}
\ No newline at end of file
+}

GeomConverter/src/org/lcsim/detector
DetectorElementStore.java 1.5 -> 1.6
diff -u -r1.5 -r1.6
--- DetectorElementStore.java	25 May 2007 20:16:26 -0000	1.5
+++ DetectorElementStore.java	12 Jul 2007 04:41:14 -0000	1.6
@@ -25,7 +25,7 @@
     public boolean add(IDetectorElement de)
     {
         IIdentifier id = de.getIdentifier();
-        if (id != null)
+        if (id.isValid())
         {
             if (cache.get(id.getValue()) == null)
             {
@@ -46,4 +46,4 @@
         if (lookup != null) match.add(lookup);
         return match;
     }                
-}
\ No newline at end of file
+}
CVSspam 0.2.8