Ripped out stale 1.3 XML parsing code.
authorwassa <wassa@ab3bd59b-922f-494d-bb5f-6f0a3c29deca>
Mon, 18 Sep 2006 19:48:25 +0000 (19:48 +0000)
committerwassa <wassa@ab3bd59b-922f-494d-bb5f-6f0a3c29deca>
Mon, 18 Sep 2006 19:48:25 +0000 (19:48 +0000)
git-svn-id: https://subversion.switch.ch/svn/shibboleth/java-idp/trunk@2034 ab3bd59b-922f-494d-bb5f-6f0a3c29deca

src/edu/internet2/middleware/shibboleth/aa/arp/provider/BaseArpRepository.java
src/edu/internet2/middleware/shibboleth/aa/arp/provider/FileSystemArpRepository.java
src/edu/internet2/middleware/shibboleth/aa/attrresolv/AttributeResolver.java

index d772dfa..d741e9a 100755 (executable)
@@ -24,6 +24,8 @@ import java.util.Iterator;
 import java.util.Map;
 import java.util.Set;
 
+import javax.xml.parsers.ParserConfigurationException;
+
 import org.apache.log4j.Logger;
 import org.w3c.dom.Element;
 import org.xml.sax.SAXException;
@@ -120,6 +122,9 @@ public abstract class BaseArpRepository implements ArpRepository {
                } catch (SAXException se) {
                        log.error("An error occurred while parsing an ARP: " + se);
                        throw new ArpRepositoryException("An error occurred while parsing an ARP.");
+               } catch (ParserConfigurationException e) {
+                       log.error("An error occurred while loading the XML parser: " + e);
+                       throw new ArpRepositoryException("An error occurred while loading the XML parser.");
                }
        }
 
