Print

Print


Commit in GeomConverter/src/org/lcsim/geometry/compact on MAIN
CompactReader.java+11-171.23 -> 1.24
JM: Do schema validation with the CompactReader; use the CachingEntityResolver

GeomConverter/src/org/lcsim/geometry/compact
CompactReader.java 1.23 -> 1.24
diff -u -r1.23 -r1.24
--- CompactReader.java	15 Feb 2006 00:05:23 -0000	1.23
+++ CompactReader.java	16 Feb 2006 01:57:08 -0000	1.24
@@ -12,6 +12,7 @@
 import org.jdom.input.SAXBuilder;
 import org.lcsim.geometry.IDDecoder;
 import org.lcsim.material.XMLMaterialManager;
+import org.lcsim.util.cache.CachingEntityResolver;
 import org.lcsim.util.xml.ElementFactory;
 import org.lcsim.util.xml.JDOMExpressionFactory;
 import org.lcsim.util.xml.ElementFactory.ElementCreationException;
@@ -24,7 +25,7 @@
  * org.lcsim.geometry.GeometryReader class, which extends this.
  *
  * @author tonyj
- * @version $Id: CompactReader.java,v 1.23 2006/02/15 00:05:23 jeremy Exp $
+ * @version $Id: CompactReader.java,v 1.24 2006/02/16 01:57:08 jeremy Exp $
  *
  */
 public class CompactReader
@@ -59,7 +60,15 @@
     {
         JDOMExpressionFactory jdom = new JDOMExpressionFactory();
         SAXBuilder builder = new SAXBuilder();
-        builder.setFactory(jdom);
+        builder.setFactory(jdom);        
+        
+        // Enable schema validation
+        builder.setValidation(true);
+        builder.setFeature("http://apache.org/xml/features/validation/schema", true);
+        
+        // Add an EntityResolver that caches to ~/.cache
+        builder.setEntityResolver(new CachingEntityResolver());
+       
         Document doc = builder.build(in);
         
         Element lccdd = doc.getRootElement();
@@ -131,21 +140,6 @@
             {
                 throw new RuntimeException(e);
             }
-            //Readout r = factory.createElement(Readout.class,readout,null);            
-            //Element segmentation = readout.getChild("segmentation");
-            
-            /* Setup a Segmentation for the Calorimeter. */
-            //if (segmentation != null)
-            //{
-            //    String type = segmentation.getAttributeValue("type");
-            //    Segmentation seg = factory.createElement(Segmentation.class, segmentation, type);
-            //    r.setSegmentation(seg);
-            //}
-            /* Setup a generic IDDecoder for the tracker Readout. */
-            //else
-            //{
-            //    r.setIDDecoder( new org.lcsim.geometry.util.TrackerIDDecoder() );
-            //}
             
             readoutMap.put(r.getName(),r);
             det.addReadout(r);
CVSspam 0.2.8