diff options
author | Mark Wielaard <mark@gcc.gnu.org> | 2005-02-16 19:25:06 +0000 |
---|---|---|
committer | Mark Wielaard <mark@gcc.gnu.org> | 2005-02-16 19:25:06 +0000 |
commit | 7526f35528640700e63d664cdffbece6591131dd (patch) | |
tree | 9bf592edb5e5d97375046530a41197207b32f569 /libjava/gnu/xml | |
parent | 3bd09563e1a9d3175876c4964e251068a84da002 (diff) | |
download | gcc-7526f35528640700e63d664cdffbece6591131dd.zip gcc-7526f35528640700e63d664cdffbece6591131dd.tar.gz gcc-7526f35528640700e63d664cdffbece6591131dd.tar.bz2 |
[multiple changes]
2005-02-16 Mark Wielaard <mark@klomp.org>
* Makefile.am (gnu_xml_source_files): Removed
gnu/xml/dom/DomCDATA.java, gnu/xml/dom/DomEx.java,
gnu/xml/dom/DomFragment.java, gnu/xml/dom/DomPI.java and
gnu/xml/dom/ls/DomLSEx.java. Replaced by adding
gnu/xml/dom/DomCDATASection.java, gnu/xml/dom/DomDOMException.java,
gnu/xml/dom/DomDocumentFragment.java,
gnu/xml/dom/DomProcessingInstruction.java and
gnu/xml/dom/ls/DomLSException.java.
* Makefile.in: Regenerated.
2005-02-16 Tom Tromey <tromey@redhat.com>
* gnu/xml/aelfred2/SAXDriver.java: Ensure that null is returned when
attribute index is out of bounds.
2005-02-16 Chris Burdess <dog@gnu.org>
* gnu/xml/aelfred2/SAXDriver.java: Corrected implementation of
isDeclared methods. Improved performance of isSpecified methods.
2005-02-16 Chris Burdess <dog@gnu.org>
Fixes bug libgcj/19864
* gnu/xml/dom/DomAttr.java,
gnu/xml/dom/DomCDATA.java,
gnu/xml/dom/DomCDATASection.java,
gnu/xml/dom/DomCharacterData.java,
gnu/xml/dom/DomDOMException.java,
gnu/xml/dom/DomDoctype.java,
gnu/xml/dom/DomDocument.java,
gnu/xml/dom/DomDocumentConfiguration.java,
gnu/xml/dom/DomDocumentFragment.java,
gnu/xml/dom/DomElement.java,
gnu/xml/dom/DomEx.java,
gnu/xml/dom/DomFragment.java,
gnu/xml/dom/DomImpl.java,
gnu/xml/dom/DomIterator.java,
gnu/xml/dom/DomNamedNodeMap.java,
gnu/xml/dom/DomNode.java,
gnu/xml/dom/DomNsNode.java,
gnu/xml/dom/DomPI.java,
gnu/xml/dom/DomProcessingInstruction.java,
gnu/xml/dom/DomText.java,
gnu/xml/dom/DomLSEx.java,
gnu/xml/dom/DomLSException.java,
gnu/xml/dom/DomLSParser.java,
gnu/xml/dom/DomLSSerializer.java: Refactoring of exception and DOM
implementation class names to conform to Classpath guidelines. Make
DomLSException use JDK 1.4+ exception chaining.
* gnu/xml/util/SAXNullTransformerFactory.java,
gnu/xml/xpath/Predicate.java: Use constants relative to
declaring class or interface.
From-SVN: r95114
Diffstat (limited to 'libjava/gnu/xml')
22 files changed, 292 insertions, 253 deletions
diff --git a/libjava/gnu/xml/aelfred2/SAXDriver.java b/libjava/gnu/xml/aelfred2/SAXDriver.java index 4912f27..0e7b3c7 100644 --- a/libjava/gnu/xml/aelfred2/SAXDriver.java +++ b/libjava/gnu/xml/aelfred2/SAXDriver.java @@ -150,10 +150,7 @@ final public class SAXDriver private Stack entityStack; // one vector (of object/struct): faster, smaller - private List attributesList = Collections.synchronizedList(new ArrayList()); - - private boolean attributeSpecified [] = new boolean[10]; - private boolean attributeDeclared [] = new boolean[10]; + private List attributesList; private boolean namespaces = true; private boolean xmlNames = false; @@ -183,8 +180,6 @@ final public class SAXDriver elementName = null; entityStack = new Stack (); attributesList = Collections.synchronizedList(new ArrayList()); - attributeSpecified = new boolean[10]; - attributeDeclared = new boolean[10]; attributeCount = 0; attributes = false; nsTemp = new String[3]; @@ -849,17 +844,10 @@ final public class SAXDriver } // remember this attribute ... - if (attributeCount == attributeSpecified.length) { // grow array? - boolean temp [] = new boolean [attributeSpecified.length + 5]; - System.arraycopy (attributeSpecified, 0, temp, 0, attributeCount); - attributeSpecified = temp; - } - attributeSpecified [attributeCount] = isSpecified; - attributeCount++; // attribute type comes from querying parser's DTD records - attributesList.add(new Attribute(qname, value)); + attributesList.add(new Attribute(qname, value, isSpecified)); } @@ -1043,7 +1031,7 @@ final public class SAXDriver */ public int getLength () { - return attributesList.size (); + return attributesList.size(); } /** @@ -1051,7 +1039,11 @@ final public class SAXDriver */ public String getURI (int index) { - return ((Attribute) attributesList.get (index)).nameSpace; + if (index < 0 || index >= attributesList.size()) + { + return null; + } + return ((Attribute) attributesList.get(index)).nameSpace; } /** @@ -1059,7 +1051,11 @@ final public class SAXDriver */ public String getLocalName (int index) { - Attribute attr = (Attribute) attributesList.get (index); + if (index < 0 || index >= attributesList.size()) + { + return null; + } + Attribute attr = (Attribute) attributesList.get(index); // FIXME attr.localName is sometimes null, why? if (namespaces && attr.localName == null) { @@ -1068,38 +1064,51 @@ final public class SAXDriver attr.localName = (ci == -1) ? attr.name : attr.name.substring(ci + 1); } - return attr.localName; + return (attr.localName == null) ? "" : attr.localName; } /** * <b>SAX2 Attributes</b> method (don't invoke on parser); */ - public String getQName (int i) + public String getQName (int index) { - return ((Attribute) attributesList.get (i)).name; + if (index < 0 || index >= attributesList.size()) + { + return null; + } + Attribute attr = (Attribute) attributesList.get(index); + return (attr.name == null) ? "" : attr.name; } /** * <b>SAX1 AttributeList</b> method (don't invoke on parser); */ - public String getName (int i) + public String getName (int index) { - return ((Attribute) attributesList.get (i)).name; + return getQName(index); } /** * <b>SAX1 AttributeList, SAX2 Attributes</b> method * (don't invoke on parser); */ - public String getType (int i) + public String getType (int index) { - String type = parser.getAttributeType (elementName, getQName (i)); + if (index < 0 || index >= attributesList.size()) + { + return null; + } + String type = parser.getAttributeType(elementName, getQName(index)); if (type == null) + { return "CDATA"; + } // ... use DeclHandler.attributeDecl to see enumerations - if (type == "ENUMERATION") - return "NMTOKEN"; - return type; + if (type == "ENUMERATION") + { + return "NMTOKEN"; + } + return type; } @@ -1107,9 +1116,13 @@ final public class SAXDriver * <b>SAX1 AttributeList, SAX2 Attributes</b> method * (don't invoke on parser); */ - public String getValue (int i) + public String getValue (int index) { - return ((Attribute) attributesList.get (i)).value; + if (index < 0 || index >= attributesList.size()) + { + return null; + } + return ((Attribute) attributesList.get(index)).value; } @@ -1118,14 +1131,19 @@ final public class SAXDriver */ public int getIndex (String uri, String local) { - int length = getLength (); + int length = getLength(); - for (int i = 0; i < length; i++) { - if (!getURI (i).equals (uri)) + for (int i = 0; i < length; i++) + { + if (!getURI(i).equals(uri)) + { continue; - if (getLocalName (i).equals (local)) + } + if (getLocalName(i).equals(local)) + { return i; - } + } + } return -1; } @@ -1135,12 +1153,15 @@ final public class SAXDriver */ public int getIndex (String xmlName) { - int length = getLength (); + int length = getLength(); - for (int i = 0; i < length; i++) { - if (getQName (i).equals (xmlName)) + for (int i = 0; i < length; i++) + { + if (getQName(i).equals(xmlName)) + { return i; - } + } + } return -1; } @@ -1150,11 +1171,13 @@ final public class SAXDriver */ public String getType (String uri, String local) { - int index = getIndex (uri, local); + int index = getIndex(uri, local); if (index < 0) + { return null; - return getType (index); + } + return getType(index); } @@ -1164,11 +1187,13 @@ final public class SAXDriver */ public String getType (String xmlName) { - int index = getIndex (xmlName); + int index = getIndex(xmlName); if (index < 0) + { return null; - return getType (index); + } + return getType(index); } @@ -1177,11 +1202,13 @@ final public class SAXDriver */ public String getValue (String uri, String local) { - int index = getIndex (uri, local); + int index = getIndex(uri, local); if (index < 0) + { return null; - return getValue (index); + } + return getValue(index); } @@ -1191,11 +1218,13 @@ final public class SAXDriver */ public String getValue (String xmlName) { - int index = getIndex (xmlName); + int index = getIndex(xmlName); if (index < 0) + { return null; - return getValue (index); + } + return getValue(index); } @@ -1212,31 +1241,31 @@ final public class SAXDriver { if (index < 0 || index >= attributeCount) throw new ArrayIndexOutOfBoundsException (); - return attributeDeclared [index]; + String type = parser.getAttributeType(elementName, getQName(index)); + return (type != null); } /** @return false unless the attribute was declared in the DTD. * @throws java.lang.IllegalArgumentException * When the supplied names do not identify an attribute. */ - public boolean isDeclared (java.lang.String qName) + public boolean isDeclared (String qName) { int index = getIndex (qName); if (index < 0) throw new IllegalArgumentException (); - return attributeDeclared [index]; + String type = parser.getAttributeType(elementName, qName); + return (type != null); } /** @return false unless the attribute was declared in the DTD. * @throws java.lang.IllegalArgumentException * When the supplied names do not identify an attribute. */ - public boolean isDeclared (java.lang.String uri, java.lang.String localName) + public boolean isDeclared (String uri, String localName) { int index = getIndex (uri, localName); - if (index < 0) - throw new IllegalArgumentException (); - return attributeDeclared [index]; + return isDeclared(index); } @@ -1245,9 +1274,7 @@ final public class SAXDriver */ public boolean isSpecified (int index) { - if (index < 0 || index >= attributeCount) - throw new ArrayIndexOutOfBoundsException (); - return attributeSpecified [index]; + return ((Attribute) attributesList.get(index)).specified; } /** @@ -1256,10 +1283,7 @@ final public class SAXDriver public boolean isSpecified (String uri, String local) { int index = getIndex (uri, local); - - if (index < 0) - throw new IllegalArgumentException (); - return attributeSpecified [index]; + return isSpecified(index); } /** @@ -1268,10 +1292,7 @@ final public class SAXDriver public boolean isSpecified (String xmlName) { int index = getIndex (xmlName); - - if (index < 0) - throw new IllegalArgumentException (); - return attributeSpecified [index]; + return isSpecified(index); } @@ -1374,12 +1395,14 @@ class Attribute String value; String nameSpace; String localName; + boolean specified; - Attribute(String name, String value) + Attribute(String name, String value, boolean specified) { this.name = name; this.value = value; this.nameSpace = ""; + this.specified = specified; } } diff --git a/libjava/gnu/xml/dom/DomAttr.java b/libjava/gnu/xml/dom/DomAttr.java index 2890430..555902e 100644 --- a/libjava/gnu/xml/dom/DomAttr.java +++ b/libjava/gnu/xml/dom/DomAttr.java @@ -38,6 +38,7 @@ exception statement from your version. */ package gnu.xml.dom; import org.w3c.dom.Attr; +import org.w3c.dom.DOMException; import org.w3c.dom.Element; import org.w3c.dom.Node; import org.w3c.dom.TypeInfo; @@ -194,7 +195,7 @@ public class DomAttr { if (readonly) { - throw new DomEx(DomEx.NO_MODIFICATION_ALLOWED_ERR); + throw new DomDOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR); } if (value == null) { @@ -284,11 +285,11 @@ public class DomAttr { if (parent != null) { - throw new DomEx (DomEx.HIERARCHY_REQUEST_ERR); + throw new DomDOMException(DOMException.HIERARCHY_REQUEST_ERR); } if (!(e instanceof DomElement)) { - throw new DomEx(DomEx.WRONG_DOCUMENT_ERR); + throw new DomDOMException(DOMException.WRONG_DOCUMENT_ERR); } parent = (DomElement) e; depth = parent.depth + 1; diff --git a/libjava/gnu/xml/dom/DomCDATA.java b/libjava/gnu/xml/dom/DomCDATASection.java index f6f471c6..4b4dcb5 100644 --- a/libjava/gnu/xml/dom/DomCDATA.java +++ b/libjava/gnu/xml/dom/DomCDATASection.java @@ -1,4 +1,4 @@ -/* DomCDATA.java -- +/* DomCDATASection.java -- Copyright (C) 1999,2000,2001,2004 Free Software Foundation, Inc. This file is part of GNU Classpath. @@ -54,7 +54,7 @@ import org.w3c.dom.CDATASection; * @author David Brownell * @author <a href='mailto:dog@gnu.org'>Chris Burdess</a> */ -public class DomCDATA +public class DomCDATASection extends DomText implements CDATASection { @@ -68,12 +68,12 @@ public class DomCDATA * similarly used in a "Sub-DOM" style layer. * */ - protected DomCDATA(DomDocument owner, String value) + protected DomCDATASection(DomDocument owner, String value) { super(CDATA_SECTION_NODE, owner, value); } - protected DomCDATA(DomDocument owner, char buf [], int off, int len) + protected DomCDATASection(DomDocument owner, char buf [], int off, int len) { super(CDATA_SECTION_NODE, owner, buf, off, len); } @@ -84,7 +84,7 @@ public class DomCDATA */ final public String getNodeName() { - return "#cdata-section"; + return "#cdata-section"; } } diff --git a/libjava/gnu/xml/dom/DomCharacterData.java b/libjava/gnu/xml/dom/DomCharacterData.java index 48ccb82..fc4313e 100644 --- a/libjava/gnu/xml/dom/DomCharacterData.java +++ b/libjava/gnu/xml/dom/DomCharacterData.java @@ -38,6 +38,7 @@ exception statement from your version. */ package gnu.xml.dom; import org.w3c.dom.CharacterData; +import org.w3c.dom.DOMException; import org.w3c.dom.Node; import org.w3c.dom.NodeList; import org.w3c.dom.events.MutationEvent; @@ -82,7 +83,7 @@ public abstract class DomCharacterData { if (isReadonly()) { - throw new DomEx(DomEx.NO_MODIFICATION_ALLOWED_ERR); + throw new DomDOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR); } String value = text + arg; mutating(value); @@ -98,12 +99,12 @@ public abstract class DomCharacterData { if (isReadonly()) { - throw new DomEx(DomEx.NO_MODIFICATION_ALLOWED_ERR); + throw new DomDOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR); } char[] raw = text.toCharArray(); if (offset < 0 || count < 0 || offset > raw.length) { - throw new DomEx(DomEx.INDEX_SIZE_ERR); + throw new DomDOMException(DOMException.INDEX_SIZE_ERR); } if ((offset + count) > raw.length) { @@ -125,7 +126,7 @@ public abstract class DomCharacterData } catch (IndexOutOfBoundsException x) { - throw new DomEx(DomEx.INDEX_SIZE_ERR); + throw new DomDOMException(DOMException.INDEX_SIZE_ERR); } } @@ -164,7 +165,7 @@ public abstract class DomCharacterData { if (isReadonly()) { - throw new DomEx(DomEx.NO_MODIFICATION_ALLOWED_ERR); + throw new DomDOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR); } char[] raw = text.toCharArray(); char[] tmp = arg.toCharArray (); @@ -182,7 +183,7 @@ public abstract class DomCharacterData } catch (IndexOutOfBoundsException x) { - throw new DomEx(DomEx.INDEX_SIZE_ERR); + throw new DomDOMException(DOMException.INDEX_SIZE_ERR); } } @@ -195,14 +196,14 @@ public abstract class DomCharacterData { if (readonly) { - throw new DomEx(DomEx.NO_MODIFICATION_ALLOWED_ERR); + throw new DomDOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR); } char[] raw = text.toCharArray(); // deleteData if (offset < 0 || count < 0 || offset > raw.length) { - throw new DomEx(DomEx.INDEX_SIZE_ERR); + throw new DomDOMException(DOMException.INDEX_SIZE_ERR); } if ((offset + count) > raw.length) { @@ -228,7 +229,7 @@ public abstract class DomCharacterData } catch (IndexOutOfBoundsException x) { - throw new DomEx(DomEx.INDEX_SIZE_ERR); + throw new DomDOMException(DOMException.INDEX_SIZE_ERR); } } @@ -241,7 +242,7 @@ public abstract class DomCharacterData { if (isReadonly()) { - throw new DomEx (DomEx.NO_MODIFICATION_ALLOWED_ERR); + throw new DomDOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR); } if (value == null) { @@ -276,7 +277,7 @@ public abstract class DomCharacterData { return text.substring(offset); } - throw new DomEx(DomEx.INDEX_SIZE_ERR); + throw new DomDOMException(DOMException.INDEX_SIZE_ERR); } } diff --git a/libjava/gnu/xml/dom/DomEx.java b/libjava/gnu/xml/dom/DomDOMException.java index aacac96..a56814cf 100644 --- a/libjava/gnu/xml/dom/DomEx.java +++ b/libjava/gnu/xml/dom/DomDOMException.java @@ -1,4 +1,4 @@ -/* DomEx.java -- +/* DomDOMException.java -- Copyright (C) 1999,2000,2001,2004 Free Software Foundation, Inc. This file is part of GNU Classpath. @@ -50,7 +50,7 @@ import org.w3c.dom.Node; * * @author David Brownell */ -public class DomEx +public class DomDOMException extends DOMException { @@ -67,7 +67,7 @@ public class DomEx * Constructs an exception, with the diagnostic message * corresponding to the specified code. */ - public DomEx(short code) + public DomDOMException(short code) { super(code, diagnostic(code)); } @@ -77,7 +77,7 @@ public class DomEx * corresponding to the specified code and additional * information as provided. */ - public DomEx(short code, String data, Node node, int value) + public DomDOMException(short code, String data, Node node, int value) { super(code, diagnostic(code)); this.data = data; diff --git a/libjava/gnu/xml/dom/DomDoctype.java b/libjava/gnu/xml/dom/DomDoctype.java index 35fb613..8c760a5 100644 --- a/libjava/gnu/xml/dom/DomDoctype.java +++ b/libjava/gnu/xml/dom/DomDoctype.java @@ -39,6 +39,7 @@ package gnu.xml.dom; import java.util.HashMap; import org.w3c.dom.DocumentType; +import org.w3c.dom.DOMException; import org.w3c.dom.DOMImplementation; import org.w3c.dom.Entity; import org.w3c.dom.NamedNodeMap; @@ -194,7 +195,7 @@ public class DomDoctype } if (isReadonly()) { - throw new DomEx(DomEx.NO_MODIFICATION_ALLOWED_ERR); + throw new DomDOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR); } getEntities(); @@ -250,7 +251,7 @@ public class DomDoctype if (isReadonly()) { - throw new DomEx(DomEx.NO_MODIFICATION_ALLOWED_ERR); + throw new DomDOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR); } getNotations(); diff --git a/libjava/gnu/xml/dom/DomDocument.java b/libjava/gnu/xml/dom/DomDocument.java index 10693ae..9088571 100644 --- a/libjava/gnu/xml/dom/DomDocument.java +++ b/libjava/gnu/xml/dom/DomDocument.java @@ -292,16 +292,16 @@ public class DomDocument if (newChild.getNodeType() == ELEMENT_NODE && getDocumentElement() != null) { - throw new DomEx (DomEx.HIERARCHY_REQUEST_ERR, - "document element already present: " + - getDocumentElement(), newChild, 0); + throw new DomDOMException(DOMException.HIERARCHY_REQUEST_ERR, + "document element already present: " + + getDocumentElement(), newChild, 0); } if (newChild.getNodeType() == DOCUMENT_TYPE_NODE && getDoctype() != null) { - throw new DomEx (DomEx.HIERARCHY_REQUEST_ERR, - "document type already present: " + - getDoctype(), newChild, 0); + throw new DomDOMException(DOMException.HIERARCHY_REQUEST_ERR, + "document type already present: " + + getDoctype(), newChild, 0); } } @@ -376,12 +376,12 @@ public class DomDocument { if (name == null) { - throw new DomEx (DomEx.NAMESPACE_ERR, name, null, 0); + throw new DomDOMException(DOMException.NAMESPACE_ERR, name, null, 0); } int len = name.length(); if (len == 0) { - throw new DomEx (DomEx.NAMESPACE_ERR, name, null, 0); + throw new DomDOMException(DOMException.NAMESPACE_ERR, name, null, 0); } // dog: rewritten to use the rules for XML 1.0 and 1.1 @@ -407,7 +407,8 @@ public class DomDocument (c < 0xfdf0 || c > 0xfffd) && (c < 0x10000 || c > 0xeffff)) { - throw new DomEx(DomEx.INVALID_CHARACTER_ERR, name, null, c); + throw new DomDOMException(DOMException.INVALID_CHARACTER_ERR, + name, null, c); } } else @@ -425,14 +426,16 @@ public class DomDocument (c >= 0x20dd && c <= 0x20e0)) { // Compatibility area and Unicode 2.0 exclusions - throw new DomEx(DomEx.INVALID_CHARACTER_ERR, name, null, c); + throw new DomDOMException(DOMException.INVALID_CHARACTER_ERR, + name, null, c); } break; default: if (c != ':' && c != '_' && (c < 0x02bb || c > 0x02c1) && c != 0x0559 && c != 0x06e5 && c != 0x06e6) { - throw new DomEx(DomEx.INVALID_CHARACTER_ERR, name, null, c); + throw new DomDOMException(DOMException.INVALID_CHARACTER_ERR, + name, null, c); } } } @@ -464,7 +467,8 @@ public class DomDocument (c < 0x0300 || c > 0x036f) && (c < 0x203f || c > 0x2040)) { - throw new DomEx(DomEx.INVALID_CHARACTER_ERR, name, null, c); + throw new DomDOMException(DOMException.INVALID_CHARACTER_ERR, name, + null, c); } } else @@ -487,7 +491,8 @@ public class DomDocument (c >= 0x20dd && c <= 0x20e0)) { // Compatibility area and Unicode 2.0 exclusions - throw new DomEx(DomEx.INVALID_CHARACTER_ERR, name, null, c); + throw new DomDOMException(DOMException.INVALID_CHARACTER_ERR, + name, null, c); } break; default: @@ -495,7 +500,8 @@ public class DomDocument c != 0x0387 && (c < 0x02bb || c > 0x02c1) && c != 0x0559 && c != 0x06e5 && c != 0x06e6 && c != 0x00b7) { - throw new DomEx(DomEx.INVALID_CHARACTER_ERR, name, null, c); + throw new DomDOMException(DOMException.INVALID_CHARACTER_ERR, + name, null, c); } } } @@ -517,7 +523,8 @@ public class DomDocument if (index == 0 || index == (len - 1) || name.lastIndexOf(':') != index) { - throw new DomEx(DomEx.NAMESPACE_ERR, name, null, 0); + throw new DomDOMException(DOMException.NAMESPACE_ERR, + name, null, 0); } } } @@ -552,8 +559,8 @@ public class DomDocument continue; } } - throw new DomEx(DomEx.INVALID_CHARACTER_ERR, - new String(buf, off, len), null, c); + throw new DomDOMException(DOMException.INVALID_CHARACTER_ERR, + new String(buf, off, len), null, c); } } @@ -602,22 +609,23 @@ public class DomDocument if (namespaceURI != null && !XMLConstants.XML_NS_URI.equals(namespaceURI)) { - throw new DomEx(DomEx.NAMESPACE_ERR, - "xml namespace is always " + - XMLConstants.XML_NS_URI, this, 0); + throw new DomDOMException(DOMException.NAMESPACE_ERR, + "xml namespace is always " + + XMLConstants.XML_NS_URI, this, 0); } namespaceURI = XMLConstants.XML_NS_URI; } else if (XMLConstants.XMLNS_ATTRIBUTE.equals(name) || name.startsWith("xmlns:")) { - throw new DomEx(DomEx.NAMESPACE_ERR, - "xmlns is reserved", this, 0); + throw new DomDOMException(DOMException.NAMESPACE_ERR, + "xmlns is reserved", this, 0); } else if (namespaceURI == null && name.indexOf(':') != -1) { - throw new DomEx(DomEx.NAMESPACE_ERR, - "prefixed name '" + name + "' needs a URI", this, 0); + throw new DomDOMException(DOMException.NAMESPACE_ERR, + "prefixed name '" + name + + "' needs a URI", this, 0); } Element element = new DomElement(this, namespaceURI, name); @@ -660,7 +668,7 @@ public class DomDocument */ public DocumentFragment createDocumentFragment() { - return new DomFragment(this); + return new DomDocumentFragment(this); } /** @@ -711,7 +719,7 @@ public class DomDocument { checkChar(value, "1.1".equals(version)); } - return new DomCDATA(this, value); + return new DomCDATASection(this, value); } /** @@ -723,7 +731,7 @@ public class DomDocument { checkChar(buf, off, len, "1.1".equals(version)); } - return new DomCDATA(this, buf, off, len); + return new DomCDATASection(this, buf, off, len); } /** @@ -739,12 +747,13 @@ public class DomDocument checkName(target, xml11); if ("xml".equalsIgnoreCase(target)) { - throw new DomEx(DomEx.SYNTAX_ERR, - "illegal PI target name", this, 0); + throw new DomDOMException(DOMException.SYNTAX_ERR, + "illegal PI target name", + this, 0); } checkChar(data, xml11); } - return new DomPI(this, target, data); + return new DomProcessingInstruction(this, target, data); } /** @@ -796,9 +805,10 @@ public class DomDocument } else if (!XMLConstants.XML_NS_URI.equals(namespaceURI)) { - throw new DomEx(DomEx.NAMESPACE_ERR, - "xml namespace is always " + - XMLConstants.XML_NS_URI, this, 0); + throw new DomDOMException(DOMException.NAMESPACE_ERR, + "xml namespace is always " + + XMLConstants.XML_NS_URI, + this, 0); } } else if (XMLConstants.XMLNS_ATTRIBUTE.equals(name) || @@ -810,14 +820,15 @@ public class DomDocument } else if (!XMLConstants.XMLNS_ATTRIBUTE_NS_URI.equals(namespaceURI)) { - throw new DomEx(DomEx.NAMESPACE_ERR, - "xmlns namespace must be " + - XMLConstants.XMLNS_ATTRIBUTE_NS_URI, this, 0); + throw new DomDOMException(DOMException.NAMESPACE_ERR, + "xmlns namespace must be " + + XMLConstants.XMLNS_ATTRIBUTE_NS_URI, + this, 0); } } else if (namespaceURI == null && name.indexOf(':') != -1) { - throw new DomEx(DomEx.NAMESPACE_ERR, + throw new DomDOMException(DOMException.NAMESPACE_ERR, "prefixed name needs a URI: " + name, this, 0); } return new DomAttr(this, namespaceURI, name); @@ -913,7 +924,7 @@ public class DomDocument dst = createEntityReference(src.getNodeName()); break; case DOCUMENT_FRAGMENT_NODE: - dst = new DomFragment(this); + dst = new DomDocumentFragment(this); if (deep) { for (Node ctx = src.getFirstChild(); ctx != null; @@ -988,7 +999,7 @@ public class DomDocument // FALLTHROUGH // can't import unrecognized or nonstandard nodes default: - throw new DomEx(DomEx.NOT_SUPPORTED_ERR, null, src, 0); + throw new DomDOMException(DOMException.NOT_SUPPORTED_ERR, null, src, 0); } // FIXME cleanup a bit -- for deep copies, copy those @@ -1083,7 +1094,7 @@ public class DomDocument } else { - throw new DomEx(DomEx.NOT_SUPPORTED_ERR); + throw new DomDOMException(DOMException.NOT_SUPPORTED_ERR); } } @@ -1149,10 +1160,10 @@ public class DomDocument { case DOCUMENT_NODE: case DOCUMENT_TYPE_NODE: - throw new DomEx(DomEx.NOT_SUPPORTED_ERR); + throw new DomDOMException(DOMException.NOT_SUPPORTED_ERR); case ENTITY_NODE: case NOTATION_NODE: - throw new DomEx(DomEx.NO_MODIFICATION_ALLOWED_ERR); + throw new DomDOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR); } if (source instanceof DomNode) { @@ -1284,11 +1295,12 @@ public class DomDocument DomNsNode src = (DomNsNode) n; if (src == null) { - throw new DomEx(DomEx.NOT_FOUND_ERR); + throw new DomDOMException(DOMException.NOT_FOUND_ERR); } if (src.owner != this) { - throw new DomEx(DomEx.WRONG_DOCUMENT_ERR, null, src, 0); + throw new DomDOMException(DOMException.WRONG_DOCUMENT_ERR, + null, src, 0); } boolean xml11 = "1.1".equals(version); checkName(qualifiedName, xml11); @@ -1305,7 +1317,7 @@ public class DomDocument if (XMLConstants.XML_NS_PREFIX.equals(prefix) && !XMLConstants.XML_NS_URI.equals(namespaceURI)) { - throw new DomEx(DomEx.NAMESPACE_ERR, + throw new DomDOMException(DOMException.NAMESPACE_ERR, "xml namespace must be " + XMLConstants.XML_NS_URI, src, 0); } @@ -1314,14 +1326,14 @@ public class DomDocument XMLConstants.XMLNS_ATTRIBUTE.equals(qualifiedName)) && !XMLConstants.XMLNS_ATTRIBUTE_NS_URI.equals(namespaceURI)) { - throw new DomEx(DomEx.NAMESPACE_ERR, + throw new DomDOMException(DOMException.NAMESPACE_ERR, "xmlns namespace must be " + XMLConstants.XMLNS_ATTRIBUTE_NS_URI, src, 0); } if (XMLConstants.XML_NS_URI.equals(namespaceURI) && !XMLConstants.XML_NS_PREFIX.equals(prefix)) { - throw new DomEx(DomEx.NAMESPACE_ERR, + throw new DomDOMException(DOMException.NAMESPACE_ERR, "xml namespace must be " + XMLConstants.XML_NS_URI, src, 0); } @@ -1330,7 +1342,7 @@ public class DomDocument !(XMLConstants.XMLNS_ATTRIBUTE.equals(prefix) || XMLConstants.XMLNS_ATTRIBUTE.equals(qualifiedName))) { - throw new DomEx(DomEx.NAMESPACE_ERR, + throw new DomDOMException(DOMException.NAMESPACE_ERR, "xmlns namespace must be " + XMLConstants.XMLNS_ATTRIBUTE_NS_URI, src, 0); } @@ -1343,7 +1355,7 @@ public class DomDocument // DOMElementNameChanged or DOMAttributeNameChanged return src; } - throw new DomEx(DomEx.NOT_SUPPORTED_ERR, null, n, 0); + throw new DomDOMException(DOMException.NOT_SUPPORTED_ERR, null, n, 0); } // -- XPathEvaluator -- diff --git a/libjava/gnu/xml/dom/DomDocumentConfiguration.java b/libjava/gnu/xml/dom/DomDocumentConfiguration.java index eebee09..38d6e6d 100644 --- a/libjava/gnu/xml/dom/DomDocumentConfiguration.java +++ b/libjava/gnu/xml/dom/DomDocumentConfiguration.java @@ -99,8 +99,8 @@ class DomDocumentConfiguration } catch (ClassCastException e) { - throw new DomEx(DomEx.TYPE_MISMATCH_ERR, - value.getClass().getName(), null, 0); + throw new DomDOMException(DOMException.TYPE_MISMATCH_ERR, + value.getClass().getName(), null, 0); } } else if ("namespace-declarations".equals(name)) @@ -140,7 +140,8 @@ class DomDocumentConfiguration } else { - throw new DomEx(DomEx.NOT_SUPPORTED_ERR, name, null, 0); + throw new DomDOMException(DOMException.NOT_SUPPORTED_ERR, + name, null, 0); } } @@ -197,7 +198,7 @@ class DomDocumentConfiguration namespaceDeclarations == true && comments == true) ? Boolean.TRUE : Boolean.FALSE; } - throw new DomEx(DomEx.NOT_SUPPORTED_ERR, name, null, 0); + throw new DomDOMException(DOMException.NOT_SUPPORTED_ERR, name, null, 0); } public boolean canSetParameter(String name, Object value) diff --git a/libjava/gnu/xml/dom/DomFragment.java b/libjava/gnu/xml/dom/DomDocumentFragment.java index 44763a9..f54b2a7 100644 --- a/libjava/gnu/xml/dom/DomFragment.java +++ b/libjava/gnu/xml/dom/DomDocumentFragment.java @@ -1,4 +1,4 @@ -/* DomFragment.java -- +/* DomDocumentFragment.java -- Copyright (C) 1999,2000,2001,2004 Free Software Foundation, Inc. This file is part of GNU Classpath. @@ -45,7 +45,7 @@ import org.w3c.dom.DocumentFragment; * @author David Brownell * @author <a href='mailto:dog@gnu.org'>Chris Burdess</a> */ -public class DomFragment +public class DomDocumentFragment extends DomNode implements DocumentFragment { @@ -58,7 +58,7 @@ public class DomFragment * its createDocumentFragment functionality, or through a subclass which * is similarly used in a "Sub-DOM" style layer. */ - protected DomFragment(DomDocument owner) + protected DomDocumentFragment(DomDocument owner) { super(DOCUMENT_FRAGMENT_NODE, owner); } diff --git a/libjava/gnu/xml/dom/DomElement.java b/libjava/gnu/xml/dom/DomElement.java index fb04638..5356083 100644 --- a/libjava/gnu/xml/dom/DomElement.java +++ b/libjava/gnu/xml/dom/DomElement.java @@ -42,6 +42,7 @@ import java.util.Set; import javax.xml.XMLConstants; import org.w3c.dom.Attr; +import org.w3c.dom.DOMException; import org.w3c.dom.Element; import org.w3c.dom.NamedNodeMap; import org.w3c.dom.Node; @@ -262,7 +263,7 @@ public class DomElement if (("xmlns".equals (aname) || aname.startsWith ("xmlns:")) && !XMLConstants.XMLNS_ATTRIBUTE_NS_URI.equals (uri)) { - throw new DomEx(DomEx.NAMESPACE_ERR, + throw new DomDOMException(DOMException.NAMESPACE_ERR, "setting xmlns attribute to illegal value", this, 0); } @@ -318,9 +319,9 @@ public class DomElement { attributes.removeNamedItem(name); } - catch (DomEx e) + catch (DomDOMException e) { - if (e.code != DomEx.NOT_FOUND_ERR) + if (e.code != DOMException.NOT_FOUND_ERR) { throw e; } @@ -340,7 +341,7 @@ public class DomElement { if (attributes == null) { - throw new DomEx(DomEx.NOT_FOUND_ERR, null, node, 0); + throw new DomDOMException(DOMException.NOT_FOUND_ERR, null, node, 0); } return (Attr) attributes.removeNamedItem(node.getNodeName()); } @@ -358,7 +359,7 @@ public class DomElement { if (attributes == null) { - throw new DomEx(DomEx.NOT_FOUND_ERR, localPart, null, 0); + throw new DomDOMException(DOMException.NOT_FOUND_ERR, localPart, null, 0); } attributes.removeNamedItemNS (namespace, localPart); } @@ -487,11 +488,11 @@ public class DomElement { if (readonly) { - throw new DomEx(DomEx.NO_MODIFICATION_ALLOWED_ERR); + throw new DomDOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR); } if (attr == null || attr.getOwnerElement() != this) { - throw new DomEx(DomEx.NOT_FOUND_ERR); + throw new DomDOMException(DOMException.NOT_FOUND_ERR); } if (isId) { diff --git a/libjava/gnu/xml/dom/DomImpl.java b/libjava/gnu/xml/dom/DomImpl.java index 1a16de3..feb7ea7 100644 --- a/libjava/gnu/xml/dom/DomImpl.java +++ b/libjava/gnu/xml/dom/DomImpl.java @@ -207,7 +207,8 @@ public class DomImpl root = doc.createElementNS(namespaceURI, rootName); if (rootName.startsWith("xmlns:")) { - throw new DomEx(DomEx.NAMESPACE_ERR, "xmlns is reserved", null, 0); + throw new DomDOMException(DOMException.NAMESPACE_ERR, + "xmlns is reserved", null, 0); } } // Bleech -- L2 seemingly _requires_ omission of xmlns attributes. diff --git a/libjava/gnu/xml/dom/DomIterator.java b/libjava/gnu/xml/dom/DomIterator.java index 3dfd964..fb05d93 100644 --- a/libjava/gnu/xml/dom/DomIterator.java +++ b/libjava/gnu/xml/dom/DomIterator.java @@ -39,6 +39,7 @@ package gnu.xml.dom; import java.util.Vector; +import org.w3c.dom.DOMException; import org.w3c.dom.Node; import org.w3c.dom.events.Event; import org.w3c.dom.events.EventListener; @@ -76,7 +77,7 @@ public final class DomIterator { if (!root.isSupported("MutationEvents", "2.0")) { - throw new DomEx(DomEx.NOT_SUPPORTED_ERR, + throw new DomDOMException(DOMException.NOT_SUPPORTED_ERR, "Iterator needs mutation events", root, 0); } @@ -154,7 +155,7 @@ public final class DomIterator { if (done) { - throw new DomEx(DomEx.INVALID_STATE_ERR); + throw new DomDOMException(DOMException.INVALID_STATE_ERR); } right = true; return walk(true); @@ -171,7 +172,7 @@ public final class DomIterator { if (done) { - throw new DomEx(DomEx.INVALID_STATE_ERR); + throw new DomDOMException(DOMException.INVALID_STATE_ERR); } Node previous = reference; right = false; diff --git a/libjava/gnu/xml/dom/DomNamedNodeMap.java b/libjava/gnu/xml/dom/DomNamedNodeMap.java index af75942..2b1106e 100644 --- a/libjava/gnu/xml/dom/DomNamedNodeMap.java +++ b/libjava/gnu/xml/dom/DomNamedNodeMap.java @@ -37,6 +37,7 @@ exception statement from your version. */ package gnu.xml.dom; +import org.w3c.dom.DOMException; import org.w3c.dom.NamedNodeMap; import org.w3c.dom.Node; @@ -166,24 +167,24 @@ public class DomNamedNodeMap { if (readonly) { - throw new DomEx(DomEx.NO_MODIFICATION_ALLOWED_ERR); + throw new DomDOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR); } DomNode node = (DomNode) arg; if (node.owner != owner.owner) { - throw new DomEx(DomEx.WRONG_DOCUMENT_ERR); + throw new DomDOMException(DOMException.WRONG_DOCUMENT_ERR); } if (node.nodeType != type) { - throw new DomEx(DomEx.HIERARCHY_REQUEST_ERR); + throw new DomDOMException(DOMException.HIERARCHY_REQUEST_ERR); } if (node.nodeType == Node.ATTRIBUTE_NODE) { DomNode element = node.parent; if (element != null && element != owner) { - throw new DomEx(DomEx.INUSE_ATTRIBUTE_ERR); + throw new DomDOMException(DOMException.INUSE_ATTRIBUTE_ERR); } node.parent = owner; node.depth = owner.depth + 1; @@ -302,7 +303,7 @@ public class DomNamedNodeMap { if (readonly) { - throw new DomEx(DomEx.NO_MODIFICATION_ALLOWED_ERR); + throw new DomDOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR); } // report attribute REMOVAL event? @@ -369,7 +370,7 @@ public class DomNamedNodeMap return ctx; } } - throw new DomEx(DomEx.NOT_FOUND_ERR); + throw new DomDOMException(DOMException.NOT_FOUND_ERR); } String getDefaultValue(String name) diff --git a/libjava/gnu/xml/dom/DomNode.java b/libjava/gnu/xml/dom/DomNode.java index 3858fe8..74535ee 100644 --- a/libjava/gnu/xml/dom/DomNode.java +++ b/libjava/gnu/xml/dom/DomNode.java @@ -308,15 +308,16 @@ public abstract class DomNode { if (readonly && !owner.building) { - throw new DomEx(DomEx.NO_MODIFICATION_ALLOWED_ERR, - null, this, 0); + throw new DomDOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, + null, this, 0); } for (DomNode ctx = this; ctx != null; ctx = ctx.parent) { if (child == ctx) { - throw new DomEx(DomEx.HIERARCHY_REQUEST_ERR, - "can't make ancestor into a child", this, 0); + throw new DomDOMException(DOMException.HIERARCHY_REQUEST_ERR, + "can't make ancestor into a child", + this, 0); } } @@ -330,8 +331,8 @@ public abstract class DomNode // new in DOM L2, this case -- patch it up later, in reparent() if (!(childNodeType == DOCUMENT_TYPE_NODE && childOwner == null)) { - throw new DomEx(DomEx.WRONG_DOCUMENT_ERR, - null, child, 0); + throw new DomDOMException(DOMException.WRONG_DOCUMENT_ERR, + null, child, 0); } } @@ -376,10 +377,12 @@ public abstract class DomNode } if (owner.checkingWellformedness) { - throw new DomEx(DomEx.HIERARCHY_REQUEST_ERR, - "can't append " + nodeTypeToString(childNodeType) + - " to node of type " + nodeTypeToString(nodeType), - this, 0); + throw new DomDOMException(DOMException.HIERARCHY_REQUEST_ERR, + "can't append " + + nodeTypeToString(childNodeType) + + " to node of type " + + nodeTypeToString(nodeType), + this, 0); } } @@ -578,8 +581,8 @@ public abstract class DomNode } catch (ClassCastException e) { - throw new DomEx(DomEx.WRONG_DOCUMENT_ERR, - null, newChild, 0); + throw new DomDOMException(DOMException.WRONG_DOCUMENT_ERR, + null, newChild, 0); } } @@ -630,12 +633,14 @@ public abstract class DomNode checkMisc(child); if (ref == null || ref.parent != this) { - throw new DomEx(DomEx.NOT_FOUND_ERR, null, ref, 0); + throw new DomDOMException(DOMException.NOT_FOUND_ERR, + null, ref, 0); } if (ref == child) { - throw new DomEx(DomEx.HIERARCHY_REQUEST_ERR, - "can't insert node before itself", ref, 0); + throw new DomDOMException(DOMException.HIERARCHY_REQUEST_ERR, + "can't insert node before itself", + ref, 0); } if (child.parent != null) @@ -672,8 +677,8 @@ public abstract class DomNode } catch (ClassCastException e) { - throw new DomEx(DomEx.WRONG_DOCUMENT_ERR, - null, newChild, 0); + throw new DomDOMException(DOMException.WRONG_DOCUMENT_ERR, + null, newChild, 0); } } @@ -721,7 +726,8 @@ public abstract class DomNode } if (ref == null || ref.parent != this) { - throw new DomEx(DomEx.NOT_FOUND_ERR, null, ref, 0); + throw new DomDOMException(DOMException.NOT_FOUND_ERR, + null, ref, 0); } if (reportMutations) @@ -784,7 +790,8 @@ public abstract class DomNode checkMisc(child); if (ref == null || ref.parent != this) { - throw new DomEx(DomEx.NOT_FOUND_ERR, null, ref, 0); + throw new DomDOMException(DOMException.NOT_FOUND_ERR, + null, ref, 0); } if (reportMutations) @@ -837,8 +844,8 @@ public abstract class DomNode } catch (ClassCastException e) { - throw new DomEx(DomEx.WRONG_DOCUMENT_ERR, - null, newChild, 0); + throw new DomDOMException(DOMException.WRONG_DOCUMENT_ERR, + null, newChild, 0); } } @@ -860,12 +867,13 @@ public abstract class DomNode if (ref == null || ref.parent != this) { - throw new DomEx(DomEx.NOT_FOUND_ERR, null, ref, 0); + throw new DomDOMException(DOMException.NOT_FOUND_ERR, + null, ref, 0); } if (readonly && !owner.building) { - throw new DomEx(DomEx.NO_MODIFICATION_ALLOWED_ERR, - null, this, 0); + throw new DomDOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, + null, this, 0); } for (DomNode child = first; child != null; child = child.next) @@ -909,13 +917,13 @@ public abstract class DomNode return ref; } } - throw new DomEx(DomEx.NOT_FOUND_ERR, - "that's no child of mine", refChild, 0); + throw new DomDOMException(DOMException.NOT_FOUND_ERR, + "that's no child of mine", refChild, 0); } catch (ClassCastException e) { - throw new DomEx(DomEx.WRONG_DOCUMENT_ERR, - null, refChild, 0); + throw new DomDOMException(DOMException.WRONG_DOCUMENT_ERR, + null, refChild, 0); } } @@ -1446,8 +1454,8 @@ public abstract class DomNode // mouse events - throw new DomEx(DomEx.NOT_SUPPORTED_ERR, - eventType, null, 0); + throw new DomDOMException(DOMException.NOT_SUPPORTED_ERR, + eventType, null, 0); } /** diff --git a/libjava/gnu/xml/dom/DomNsNode.java b/libjava/gnu/xml/dom/DomNsNode.java index ea41fff..15b2fb5 100644 --- a/libjava/gnu/xml/dom/DomNsNode.java +++ b/libjava/gnu/xml/dom/DomNsNode.java @@ -38,6 +38,7 @@ exception statement from your version. */ package gnu.xml.dom; import javax.xml.XMLConstants; +import org.w3c.dom.DOMException; /** * <p> Abstract implemention of namespace support. This facilitates @@ -135,7 +136,7 @@ public abstract class DomNsNode { if (readonly) { - throw new DomEx(DomEx.NO_MODIFICATION_ALLOWED_ERR); + throw new DomDOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR); } if (prefix == null) @@ -145,40 +146,42 @@ public abstract class DomNsNode } else if (namespace == null) { - throw new DomEx(DomEx.NAMESPACE_ERR, - "can't set prefix, node has no namespace URI", - this, 0); + throw new DomDOMException(DOMException.NAMESPACE_ERR, + "can't set prefix, node has no namespace URI", + this, 0); } DomDocument.checkName(prefix, "1.1".equals(owner.getXmlVersion())); if (prefix.indexOf (':') != -1) { - throw new DomEx(DomEx.NAMESPACE_ERR, - "illegal prefix " + prefix, this, 0); + throw new DomDOMException(DOMException.NAMESPACE_ERR, + "illegal prefix " + prefix, this, 0); } if (XMLConstants.XML_NS_PREFIX.equals(prefix) && !XMLConstants.XML_NS_URI.equals(namespace)) { - throw new DomEx(DomEx.NAMESPACE_ERR, - "xml namespace is always " + - XMLConstants.XML_NS_URI, this, 0); + throw new DomDOMException(DOMException.NAMESPACE_ERR, + "xml namespace is always " + + XMLConstants.XML_NS_URI, this, 0); } if (XMLConstants.XMLNS_ATTRIBUTE.equals(prefix)) { if (namespace != null || getNodeType() != ATTRIBUTE_NODE) { - throw new DomEx(DomEx.NAMESPACE_ERR, - "xmlns attribute prefix is reserved", this, 0); + throw new DomDOMException(DOMException.NAMESPACE_ERR, + "xmlns attribute prefix is reserved", + this, 0); } } else if (getNodeType () == ATTRIBUTE_NODE && (XMLConstants.XMLNS_ATTRIBUTE.equals(name) || name.startsWith("xmlns:"))) { - throw new DomEx(DomEx.NAMESPACE_ERR, - "namespace declarations can't change names", this, 0); + throw new DomDOMException(DOMException.NAMESPACE_ERR, + "namespace declarations can't change names", + this, 0); } this.prefix = prefix.intern(); diff --git a/libjava/gnu/xml/dom/DomPI.java b/libjava/gnu/xml/dom/DomProcessingInstruction.java index dedf375..9697f33 100644 --- a/libjava/gnu/xml/dom/DomPI.java +++ b/libjava/gnu/xml/dom/DomProcessingInstruction.java @@ -1,4 +1,4 @@ -/* DomPI.java -- +/* DomProcessingInstruction.java -- Copyright (C) 1999,2000,2001,2004 Free Software Foundation, Inc. This file is part of GNU Classpath. @@ -37,6 +37,7 @@ exception statement from your version. */ package gnu.xml.dom; +import org.w3c.dom.DOMException; import org.w3c.dom.ProcessingInstruction; /** @@ -57,7 +58,7 @@ import org.w3c.dom.ProcessingInstruction; * @author David Brownell * @author <a href='mailto:dog@gnu.org'>Chris Burdess</a> */ -public class DomPI +public class DomProcessingInstruction extends DomNode implements ProcessingInstruction { @@ -73,7 +74,8 @@ public class DomPI * part of its createProcessingInstruction functionality, or through * a subclass which is similarly used in a "Sub-DOM" style layer. */ - protected DomPI(DomDocument owner, String target, String data) + protected DomProcessingInstruction(DomDocument owner, + String target, String data) { super(PROCESSING_INSTRUCTION_NODE, owner); this.target = target; @@ -136,7 +138,7 @@ public class DomPI { if (isReadonly()) { - throw new DomEx(DomEx.NO_MODIFICATION_ALLOWED_ERR); + throw new DomDOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR); } this.data = data; } diff --git a/libjava/gnu/xml/dom/DomText.java b/libjava/gnu/xml/dom/DomText.java index d714655..dc2d50a 100644 --- a/libjava/gnu/xml/dom/DomText.java +++ b/libjava/gnu/xml/dom/DomText.java @@ -102,7 +102,7 @@ public class DomText { if (isReadonly()) { - throw new DomEx(DomEx.NO_MODIFICATION_ALLOWED_ERR); + throw new DomDOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR); } try { @@ -134,7 +134,7 @@ public class DomText } catch (IndexOutOfBoundsException x) { - throw new DomEx(DomEx.INDEX_SIZE_ERR); + throw new DomDOMException(DOMException.INDEX_SIZE_ERR); } } diff --git a/libjava/gnu/xml/dom/ls/DomLSEx.java b/libjava/gnu/xml/dom/ls/DomLSException.java index 5bf1595..6701b3e 100644 --- a/libjava/gnu/xml/dom/ls/DomLSEx.java +++ b/libjava/gnu/xml/dom/ls/DomLSException.java @@ -1,4 +1,4 @@ -/* DomLSEx.java -- +/* DomLSException.java -- Copyright (C) 2004 Free Software Foundation, Inc. This file is part of GNU Classpath. @@ -37,8 +37,6 @@ exception statement from your version. */ package gnu.xml.dom.ls; -import java.io.PrintStream; -import java.io.PrintWriter; import org.w3c.dom.ls.LSException; /** @@ -46,30 +44,14 @@ import org.w3c.dom.ls.LSException; * * @author <a href='mailto:dog@gnu.org'>Chris Burdess</a> */ -public class DomLSEx +public class DomLSException extends LSException { - private final Exception cause2; - - public DomLSEx(short type, Exception cause) + public DomLSException(short type, Exception cause) { - super(type, cause.getMessage()); - cause2 = cause; + super(type, (cause == null) ? null : cause.getMessage()); + initCause(cause); } - public void printStackTrace(PrintStream out) - { - super.printStackTrace(out); - out.print("caused by "); - cause2.printStackTrace(out); - } - - public void printStackTrace(PrintWriter out) - { - super.printStackTrace(out); - out.print("caused by "); - cause2.printStackTrace(out); - } - } diff --git a/libjava/gnu/xml/dom/ls/DomLSParser.java b/libjava/gnu/xml/dom/ls/DomLSParser.java index b050b99..489777f 100644 --- a/libjava/gnu/xml/dom/ls/DomLSParser.java +++ b/libjava/gnu/xml/dom/ls/DomLSParser.java @@ -65,7 +65,7 @@ import org.xml.sax.SAXNotRecognizedException; import org.xml.sax.SAXParseException; import org.xml.sax.XMLReader; import gnu.xml.dom.DomDocument; -import gnu.xml.dom.DomEx; +import gnu.xml.dom.DomDOMException; /** * Parser implementation for GNU DOM. @@ -117,7 +117,7 @@ public class DomLSParser async = false; break; default: - throw new DomEx(DOMException.NOT_SUPPORTED_ERR); + throw new DomDOMException(DOMException.NOT_SUPPORTED_ERR); } // TODO schemaType this.schemaType = schemaType; @@ -307,13 +307,13 @@ public class DomLSParser { reader = null; eventSink = null; - throw new DomLSEx(LSException.PARSE_ERR, e); + throw new DomLSException(LSException.PARSE_ERR, e); } catch (IOException e) { reader = null; eventSink = null; - throw new DomLSEx(LSException.PARSE_ERR, e); + throw new DomLSException(LSException.PARSE_ERR, e); } // return document Document ret = eventSink.doc; @@ -341,11 +341,11 @@ public class DomLSParser } catch (ParserConfigurationException e) { - throw new DomLSEx(LSException.PARSE_ERR, e); + throw new DomLSException(LSException.PARSE_ERR, e); } catch (SAXException e) { - throw new DomLSEx(LSException.PARSE_ERR, e); + throw new DomLSException(LSException.PARSE_ERR, e); } } return reader; @@ -371,11 +371,11 @@ public class DomLSParser } catch (SAXException e) { - throw new DomLSEx(LSException.PARSE_ERR, e); + throw new DomLSException(LSException.PARSE_ERR, e); } catch (IOException e) { - throw new DomLSEx(LSException.PARSE_ERR, e); + throw new DomLSException(LSException.PARSE_ERR, e); } } if (source == null) @@ -403,7 +403,7 @@ public class DomLSParser } catch (IOException e) { - throw new DomLSEx(LSException.PARSE_ERR, e); + throw new DomLSException(LSException.PARSE_ERR, e); } } return source; @@ -457,7 +457,7 @@ public class DomLSParser } else { - throw new DomEx(DomEx.NOT_SUPPORTED_ERR); + throw new DomDOMException(DOMException.NOT_SUPPORTED_ERR); } // invalidate reader, a new one will be created reader = null; @@ -509,7 +509,7 @@ public class DomLSParser } else { - throw new DomEx(DomEx.NOT_SUPPORTED_ERR); + throw new DomDOMException(DOMException.NOT_SUPPORTED_ERR); } } diff --git a/libjava/gnu/xml/dom/ls/DomLSSerializer.java b/libjava/gnu/xml/dom/ls/DomLSSerializer.java index 91a01c9..ec27c5d 100644 --- a/libjava/gnu/xml/dom/ls/DomLSSerializer.java +++ b/libjava/gnu/xml/dom/ls/DomLSSerializer.java @@ -58,7 +58,7 @@ import org.w3c.dom.ls.LSOutput; import org.w3c.dom.ls.LSSerializer; import org.w3c.dom.ls.LSSerializerFilter; import org.w3c.dom.traversal.NodeFilter; -import gnu.xml.dom.DomEx; +import gnu.xml.dom.DomDOMException; import gnu.xml.transform.StreamSerializer; /** @@ -147,7 +147,7 @@ public class DomLSSerializer } catch (IOException e) { - throw new DomLSEx(LSException.SERIALIZE_ERR, e); + throw new DomLSException(LSException.SERIALIZE_ERR, e); } } @@ -302,7 +302,7 @@ public class DomLSSerializer } else { - throw new DomEx(DomEx.NOT_SUPPORTED_ERR); + throw new DomDOMException(DOMException.NOT_SUPPORTED_ERR); } } @@ -319,7 +319,7 @@ public class DomLSSerializer } else { - throw new DomEx(DomEx.NOT_SUPPORTED_ERR); + throw new DomDOMException(DOMException.NOT_SUPPORTED_ERR); } } diff --git a/libjava/gnu/xml/util/SAXNullTransformerFactory.java b/libjava/gnu/xml/util/SAXNullTransformerFactory.java index 3b199f6..ef03d42 100644 --- a/libjava/gnu/xml/util/SAXNullTransformerFactory.java +++ b/libjava/gnu/xml/util/SAXNullTransformerFactory.java @@ -635,7 +635,8 @@ public class SAXNullTransformerFactory extends SAXTransformerFactory // preserve original namespace prefixes try { - producer.setFeature(handler.FEATURE_URI + "namespace-prefixes", + producer.setFeature(EventFilter.FEATURE_URI + + "namespace-prefixes", true); } catch (Exception e) @@ -646,7 +647,7 @@ public class SAXNullTransformerFactory extends SAXTransformerFactory // arrange the output handler.setResult (out); - handler.bind (producer, handler); + EventFilter.bind (producer, handler); // then parse ... single element pipeline producer.parse (input); diff --git a/libjava/gnu/xml/xpath/Predicate.java b/libjava/gnu/xml/xpath/Predicate.java index 81e1755..a857c16 100644 --- a/libjava/gnu/xml/xpath/Predicate.java +++ b/libjava/gnu/xml/xpath/Predicate.java @@ -63,7 +63,7 @@ class Predicate // Same as [position() = x] return ((Double) ret).intValue() == pos; } - return expr._boolean(node, expr.evaluate(node, pos, len)); + return Expr._boolean(node, expr.evaluate(node, pos, len)); } public Test clone(Object context) |