OSDN Git Service

* Makefile.in: Rebuilt.
[pf3gnuchains/gcc-fork.git] / libjava / gnu / xml / aelfred2 / JAXPFactory.java
index 006dc13..ff585a8 100644 (file)
@@ -60,137 +60,172 @@ import javax.xml.parsers.SAXParserFactory;
  *
  * @author David Brownell
  */
-public final class JAXPFactory extends SAXParserFactory
+public final class JAXPFactory
+  extends SAXParserFactory
 {
-    private Hashtable  flags = new Hashtable ();
-
-    /**
-     * Constructs a factory which normally returns a non-validating
-     * parser.
-     */
-    public JAXPFactory () { }
-
-    public SAXParser newSAXParser ()
+  
+  private Hashtable flags = new Hashtable();
+
+  /**
+   * Constructs a factory which normally returns a non-validating
+   * parser.
+   */
+  public JAXPFactory()
+  {
+  }
+
+  public SAXParser newSAXParser()
     throws ParserConfigurationException, SAXException
+  {
+    JaxpParser jaxp = new JaxpParser();
+    Enumeration e = flags.keys();
+    XMLReader parser = jaxp.getXMLReader();
+
+    parser.setFeature(SAXDriver.FEATURE + "namespaces",
+                      isNamespaceAware());
+    parser.setFeature(SAXDriver.FEATURE + "validation",
+                      isValidating());
+    // that makes SAX2 feature flags trump JAXP
+    
+    while (e.hasMoreElements())
+      {
+        String uri = (String) e.nextElement();
+        Boolean value = (Boolean) flags.get(uri);
+        parser.setFeature(uri, value.booleanValue());
+      }
+
+    return jaxp;
+  }
+
+  // yes, this "feature transfer" mechanism doesn't play well
+  
+  public void setFeature(String name, boolean value) 
+    throws ParserConfigurationException, SAXNotRecognizedException,
+           SAXNotSupportedException
+  {
+    try
+      {
+        // force "early" detection of errors where possible
+        // (flags can't necessarily be set before parsing)
+        new JaxpParser().getXMLReader().setFeature(name, value);
+        
+        flags.put(name, new Boolean(value));
+      }
+    catch (SAXNotRecognizedException e)
+      {
+        throw new SAXNotRecognizedException(name);
+      }
+    catch (SAXNotSupportedException e)
+      {
+        throw new SAXNotSupportedException(name);
+      }
+    catch (Exception e)
+      {
+        throw new ParserConfigurationException(e.getClass().getName()
+                                               + ": "
+                                               + e.getMessage());
+      }
+  }
+
+  public boolean getFeature(String name) 
+    throws ParserConfigurationException, SAXNotRecognizedException,
+           SAXNotSupportedException
+  {
+    Boolean value = (Boolean) flags.get(name);
+    
+    if (value != null)
+      {
+        return value.booleanValue();
+      }
+    else
+      {
+        try
+          {
+            return new JaxpParser().getXMLReader().getFeature(name);
+          }
+        catch (SAXNotRecognizedException e)
+          {
+            throw new SAXNotRecognizedException(name);
+          }
+        catch (SAXNotSupportedException e)
+          {
+            throw new SAXNotSupportedException(name);
+          }
+        catch (SAXException e)
+          {
+            throw new ParserConfigurationException(e.getClass().getName()
+                                                   + ": "
+                                                   + e.getMessage());
+          }
+      }
+  }
+           
+  private static class JaxpParser
+    extends SAXParser
+  {
+    
+    private XmlReader ae2 = new XmlReader();
+    private XMLReaderAdapter parser = null;
+    
+    JaxpParser()
     {
-       JaxpParser      jaxp = new JaxpParser ();
-       Enumeration     e = flags.keys ();
-       XMLReader       parser = jaxp.getXMLReader ();
-
-       parser.setFeature (
-               SAXDriver.FEATURE + "namespaces",
-               isNamespaceAware ());
-       parser.setFeature (
-               SAXDriver.FEATURE + "validation",
-               isValidating ());
-       // that makes SAX2 feature flags trump JAXP
-
-       while (e.hasMoreElements ()) {
-           String      uri = (String) e.nextElement ();
-           Boolean     value = (Boolean) flags.get (uri);
-           parser.setFeature (uri, value.booleanValue ());
-       }
-
-       return jaxp;
     }
 
-    // yes, this "feature transfer" mechanism doesn't play well
+    public void setProperty(String id, Object value) 
+      throws SAXNotRecognizedException, SAXNotSupportedException
+    {
+      ae2.setProperty(id, value);
+    }
 
-    public void setFeature (String name, boolean value) 
-    throws
-       ParserConfigurationException,
-       SAXNotRecognizedException,
-       SAXNotSupportedException
+    public Object getProperty(String id) 
+      throws SAXNotRecognizedException, SAXNotSupportedException
     {
-       try {
-           // force "early" detection of errors where possible
-           // (flags can't necessarily be set before parsing)
-           new JaxpParser ().getXMLReader ().setFeature (name, value);
-
-           flags.put (name, new Boolean (value));
-       } catch (SAXNotRecognizedException e) {
-           throw new SAXNotRecognizedException (name);
-       } catch (SAXNotSupportedException e) {
-           throw new SAXNotSupportedException (name);
-       } catch (Exception e) {
-           throw new ParserConfigurationException (
-                 e.getClass ().getName ()
-               + ": "
-               + e.getMessage ());
-       }
+      return ae2.getProperty(id);
     }
 
-    public boolean getFeature (String name) 
-    throws
-       ParserConfigurationException,
-       SAXNotRecognizedException,
-       SAXNotSupportedException
+    public Parser getParser()
+      throws SAXException
     {
-       Boolean value = (Boolean) flags.get (name);
-       
-       if (value != null)
-           return value.booleanValue ();
-       else
-           try {
-               return new JaxpParser ().getXMLReader ().getFeature (name);
-           } catch (SAXNotRecognizedException e) {
-               throw new SAXNotRecognizedException (name);
-           } catch (SAXNotSupportedException e) {
-               throw new SAXNotSupportedException (name);
-           } catch (SAXException e) {
-               throw new ParserConfigurationException (
-                     e.getClass ().getName ()
-                   + ": "
-                   + e.getMessage ());
-           }
+      if (parser == null)
+        {
+          parser = new XMLReaderAdapter(ae2);
+        }
+      return parser;
     }
 
-    private static class JaxpParser extends SAXParser
+    public XMLReader getXMLReader ()
+      throws SAXException
     {
-       private XmlReader       ae2 = new XmlReader ();
-       private XMLReaderAdapter parser = null;
-
-       JaxpParser () { }
-
-       public void setProperty (String id, Object value) 
-       throws SAXNotRecognizedException, SAXNotSupportedException
-           { ae2.setProperty (id, value); }
-
-       public Object getProperty (String id) 
-       throws SAXNotRecognizedException, SAXNotSupportedException
-           { return ae2.getProperty (id); }
-
-       public Parser getParser ()
-       throws SAXException
-       { 
-           if (parser == null)
-               parser = new XMLReaderAdapter (ae2);
-           return parser;
-       }
-
-       public XMLReader getXMLReader ()
-       throws SAXException
-           { return ae2; }
-
-       public boolean isNamespaceAware ()
-       {
-           try {
-               return ae2.getFeature (SAXDriver.FEATURE + "namespaces");
-           } catch (Exception e) {
-               throw new Error ();
-           }
-       }
-
-       public boolean isValidating ()
-       {
-           try {
-               return ae2.getFeature (SAXDriver.FEATURE + "validation");
-           } catch (Exception e) {
-               throw new Error ();
-           }
-       }
-
-        // TODO isXIncludeAware()
-        
+      return ae2;
     }
+
+    public boolean isNamespaceAware()
+    {
+      try
+        {
+          return ae2.getFeature(SAXDriver.FEATURE + "namespaces");
+        }
+      catch (Exception e)
+        {
+          throw new Error();
+        }
+    }
+    
+    public boolean isValidating()
+    {
+      try
+        {
+          return ae2.getFeature(SAXDriver.FEATURE + "validation");
+        }
+      catch (Exception e)
+        {
+          throw new Error();
+        }
+    }
+    
+    // TODO isXIncludeAware()
+    
+  }
+  
 }
+