@@ -128,7 +133,7 @@ public abstract class BaseArpRepository implements ArpRepository {
         * 
         * @return Element
         */
-       protected abstract Element retrieveSiteArpXml() throws IOException, SAXException;
+       protected abstract Element retrieveSiteArpXml() throws IOException, SAXException, ParserConfigurationException;
 
        public void destroy() {
 
@@ -171,6 +176,9 @@ public abstract class BaseArpRepository implements ArpRepository {
                } catch (SAXException se) {
                        log.error("An error occurred while parsing an ARP: " + se);
                        throw new ArpRepositoryException("An error occurred while parsing an ARP.");
+               } catch (ParserConfigurationException e) {
+                       log.error("An error occurred while loading the XML parser: " + e);
+                       throw new ArpRepositoryException("An error occurred while loading the XML parser.");
                }
        }
 
@@ -179,7 +187,8 @@ public abstract class BaseArpRepository implements ArpRepository {
         * 
         * @return Element
         */
-       protected abstract Element retrieveUserArpXml(Principal principal) throws IOException, SAXException;
+       protected abstract Element retrieveUserArpXml(Principal principal) throws IOException, SAXException,
+                       ParserConfigurationException;
 
 }
 
index 3c8b7d9..2427c26 100755 (executable)
@@ -20,19 +20,21 @@ import java.io.File;
 import java.io.IOException;
 import java.security.Principal;
 
+import javax.xml.parsers.DocumentBuilderFactory;
+import javax.xml.parsers.ParserConfigurationException;
+
 import org.apache.log4j.Logger;
-import org.opensaml.SAMLException;
 import org.w3c.dom.Element;
 import org.w3c.dom.Node;
 import org.w3c.dom.NodeList;
 import org.xml.sax.InputSource;
 import org.xml.sax.SAXException;
+
 import edu.internet2.middleware.shibboleth.aa.arp.Arp;
 import edu.internet2.middleware.shibboleth.aa.arp.ArpRepository;
 import edu.internet2.middleware.shibboleth.aa.arp.ArpRepositoryException;
 import edu.internet2.middleware.shibboleth.common.ShibResource;
 import edu.internet2.middleware.shibboleth.idp.IdPConfig;
-import edu.internet2.middleware.shibboleth.xml.Parser;
 
 /**
  * Simple <code>ArpRepository</code> implementation that uses a filesystem for storage.
@@ -105,9 +107,10 @@ public class FileSystemArpRepository extends BaseArpRepository implements ArpRep
        }
 
        /**
+        * @throws ParserConfigurationException 
         * @see edu.internet2.middleware.shibboleth.aa.arp.provider.BaseArpRepository#retrieveSiteArpXml()
         */
-       protected Element retrieveSiteArpXml() throws IOException, SAXException {
+       protected Element retrieveSiteArpXml() throws IOException, SAXException, ParserConfigurationException {
 
                String fileName = dataStorePath + siteArpFileName;
                log.debug("Attempting to load site ARP from: (" + fileName + ").");
@@ -115,7 +118,7 @@ public class FileSystemArpRepository extends BaseArpRepository implements ArpRep
 
        }
 
-       private Element retrieveArpXml(String fileName) throws SAXException, IOException {
+       private Element retrieveArpXml(String fileName) throws SAXException, IOException, ParserConfigurationException {
 
                try {
                        ShibResource resource = new ShibResource(fileName, this.getClass());
@@ -124,13 +127,10 @@ public class FileSystemArpRepository extends BaseArpRepository implements ArpRep
                                return null;
                        }
 
-                       Parser.DOMParser parser = new Parser.DOMParser(true);
-                       try {
-                               parser.parse(new InputSource(resource.getInputStream()));
-                       } catch (SAMLException e) {
-                               throw new SAXException(e);
-                       }
-                       return parser.getDocument().getDocumentElement();
+                       DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
+                       factory.setValidating(false);
+                       factory.setNamespaceAware(true);
+                       return factory.newDocumentBuilder().parse(new InputSource(resource.getInputStream())).getDocumentElement();
 
                } catch (ShibResource.ResourceNotAvailableException e) {
                        log.debug("No ARP found.");
@@ -139,9 +139,10 @@ public class FileSystemArpRepository extends BaseArpRepository implements ArpRep
        }
 
        /**
+        * @throws ParserConfigurationException 
         * @see edu.internet2.middleware.shibboleth.aa.arp.provider.BaseArpRepository#retrieveUserArpXml(Principal)
         */
-       protected Element retrieveUserArpXml(Principal principal) throws IOException, SAXException {
+       protected Element retrieveUserArpXml(Principal principal) throws IOException, SAXException, ParserConfigurationException {
 
                String fileName = dataStorePath + "arp.user." + principal.getName() + ".xml";
                log.debug("Attempting to load user (" + principal.getName() + ") ARP from: (" + fileName + ").");
index 733363e..4215710 100644 (file)
@@ -30,9 +30,10 @@ import java.util.Set;
 
 import javax.naming.directory.Attributes;
 import javax.naming.directory.BasicAttributes;
+import javax.xml.parsers.DocumentBuilderFactory;
+import javax.xml.parsers.ParserConfigurationException;
 
 import org.apache.log4j.Logger;
-import org.opensaml.SAMLException;
 import org.w3c.dom.Document;
 import org.w3c.dom.Element;
 import org.w3c.dom.Node;
@@ -44,7 +45,6 @@ import edu.internet2.middleware.shibboleth.aa.attrresolv.provider.ValueHandler;
 import edu.internet2.middleware.shibboleth.common.ShibResource;
 import edu.internet2.middleware.shibboleth.common.ShibResource.ResourceNotAvailableException;
 import edu.internet2.middleware.shibboleth.idp.IdPConfig;
-import edu.internet2.middleware.shibboleth.xml.Parser;
 
 /**
  * An engine for obtaining attribute values for specified principals. Attributes values are resolved using a directed
@@ -79,9 +79,11 @@ public class AttributeResolver {
 
                try {
                        ShibResource config = new ShibResource(configFile, this.getClass());
-                       Parser.DOMParser parser = new Parser.DOMParser(true);
-                       parser.parse(new InputSource(config.getInputStream()));
-                       loadConfig(parser.getDocument());
+                       DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
+                       factory.setValidating(false);
+                       factory.setNamespaceAware(true);
+
+                       loadConfig(factory.newDocumentBuilder().parse(new InputSource(config.getInputStream())));
 
                } catch (ResourceNotAvailableException e) {
                        log.error("No Attribute Resolver configuration could be loaded from (" + configFile + "): " + e);
@@ -92,7 +94,7 @@ public class AttributeResolver {
                } catch (IOException e) {
                        log.error("Error reading Attribute Resolver Configuration file: " + e);
                        throw new AttributeResolverException("Error reading Attribute Resolver Configuration file.");
-               } catch (SAMLException e) {
+               } catch (ParserConfigurationException e) {
                        log.error("Error parsing Attribute Resolver Configuration file: " + e);
                        throw new AttributeResolverException("Error parsing Attribute Resolver Configuration file.");
                }