diff options
Diffstat (limited to 'libjava/classpath/javax/xml/parsers')
7 files changed, 0 insertions, 1380 deletions
diff --git a/libjava/classpath/javax/xml/parsers/DocumentBuilder.java b/libjava/classpath/javax/xml/parsers/DocumentBuilder.java deleted file mode 100644 index 8e4eccb..0000000 --- a/libjava/classpath/javax/xml/parsers/DocumentBuilder.java +++ /dev/null @@ -1,203 +0,0 @@ -/* DocumentBuilder.java -- - Copyright (C) 2004, 2005 Free Software Foundation, Inc. - -This file is part of GNU Classpath. - -GNU Classpath is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. - -GNU Classpath is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GNU Classpath; see the file COPYING. If not, write to the -Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301 USA. - -Linking this library statically or dynamically with other modules is -making a combined work based on this library. Thus, the terms and -conditions of the GNU General Public License cover the whole -combination. - -As a special exception, the copyright holders of this library give you -permission to link this library with independent modules to produce an -executable, regardless of the license terms of these independent -modules, and to copy and distribute the resulting executable under -terms of your choice, provided that you also meet, for each linked -independent module, the terms and conditions of the license of that -module. An independent module is a module which is not derived from -or based on this library. If you modify this library, you may extend -this exception to your version of the library, but you are not -obligated to do so. If you do not wish to do so, delete this -exception statement from your version. */ - -package javax.xml.parsers; - -import java.io.File; -import java.io.FileInputStream; -import java.io.InputStream; -import java.io.IOException; -import javax.xml.validation.Schema; -import org.w3c.dom.Document; -import org.w3c.dom.DOMImplementation; -import org.xml.sax.InputSource; -import org.xml.sax.EntityResolver; -import org.xml.sax.ErrorHandler; -import org.xml.sax.SAXException; - -/** - * Convenience class for parsing an XML document into a W3C DOM object - * graph. - * Instances of this class are <em>not</em> guaranteed to be thread safe. - * - * @author (a href='mailto:dog@gnu.org'>Chris Burdess</a) - */ -public abstract class DocumentBuilder -{ - - protected DocumentBuilder() - { - } - - /** - * Parse the specified input stream and return a DOM Document. - * Prefer the version of this method that specifies a system ID, in order - * to resolve external references correctly. - * @param is an XML input stream - * @exception IllegalArgumentException if the input stream is null - */ - public Document parse(InputStream is) - throws SAXException, IOException - { - if (is == null) - { - throw new IllegalArgumentException("input stream is null"); - } - return parse(new InputSource(is)); - } - - /** - * Parse the specified input stream and return a DOM Document. - * @param is an XML input stream - * @param systemId the system ID of the XML document - * @exception IllegalArgumentException if the input stream is null - */ - public Document parse(InputStream is, String systemId) - throws SAXException, IOException - { - if (is == null) - { - throw new IllegalArgumentException("input stream is null"); - } - InputSource source = new InputSource(is); - source.setSystemId(systemId); - return parse(source); - } - - /** - * Parse the content of the specified URI and return a DOM Document. - * @param uri an XML system ID - * @exception IllegalArgumentException if the URI is null - */ - public Document parse(String uri) - throws SAXException, IOException - { - if (uri == null) - { - throw new IllegalArgumentException("URI is null"); - } - return parse(new InputSource(uri)); - } - - /** - * Parse the specified file and return a DOM Document. - * @param f the XML file - * @exception IllegalArgumentException if the file is null - */ - public Document parse(File f) - throws SAXException, IOException - { - if (f == null) - { - throw new IllegalArgumentException("file is null"); - } - InputSource source = new InputSource(new FileInputStream(f)); - source.setSystemId(f.toURL().toString()); - return parse(source); - } - - /** - * Parse the specified input source and return a DOM Document. - * @param source the input source - * @exception IllegalArgumentException if the input source is null - */ - public abstract Document parse(InputSource source) - throws SAXException, IOException; - - /** - * Indicates whether this document builder is XML Namespace aware. - */ - public abstract boolean isNamespaceAware(); - - /** - * Indicates whether this document builder will validate its input. - */ - public abstract boolean isValidating(); - - /** - * Sets the SAX entity resolver callback used to resolve external entities - * in the XML document(s) to parse. - * @param er an entity resolver - */ - public abstract void setEntityResolver(EntityResolver er); - - /** - * Sets the SAX error handler callback used to report parsing errors. - * @param eh the error handler - */ - public abstract void setErrorHandler(ErrorHandler eh); - - /** - * Creates a new, empty DOM Document. - * To create a document with a root element and optional doctype, use the - * <code>DOMImplementation</code> instead. - * @see org.w3c.dom.DOMImplementation#createDocument - */ - public abstract Document newDocument(); - - /** - * Returns the DOM implementation. - */ - public abstract DOMImplementation getDOMImplementation(); - - // -- JAXP 1.3 methods -- - - /** - * Reset this document builder to its original configuration. - * @since 1.3 - */ - public void reset() - { - } - - /** - * Returns the schema in use by the XML processor. - */ - public Schema getSchema() - { - return null; - } - - /** - * Returns the XInclude processing mode in use by the parser. - */ - public boolean isXIncludeAware() - { - return false; - } - -} diff --git a/libjava/classpath/javax/xml/parsers/DocumentBuilderFactory.java b/libjava/classpath/javax/xml/parsers/DocumentBuilderFactory.java deleted file mode 100644 index 5f8b49d..0000000 --- a/libjava/classpath/javax/xml/parsers/DocumentBuilderFactory.java +++ /dev/null @@ -1,369 +0,0 @@ -/* DocumentBuilderFactory.java -- - Copyright (C) 2004, 2005 Free Software Foundation, Inc. - -This file is part of GNU Classpath. - -GNU Classpath is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. - -GNU Classpath is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GNU Classpath; see the file COPYING. If not, write to the -Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301 USA. - -Linking this library statically or dynamically with other modules is -making a combined work based on this library. Thus, the terms and -conditions of the GNU General Public License cover the whole -combination. - -As a special exception, the copyright holders of this library give you -permission to link this library with independent modules to produce an -executable, regardless of the license terms of these independent -modules, and to copy and distribute the resulting executable under -terms of your choice, provided that you also meet, for each linked -independent module, the terms and conditions of the license of that -module. An independent module is a module which is not derived from -or based on this library. If you modify this library, you may extend -this exception to your version of the library, but you are not -obligated to do so. If you do not wish to do so, delete this -exception statement from your version. */ - -package javax.xml.parsers; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileInputStream; -import java.io.InputStream; -import java.io.InputStreamReader; -import java.io.IOException; -import java.util.Properties; -import javax.xml.validation.Schema; - -/** - * Factory for obtaining document builders. - * Instances of this class are <em>not</em> guaranteed to be thread safe. - * - * @author <a href='mailto:dog@gnu.org'>Chris Burdess</a> - */ -public abstract class DocumentBuilderFactory -{ - - private boolean namespaceAware; - private boolean validating; - private boolean ignoringElementContentWhitespace; - private boolean expandEntityReferences = true; - private boolean ignoringComments; - private boolean coalescing; - private Schema schema; - private boolean xIncludeAware; - - protected DocumentBuilderFactory() - { - } - - /** - * Creates a new factory instance. - * The implementation class to load is the first found in the following - * locations: - * <ol> - * <li>the <code>javax.xml.parsers.DocumentBuilderFactory</code> system - * property</li> - * <li>the above named property value in the - * <code><i>$JAVA_HOME</i>/lib/jaxp.properties</code> file</li> - * <li>the class name specified in the - * <code>META-INF/services/javax.xml.parsers.DocumentBuilderFactory</code> - * system resource</li> - * <li>the default factory class</li> - * </ol> - */ - public static DocumentBuilderFactory newInstance() - { - ClassLoader loader = Thread.currentThread().getContextClassLoader(); - if (loader == null) - { - loader = DocumentBuilderFactory.class.getClassLoader(); - } - String className = null; - int count = 0; - do - { - className = getFactoryClassName(loader, count++); - if (className != null) - { - try - { - Class<?> t = (loader != null) ? loader.loadClass(className) : - Class.forName(className); - return (DocumentBuilderFactory) t.newInstance(); - } - catch (ClassNotFoundException e) - { - className = null; - } - catch (Exception e) - { - throw new FactoryConfigurationError(e, - "error instantiating class " + className); - } - } - } - while (className == null && count < 3); - return new gnu.xml.dom.DomDocumentBuilderFactory(); - } - - private static String getFactoryClassName(ClassLoader loader, int attempt) - { - final String propertyName = "javax.xml.parsers.DocumentBuilderFactory"; - switch (attempt) - { - case 0: - return System.getProperty(propertyName); - case 1: - try - { - File file = new File(System.getProperty("java.home")); - file = new File(file, "lib"); - file = new File(file, "jaxp.properties"); - InputStream in = new FileInputStream(file); - Properties props = new Properties(); - props.load(in); - in.close(); - return props.getProperty(propertyName); - } - catch (IOException e) - { - return null; - } - case 2: - try - { - String serviceKey = "/META-INF/services/" + propertyName; - InputStream in = (loader != null) ? - loader.getResourceAsStream(serviceKey) : - DocumentBuilderFactory.class.getResourceAsStream(serviceKey); - if (in != null) - { - BufferedReader r = - new BufferedReader(new InputStreamReader(in)); - String ret = r.readLine(); - r.close(); - return ret; - } - } - catch (IOException e) - { - } - return null; - default: - return null; - } - } - - /** - * Creates a new document builder instance using the currently specified - * factory configuration. - * @exception ParserConfigurationException if the specified configuration - * is not supported - */ - public abstract DocumentBuilder newDocumentBuilder() - throws ParserConfigurationException; - - /** - * Sets whether document builders obtained from this factory will be XML - * Namespace aware. - */ - public void setNamespaceAware(boolean awareness) - { - namespaceAware = awareness; - } - - /** - * Sets whether document builders obtained from this factory will validate - * their input. - */ - public void setValidating(boolean validating) - { - this.validating = validating; - } - - /** - * Sets whether document builders obtained from this factory will - * eliminate whitespace within elements that have an element-only content - * model. - */ - public void setIgnoringElementContentWhitespace(boolean whitespace) - { - ignoringElementContentWhitespace = whitespace; - } - - /** - * Sets whether document builders obtained from this factory will expand - * entity reference nodes. - */ - public void setExpandEntityReferences(boolean expandEntityRef) - { - expandEntityReferences = expandEntityRef; - } - - /** - * Sets whether document builders obtained from this factory will discard - * comment nodes. - */ - public void setIgnoringComments(boolean ignoreComments) - { - ignoringComments = ignoreComments; - } - - /** - * Sets whether document builders obtained from this factory will convert - * CDATA sections to text nodes and normalize adjacent text nodes into a - * single text node. - */ - public void setCoalescing(boolean coalescing) - { - this.coalescing = coalescing; - } - - /** - * Indicates whether document builders obtained from this factory will be - * XML Namespace aware. - */ - public boolean isNamespaceAware() - { - return namespaceAware; - } - - /** - * Indicates whether document builders obtained from this factory will - * validate their input. - */ - public boolean isValidating() - { - return validating; - } - - /** - * Indicates whether document builders obtained from this factory will - * eliminate whitespace within elements that have an element-only content - * model. - */ - public boolean isIgnoringElementContentWhitespace() - { - return ignoringElementContentWhitespace; - } - - /** - * Indicates whether document builders obtained from this factory will - * expand entity reference nodes. - */ - public boolean isExpandEntityReferences() - { - return expandEntityReferences; - } - - /** - * Indicates whether document builders obtained from this factory will - * discard comment nodes. - */ - public boolean isIgnoringComments() - { - return ignoringComments; - } - - /** - * Indicates whether document builders obtained from this factory will - * convert CDATA sections to text nodes and normalize adjacent text nodes - * into a single text node. - */ - public boolean isCoalescing() - { - return coalescing; - } - - /** - * Set the named attribute on the underlying implementation. - * @param name the name of the attribute - * @param value the new value - * @exception IllegalArgumentException if the attribute is not recognized - */ - public abstract void setAttribute(String name, Object value) - throws IllegalArgumentException; - - /** - * Retrieves the named attribute value from the underlying implementation. - * @param name the name of the attribute - * @exception IllegalArgumentException if the attribute is not recognized - */ - public abstract Object getAttribute(String name) - throws IllegalArgumentException; - - // -- JAXP 1.3 methods -- - - /** - * Returns the schema. - * @see #setSchema - * @since 1.5 - */ - public Schema getSchema() - { - return schema; - } - - /** - * Sets the schema. - * @see #getSchema - * @since 1.5 - */ - public void setSchema(Schema schema) - { - this.schema = schema; - } - - /** - * Indicates whether parsers obtained from this factory will be XInclude - * aware. - * @since 1.5 - */ - public boolean isXIncludeAware() - { - return xIncludeAware; - } - - /** - * Sets whether parsers obtained from this factory will be XInclude aware. - * @since 1.5 - */ - public void setXIncludeAware(boolean state) - { - xIncludeAware = state; - } - - /** - * Sets the value of the specified feature. - * @param name the feature name (URI) - * @param value whether to enable the feature or not - * @exception ParserConfigurationException if the feature is not - * supported. - * @since 1.5 - */ - public abstract void setFeature(String name, boolean value) - throws ParserConfigurationException; - - /** - * Returns the value of the specified feature. - * @param name the feature name (URI) - * @exception ParserConfigurationException if the feature is not - * supported. - * @since 1.5 - */ - public abstract boolean getFeature(String name) - throws ParserConfigurationException; - -} diff --git a/libjava/classpath/javax/xml/parsers/FactoryConfigurationError.java b/libjava/classpath/javax/xml/parsers/FactoryConfigurationError.java deleted file mode 100644 index 6e2ebfa..0000000 --- a/libjava/classpath/javax/xml/parsers/FactoryConfigurationError.java +++ /dev/null @@ -1,113 +0,0 @@ -/* FactoryConfigurationError.java -- - Copyright (C) 2004, 2005 Free Software Foundation, Inc. - -This file is part of GNU Classpath. - -GNU Classpath is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. - -GNU Classpath is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GNU Classpath; see the file COPYING. If not, write to the -Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301 USA. - -Linking this library statically or dynamically with other modules is -making a combined work based on this library. Thus, the terms and -conditions of the GNU General Public License cover the whole -combination. - -As a special exception, the copyright holders of this library give you -permission to link this library with independent modules to produce an -executable, regardless of the license terms of these independent -modules, and to copy and distribute the resulting executable under -terms of your choice, provided that you also meet, for each linked -independent module, the terms and conditions of the license of that -module. An independent module is a module which is not derived from -or based on this library. If you modify this library, you may extend -this exception to your version of the library, but you are not -obligated to do so. If you do not wish to do so, delete this -exception statement from your version. */ - -package javax.xml.parsers; - -/** - * An error occurred during configuration of the parser factory. - * - * @author (a href='mailto:dog@gnu.org'>Chris Burdess</a) - */ -public class FactoryConfigurationError - extends Error -{ - - /** - * The underlying cause of this exception, if any. - */ - private Exception exception; - - /** - * Constructor with no detail message. - */ - public FactoryConfigurationError() - { - super(); - } - - /** - * Constructor with the specified detail message. - * @param msg the detail message - */ - public FactoryConfigurationError(String msg) - { - super(msg); - } - - /** - * Constructor with the specified underlying cause. - * @param e the underlying cause of this exception - */ - public FactoryConfigurationError(Exception e) - { - super(e); - exception = e; - } - - /** - * Constructor with the specified underlying cause and detail message. - * @param e the underlying cause of this exception - * @param msg the detail message - */ - public FactoryConfigurationError(Exception e, String msg) - { - super(msg, e); - exception = e; - } - - /** - * Returns the message for this error, if any. - */ - public String getMessage() - { - String message = super.getMessage(); - if (message == null && exception != null) - { - message = exception.getMessage(); - } - return message; - } - - /** - * Returns the underlying cause of this exception, if any. - */ - public Exception getException() - { - return exception; - } - -} diff --git a/libjava/classpath/javax/xml/parsers/ParserConfigurationException.java b/libjava/classpath/javax/xml/parsers/ParserConfigurationException.java deleted file mode 100644 index a58dece..0000000 --- a/libjava/classpath/javax/xml/parsers/ParserConfigurationException.java +++ /dev/null @@ -1,66 +0,0 @@ -/* ParserConfigurationException.java -- - Copyright (C) 2004, 2005 Free Software Foundation, Inc. - -This file is part of GNU Classpath. - -GNU Classpath is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. - -GNU Classpath is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GNU Classpath; see the file COPYING. If not, write to the -Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301 USA. - -Linking this library statically or dynamically with other modules is -making a combined work based on this library. Thus, the terms and -conditions of the GNU General Public License cover the whole -combination. - -As a special exception, the copyright holders of this library give you -permission to link this library with independent modules to produce an -executable, regardless of the license terms of these independent -modules, and to copy and distribute the resulting executable under -terms of your choice, provided that you also meet, for each linked -independent module, the terms and conditions of the license of that -module. An independent module is a module which is not derived from -or based on this library. If you modify this library, you may extend -this exception to your version of the library, but you are not -obligated to do so. If you do not wish to do so, delete this -exception statement from your version. */ - -package javax.xml.parsers; - -/** - * An exception occurred during configuration of the XML parser. - * - * @author (a href='mailto:dog@gnu.org'>Chris Burdess</a) - */ -public class ParserConfigurationException - extends Exception -{ - - /** - * Constructor with no detail message. - */ - public ParserConfigurationException() - { - super(); - } - - /** - * Constructor with the specified detail message. - * @param msg the detail message - */ - public ParserConfigurationException(String msg) - { - super(msg); - } - -} diff --git a/libjava/classpath/javax/xml/parsers/SAXParser.java b/libjava/classpath/javax/xml/parsers/SAXParser.java deleted file mode 100644 index e535587..0000000 --- a/libjava/classpath/javax/xml/parsers/SAXParser.java +++ /dev/null @@ -1,340 +0,0 @@ -/* SAXParser.java -- - Copyright (C) 2004, 2005 Free Software Foundation, Inc. - -This file is part of GNU Classpath. - -GNU Classpath is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. - -GNU Classpath is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GNU Classpath; see the file COPYING. If not, write to the -Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301 USA. - -Linking this library statically or dynamically with other modules is -making a combined work based on this library. Thus, the terms and -conditions of the GNU General Public License cover the whole -combination. - -As a special exception, the copyright holders of this library give you -permission to link this library with independent modules to produce an -executable, regardless of the license terms of these independent -modules, and to copy and distribute the resulting executable under -terms of your choice, provided that you also meet, for each linked -independent module, the terms and conditions of the license of that -module. An independent module is a module which is not derived from -or based on this library. If you modify this library, you may extend -this exception to your version of the library, but you are not -obligated to do so. If you do not wish to do so, delete this -exception statement from your version. */ - -package javax.xml.parsers; - -import java.io.File; -import java.io.FileInputStream; -import java.io.InputStream; -import java.io.IOException; -import javax.xml.validation.Schema; -import org.xml.sax.HandlerBase; -import org.xml.sax.InputSource; -import org.xml.sax.Parser; -import org.xml.sax.SAXException; -import org.xml.sax.SAXNotRecognizedException; -import org.xml.sax.SAXNotSupportedException; -import org.xml.sax.XMLReader; -import org.xml.sax.helpers.DefaultHandler; - -/** - * Convenience class for using or accessing a SAX version 1 or 2 parser. - * Instances of this class are <em>not</em> guaranteed to be thread safe. - * - * @author (a href='mailto:dog@gnu.org'>Chris Burdess</a) - */ -public abstract class SAXParser -{ - - protected SAXParser() - { - } - - /** - * Parse the specifed input stream, reporting SAX1 events to the given - * handler. - * Prefer the SAX2 version of this method, since the HandlerBase class is - * now deprecated. - * Also prefer the version of this method that specifies a system ID, in - * order to resolve external references correctly. - * @param is an XML input stream - * @param hb the SAX1 handler - * @exception IllegalArgumentException if the input stream is null - * @see #parse(java.io.InputStream,org.xml.sax.helpers.DefaultHandler) - */ - public void parse(InputStream is, HandlerBase hb) - throws SAXException, IOException - { - if (is == null) - { - throw new IllegalArgumentException("input stream is null"); - } - parse(new InputSource(is), hb); - } - - /** - * Parse the specified input stream, reporting SAX1 events to the given - * handler. - * Prefer the SAX2 version of this method, since the HandlerBase class is - * now deprecated. - * @param is an XML input stream - * @param hb the SAX1 handler - * @param systemId the system ID of the XML document - * @exception IllegalArgumentException if the input stream is null - * @see #parse(java.io.InputStream,org.xml.sax.helpers.DefaultHandler,java.lang.String) - */ - public void parse(InputStream is, HandlerBase hb, String systemId) - throws SAXException, IOException - { - if (is == null) - { - throw new IllegalArgumentException("input stream is null"); - } - InputSource source = new InputSource(is); - source.setSystemId(systemId); - parse(source, hb); - } - - /** - * Parse the specified input stream, reporting SAX2 events to the given - * handler. - * Prefer the version of this method that specifies a system ID, in - * order to resolve external references correctly. - * @param is an XML input stream - * @param dh the SAX2 handler - * @exception IllegalArgumentException if the input stream is null - */ - public void parse(InputStream is, DefaultHandler dh) - throws SAXException, IOException - { - if (is == null) - { - throw new IllegalArgumentException("input stream is null"); - } - parse(new InputSource(is), dh); - } - - /** - * Parse the specified input stream, reporting SAX2 events to the given - * handler. - * @param is an XML input stream - * @param dh the SAX2 handler - * @param systemId the system ID of the XML document - * @exception IllegalArgumentException if the input stream is null - */ - public void parse (InputStream is, DefaultHandler dh, String systemId) - throws SAXException, IOException - { - if (is == null) - { - throw new IllegalArgumentException("input stream is null"); - } - InputSource source = new InputSource(is); - source.setSystemId(systemId); - parse(source, dh); - } - - /** - * Parse the content of the specified URI, reporting SAX1 events to the - * given handler. - * Prefer the SAX2 version of this method, since the HandlerBase class is - * now deprecated. - * @param uri an XML system ID - * @param hb the SAX1 handler - * @exception IllegalArgumentException if the URI is null - * @see #parse(java.lang.String,org.xml.sax.helpers.DefaultHandler) - */ - public void parse(String uri, HandlerBase hb) - throws SAXException, IOException - { - if (uri == null) - { - throw new IllegalArgumentException("URI is null"); - } - parse(new InputSource(uri), hb); - } - - /** - * Parse the content of the specified URI, reporting SAX2 events to the - * given handler. - * @param uri an XML system ID - * @param dh the SAX2 handler - * @exception IllegalArgumentException if the URI is null - */ - public void parse(String uri, DefaultHandler dh) - throws SAXException, IOException - { - if (uri == null) - { - throw new IllegalArgumentException("URI is null"); - } - parse(new InputSource(uri), dh); - } - - /** - * Parse the content of the specified file, reporting SAX1 events to the - * given handler. - * Prefer the SAX2 version of this method, since the HandlerBase class is - * now deprecated. - * @param f an XML file - * @param hb the SAX1 handler - * @exception IllegalArgumentException if the file is null - * @see #parse(java.io.File,org.xml.sax.helpers.DefaultHandler) - */ - public void parse(File f, HandlerBase hb) - throws SAXException, IOException - { - if (f == null) - { - throw new IllegalArgumentException("file is null"); - } - InputSource source = new InputSource(new FileInputStream(f)); - source.setSystemId(f.toURL().toString()); - parse(source, hb); - } - - /** - * Parse the content of the specified file, reporting SAX2 events to the - * given handler. - * @param f an XML file - * @param dh the SAX2 handler - * @exception IllegalArgumentException if the file is null - */ - public void parse(File f, DefaultHandler dh) - throws SAXException, IOException - { - if (f == null) - { - throw new IllegalArgumentException("file is null"); - } - InputSource source = new InputSource(new FileInputStream(f)); - source.setSystemId(f.toURL().toString()); - parse(source, dh); - } - - /** - * Parse the specified input source, reporting SAX1 events to the - * given handler. - * Prefer the SAX2 version of this method, since the HandlerBase class is - * now deprecated. - * @param is the SAX input source - * @param hb the SAX1 handler - * @exception IllegalArgumentException if the input source is null - * @see #parse(org.xml.sax.InputSource,org.xml.sax.helpers.DefaultHandler) - */ - public void parse(InputSource is, HandlerBase hb) - throws SAXException, IOException - { - if (is == null) - { - throw new IllegalArgumentException("input source is null"); - } - Parser parser = getParser(); - parser.setDocumentHandler(hb); - parser.setDTDHandler(hb); - parser.setEntityResolver(hb); - parser.setErrorHandler(hb); - parser.parse(is); - } - - /** - * Parse the specified input source, reporting SAX2 events to the - * given handler. - * @param is an XML file - * @param dh the SAX2 handler - * @exception IllegalArgumentException if the input source is null - */ - public void parse(InputSource is, DefaultHandler dh) - throws SAXException, IOException - { - if (is == null) - { - throw new IllegalArgumentException("input source is null"); - } - XMLReader reader = getXMLReader(); - reader.setContentHandler(dh); - reader.setDTDHandler(dh); - reader.setEntityResolver(dh); - reader.setErrorHandler(dh); - reader.parse(is); - } - - /** - * Returns the underlying SAX1 parser. - */ - public abstract Parser getParser() throws SAXException; - - /** - * Returns the underlying SAX2 parser. - * @since 1.1 - */ - public abstract XMLReader getXMLReader() throws SAXException; - - /** - * Indicates whether this parser is XML Namespace aware. - */ - public abstract boolean isNamespaceAware(); - - /** - * Indicates whether this parser will validate its input. - */ - public abstract boolean isValidating(); - - /** - * Sets the specified SAX2 parser property. - * @param name the name of the property - * @param value the value of the property - */ - public abstract void setProperty(String name, Object value) - throws SAXNotRecognizedException, SAXNotSupportedException; - - /** - * Returns the value of the specified SAX2 parser property. - * @param name the name of the property - */ - public abstract Object getProperty(String name) - throws SAXNotRecognizedException, SAXNotSupportedException; - - // -- JAXP 1.3 methods -- - - /** - * Resets this parser to its original configuration. - * @since 1.3 - */ - public void reset() - { - } - - /** - * Returns the schema in use by this parser. - * @since 1.3 - */ - public Schema getSchema() - { - return null; - } - - /** - * Indicates whether this parser is XInclude-aware. - * @since 1.3 - */ - public boolean isXIncludeAware() - { - return false; - } - -} diff --git a/libjava/classpath/javax/xml/parsers/SAXParserFactory.java b/libjava/classpath/javax/xml/parsers/SAXParserFactory.java deleted file mode 100644 index 13aca0f..0000000 --- a/libjava/classpath/javax/xml/parsers/SAXParserFactory.java +++ /dev/null @@ -1,273 +0,0 @@ -/* SAXParserFactory.java -- - Copyright (C) 2004, 2005 Free Software Foundation, Inc. - -This file is part of GNU Classpath. - -GNU Classpath is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. - -GNU Classpath is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GNU Classpath; see the file COPYING. If not, write to the -Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301 USA. - -Linking this library statically or dynamically with other modules is -making a combined work based on this library. Thus, the terms and -conditions of the GNU General Public License cover the whole -combination. - -As a special exception, the copyright holders of this library give you -permission to link this library with independent modules to produce an -executable, regardless of the license terms of these independent -modules, and to copy and distribute the resulting executable under -terms of your choice, provided that you also meet, for each linked -independent module, the terms and conditions of the license of that -module. An independent module is a module which is not derived from -or based on this library. If you modify this library, you may extend -this exception to your version of the library, but you are not -obligated to do so. If you do not wish to do so, delete this -exception statement from your version. */ - -package javax.xml.parsers; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileInputStream; -import java.io.InputStream; -import java.io.InputStreamReader; -import java.io.IOException; -import java.util.Properties; -import javax.xml.validation.Schema; -import org.xml.sax.SAXException; -import org.xml.sax.SAXNotRecognizedException; -import org.xml.sax.SAXNotSupportedException; - -/** - * Factory for obtaining SAX parsers. - * Instances of this class are <em>not</em> guaranteed to be thread safe. - * - * @author (a href='mailto:dog@gnu.org'>Chris Burdess</a) - */ -public abstract class SAXParserFactory -{ - - private boolean validating; - private boolean namespaceAware; - private Schema schema; - private boolean xIncludeAware; - - protected SAXParserFactory() - { - } - - /** - * Creates a new factory instance. - * The implementation class to load is the first found in the following - * locations: - * <ol> - * <li>the <code>javax.xml.parsers.SAXParserFactory</code> system - * property</li> - * <li>the above named property value in the - * <code><i>$JAVA_HOME</i>/lib/jaxp.properties</code> file</li> - * <li>the class name specified in the - * <code>META-INF/services/javax.xml.parsers.SAXParserFactory</code> - * system resource</li> - * <li>the default factory class</li> - * </ol> - */ - public static SAXParserFactory newInstance() - throws FactoryConfigurationError - { - ClassLoader loader = Thread.currentThread().getContextClassLoader(); - if (loader == null) - { - loader = SAXParserFactory.class.getClassLoader(); - } - String className = null; - int count = 0; - do - { - className = getFactoryClassName(loader, count++); - if (className != null) - { - try - { - Class<?> t = (loader != null) ? loader.loadClass(className) : - Class.forName(className); - return (SAXParserFactory) t.newInstance(); - } - catch (ClassNotFoundException e) - { - className = null; - } - catch (Exception e) - { - throw new FactoryConfigurationError(e, - "error instantiating class " + className); - } - } - } - while (className == null && count < 3); - return new gnu.xml.stream.SAXParserFactory(); - } - - private static String getFactoryClassName(ClassLoader loader, int attempt) - { - final String propertyName = "javax.xml.parsers.SAXParserFactory"; - switch (attempt) - { - case 0: - return System.getProperty(propertyName); - case 1: - try - { - File file = new File(System.getProperty("java.home")); - file = new File(file, "lib"); - file = new File(file, "jaxp.properties"); - InputStream in = new FileInputStream(file); - Properties props = new Properties(); - props.load(in); - in.close(); - return props.getProperty(propertyName); - } - catch (IOException e) - { - return null; - } - case 2: - try - { - String serviceKey = "/META-INF/services/" + propertyName; - InputStream in = (loader != null) ? - loader.getResourceAsStream(serviceKey) : - SAXParserFactory.class.getResourceAsStream(serviceKey); - if (in != null) - { - BufferedReader r = - new BufferedReader(new InputStreamReader(in)); - String ret = r.readLine(); - r.close(); - return ret; - } - } - catch (IOException e) - { - } - return null; - default: - return null; - } - } - - /** - * Creates a new parser instance using the currently specified factory - * configuration. - * @exception ParserConfigurationException if the specified configuration - * is not supported - */ - public abstract SAXParser newSAXParser() - throws ParserConfigurationException, SAXException; - - /** - * Sets whether parsers obtained from this factory will be XML Namespace - * aware. - */ - public void setNamespaceAware(boolean awareness) - { - namespaceAware = awareness; - } - - /** - * Sets whether parsers obtained from this factory will validate their - * input. - */ - public void setValidating(boolean validating) - { - this.validating = validating; - } - - /** - * Indicates whether parsers obtained from this factory will be XML - * Namespace aware. - */ - public boolean isNamespaceAware() - { - return namespaceAware; - } - - /** - * Indicates whether parsers obtained from this factory will validate - * their input. - */ - public boolean isValidating() - { - return validating; - } - - /** - * Sets the specified feature for SAX2 parsers obtained from this factory. - * @param name the feature name - * @param value the featurevalue - */ - public abstract void setFeature(String name, boolean value) - throws ParserConfigurationException, SAXNotRecognizedException, - SAXNotSupportedException; - - /** - * Returns the specified feature for SAX2 parsers obtained from this - * factory. - * @param name the feature name - */ - public abstract boolean getFeature(String name) - throws ParserConfigurationException, SAXNotRecognizedException, - SAXNotSupportedException; - - // -- JAXP 1.3 methods -- - - /** - * Returns the schema. - * @since 1.3 - * @see #setSchema - */ - public Schema getSchema() - { - return schema; - } - - /** - * Sets the schema. - * @since 1.3 - * @see #getSchema - */ - public void setSchema(Schema schema) - { - this.schema = schema; - } - - /** - * Indicates whether parsers obtained from this factory will be XInclude - * aware. - * @since 1.3 - */ - public boolean isXIncludeAware() - { - return xIncludeAware; - } - - /** - * Sets whether parsers obtained from this factory will be XInclude aware. - * @since 1.3 - */ - public void setXIncludeAware(boolean state) - { - xIncludeAware = state; - } - -} diff --git a/libjava/classpath/javax/xml/parsers/package.html b/libjava/classpath/javax/xml/parsers/package.html deleted file mode 100644 index 71739b9..0000000 --- a/libjava/classpath/javax/xml/parsers/package.html +++ /dev/null @@ -1,16 +0,0 @@ -<html><head>javax.xml.parsers</head><body> - -<p>Bootstrapping APIs for JAXP parsers. -This is the first portable API defined for bootstrapping DOM. - -<p>JAXP parsers bootstrap in two stages. -First is getting a factory, and configuring it. -Second is asking that factory for a parser. - -<p>The SAX bootstrapping support corresponds to functionality -found in the <em>org.xml.sax.helpers</em> package, except -that it uses the JAXP two stage bootstrap paradigm and -that the parser that's bootstrapped is normally wrapping -a SAX parser rather than exposing it for direct use. - -</body></html> |