You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xerces.apache.org by el...@apache.org on 2003/01/08 22:42:04 UTC
cvs commit: xml-xerces/java/src/org/apache/xerces/parsers AbstractDOMParser.java
elena 2003/01/08 13:42:04
Modified: java/src/org/apache/xerces/dom DOMNormalizer.java
ElementImpl.java
java/src/org/apache/xerces/impl/xs/opti DefaultElement.java
java/src/org/apache/xerces/parsers AbstractDOMParser.java
Log:
Update setIdAttributeNode methods per latest DOM L3 draft
Revision Changes Path
1.25 +2 -2 xml-xerces/java/src/org/apache/xerces/dom/DOMNormalizer.java
Index: DOMNormalizer.java
===================================================================
RCS file: /home/cvs/xml-xerces/java/src/org/apache/xerces/dom/DOMNormalizer.java,v
retrieving revision 1.24
retrieving revision 1.25
diff -u -r1.24 -r1.25
--- DOMNormalizer.java 8 Jan 2003 21:21:26 -0000 1.24
+++ DOMNormalizer.java 8 Jan 2003 21:42:04 -0000 1.25
@@ -1321,7 +1321,7 @@
}
}
if (id){
- ((ElementImpl)currentElement).setIdAttributeNode(attr);
+ ((ElementImpl)currentElement).setIdAttributeNode(attr, true);
}
if (fPSVI) {
1.57 +9 -4 xml-xerces/java/src/org/apache/xerces/dom/ElementImpl.java
Index: ElementImpl.java
===================================================================
RCS file: /home/cvs/xml-xerces/java/src/org/apache/xerces/dom/ElementImpl.java,v
retrieving revision 1.56
retrieving revision 1.57
diff -u -r1.56 -r1.57
--- ElementImpl.java 31 Dec 2002 01:16:06 -0000 1.56
+++ ElementImpl.java 8 Jan 2003 21:42:04 -0000 1.57
@@ -907,7 +907,7 @@
/**
* DOM Level 3: register the given attribute node as an ID attribute
*/
- public void setIdAttributeNode(Attr at) {
+ public void setIdAttributeNode(Attr at, boolean makeId) {
if (needsSyncData()) {
synchronizeData();
}
@@ -924,8 +924,13 @@
throw new DOMException(DOMException.NOT_FOUND_ERR, msg);
}
}
- ((AttrImpl) at).isIdAttribute(true);
- ownerDocument.putIdentifier(at.getValue(), this);
+ ((AttrImpl) at).isIdAttribute(makeId);
+ if (!makeId) {
+ ownerDocument.removeIdentifier(at.getValue());
+ }
+ else {
+ ownerDocument.putIdentifier(at.getValue(), this);
+ }
}
/**
1.4 +2 -2 xml-xerces/java/src/org/apache/xerces/impl/xs/opti/DefaultElement.java
Index: DefaultElement.java
===================================================================
RCS file: /home/cvs/xml-xerces/java/src/org/apache/xerces/impl/xs/opti/DefaultElement.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- DefaultElement.java 3 Jan 2003 00:18:21 -0000 1.3
+++ DefaultElement.java 8 Jan 2003 21:42:04 -0000 1.4
@@ -167,7 +167,7 @@
throw new DOMException(DOMException.NOT_SUPPORTED_ERR, "Method not supported");
}
- public void setIdAttributeNode(Attr at) throws DOMException{
+ public void setIdAttributeNode(Attr at, boolean makeId) throws DOMException{
throw new DOMException(DOMException.NOT_SUPPORTED_ERR, "Method not supported");
}
public void setIdAttribute(String name, boolean makeId) throws DOMException{
1.79 +5 -3 xml-xerces/java/src/org/apache/xerces/parsers/AbstractDOMParser.java
Index: AbstractDOMParser.java
===================================================================
RCS file: /home/cvs/xml-xerces/java/src/org/apache/xerces/parsers/AbstractDOMParser.java,v
retrieving revision 1.78
retrieving revision 1.79
diff -u -r1.78 -r1.79
--- AbstractDOMParser.java 16 Dec 2002 01:26:20 -0000 1.78
+++ AbstractDOMParser.java 8 Jan 2003 21:42:04 -0000 1.79
@@ -942,14 +942,16 @@
AttrImpl attrImpl = (AttrImpl)attr;
boolean specified = attributes.isSpecified(i);
attrImpl.setSpecified(specified);
+ // REVISIT: when DOM Level 3 becomes Rec this code
+ // should not depend odn fDocumentImpl
// Identifier registration
if (attributes.getType(i).equals("ID")) {
- ((ElementImpl) el).setIdAttributeNode(attr);
+ ((ElementImpl) el).setIdAttributeNode(attr, true);
}
else if (attributes instanceof XMLAttributesImpl) {
XMLAttributesImpl attrs = (XMLAttributesImpl)attributes;
if (attrs.getSchemaId(i))
- ((ElementImpl) el).setIdAttributeNode(attr);
+ ((ElementImpl) el).setIdAttributeNode(attr, true);
}
}
// REVISIT: Handle entities in attribute value.
---------------------------------------------------------------------
To unsubscribe, e-mail: xerces-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: xerces-cvs-help@xml.apache.org