Added: xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/DomSaver.java URL: http://svn.apache.org/viewvc/xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/DomSaver.java?rev=1877931&view=auto ============================================================================== --- xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/DomSaver.java (added) +++ xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/DomSaver.java Tue May 19 20:10:55 2020 @@ -0,0 +1,203 @@ +/* Copyright 2004 The Apache Software Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.xmlbeans.impl.store; + +import org.apache.xmlbeans.SchemaType; +import org.apache.xmlbeans.SchemaTypeLoader; +import org.apache.xmlbeans.XmlDocumentProperties; +import org.apache.xmlbeans.XmlOptions; +import org.w3c.dom.Node; + +import javax.xml.namespace.QName; +import java.util.ArrayList; + +final class DomSaver extends Saver { + private Cur _nodeCur; + private SchemaType _type; + private final SchemaTypeLoader _stl; + private final XmlOptions _options; + private final boolean _isFrag; + + + DomSaver(Cur c, boolean isFrag, XmlOptions options) { + super(c, options); + + if (c.isUserNode()) { + _type = c.getUser().get_schema_type(); + } + + _stl = c._locale._schemaTypeLoader; + _options = options; + _isFrag = isFrag; + } + + Node saveDom() { + Locale l = Locale.getLocale(_stl, _options); + + l.enter(); + + try { + _nodeCur = l.getCur(); // Not weak or temp + + // Build the tree + + //noinspection StatementWithEmptyBody + while (process()); + + // Set the type + + while (!_nodeCur.isRoot()) { + _nodeCur.toParent(); + } + + if (_type != null) { + _nodeCur.setType(_type); + } + + Node node = (Node) _nodeCur.getDom(); + + _nodeCur.release(); + + _nodeCur = null; + + return node; + } finally { + l.exit(); + } + } + + protected boolean emitElement(SaveCur c, ArrayList attrNames, ArrayList attrValues) { + // If there was text or comments before the frag element, I will loose them -- oh well + // Also, I will lose any attributes and namesapces on the fragment -- DOM can + // have attrs in fragments + + if (Locale.isFragmentQName(c.getName())) { + _nodeCur.moveTo(null, Cur.NO_POS); + } + + ensureDoc(); + + _nodeCur.createElement(getQualifiedName(c, c.getName())); + _nodeCur.next(); + + for (iterateMappings(); hasMapping(); nextMapping()) { + _nodeCur.createAttr(_nodeCur._locale.createXmlns(mappingPrefix())); + _nodeCur.next(); + _nodeCur.insertString(mappingUri()); + _nodeCur.toParent(); + _nodeCur.skipWithAttrs(); + } + + for (int i = 0; i < attrNames.size(); i++) { + _nodeCur.createAttr(getQualifiedName(c, (QName) attrNames.get(i))); + _nodeCur.next(); + _nodeCur.insertString((String) attrValues.get(i)); + _nodeCur.toParent(); + _nodeCur.skipWithAttrs(); + } + + return false; + } + + protected void emitFinish(SaveCur c) { + if (!Locale.isFragmentQName(c.getName())) { + assert _nodeCur.isEnd(); + _nodeCur.next(); + } + } + + protected void emitText(SaveCur c) { + ensureDoc(); + + Object src = c.getChars(); + + if (c._cchSrc > 0) { + _nodeCur.insertChars(src, c._offSrc, c._cchSrc); + _nodeCur.next(); + } + } + + protected void emitComment(SaveCur c) { + ensureDoc(); + + _nodeCur.createComment(); + emitTextValue(c); + _nodeCur.skip(); + } + + protected void emitProcinst(SaveCur c) { + ensureDoc(); + + _nodeCur.createProcinst(c.getName().getLocalPart()); + emitTextValue(c); + _nodeCur.skip(); + } + + protected void emitDocType(String docTypeName, String publicId, String systemId) { + ensureDoc(); + + XmlDocumentProperties props = Locale.getDocProps(_nodeCur, true); + props.setDoctypeName(docTypeName); + props.setDoctypePublicId(publicId); + props.setDoctypeSystemId(systemId); + } + + protected void emitStartDoc(SaveCur c) { + ensureDoc(); + } + + protected void emitEndDoc(SaveCur c) { + } + + private QName getQualifiedName(SaveCur c, QName name) { + String uri = name.getNamespaceURI(); + + String prefix = uri.length() > 0 ? getUriMapping(uri) : ""; + + if (prefix.equals(name.getPrefix())) { + return name; + } + + return _nodeCur._locale.makeQName(uri, name.getLocalPart(), prefix); + } + + private void emitTextValue(SaveCur c) { + c.push(); + c.next(); + + if (c.isText()) { + _nodeCur.next(); + _nodeCur.insertChars(c.getChars(), c._offSrc, c._cchSrc); + _nodeCur.toParent(); + } + + c.pop(); + } + + private void ensureDoc() { + if (!_nodeCur.isPositioned()) { + if (_isFrag) { + _nodeCur.createDomDocFragRoot(); + } else { + _nodeCur.createDomDocumentRoot(); + } + + _nodeCur.next(); + } + } + +} +
Added: xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/ElementAttributes.java URL: http://svn.apache.org/viewvc/xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/ElementAttributes.java?rev=1877931&view=auto ============================================================================== --- xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/ElementAttributes.java (added) +++ xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/ElementAttributes.java Tue May 19 20:10:55 2020 @@ -0,0 +1,60 @@ +/* Copyright 2004 The Apache Software Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.xmlbeans.impl.store; + +import org.w3c.dom.NamedNodeMap; +import org.w3c.dom.Node; + +final class ElementAttributes implements NamedNodeMap { + ElementAttributes(ElementXobj elementXobj) { + _elementXobj = elementXobj; + } + + public int getLength() { + return DomImpl._attributes_getLength(_elementXobj); + } + + public Node getNamedItem(String name) { + return DomImpl._attributes_getNamedItem(_elementXobj, name); + } + + public Node getNamedItemNS(String namespaceURI, String localName) { + return DomImpl._attributes_getNamedItemNS(_elementXobj, namespaceURI, localName); + } + + public Node item(int index) { + return DomImpl._attributes_item(_elementXobj, index); + } + + public Node removeNamedItem(String name) { + return DomImpl._attributes_removeNamedItem(_elementXobj, name); + } + + public Node removeNamedItemNS(String namespaceURI, String localName) { + return DomImpl._attributes_removeNamedItemNS(_elementXobj, namespaceURI, localName); + } + + public Node setNamedItem(Node arg) { + return DomImpl._attributes_setNamedItem(_elementXobj, arg); + } + + public Node setNamedItemNS(Node arg) { + return DomImpl._attributes_setNamedItemNS(_elementXobj, arg); + } + + private ElementXobj _elementXobj; +} + Added: xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/ElementXobj.java URL: http://svn.apache.org/viewvc/xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/ElementXobj.java?rev=1877931&view=auto ============================================================================== --- xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/ElementXobj.java (added) +++ xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/ElementXobj.java Tue May 19 20:10:55 2020 @@ -0,0 +1,126 @@ +/* Copyright 2004 The Apache Software Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.xmlbeans.impl.store; + +import org.w3c.dom.*; + +import javax.xml.namespace.QName; + +class ElementXobj extends NamedNodeXobj implements Element { + ElementXobj(Locale l, QName name) { + super(l, ELEM, DomImpl.ELEMENT); + _name = name; + } + + Xobj newNode(Locale l) { + return new ElementXobj(l, _name); + } + + // + // + // + + public NamedNodeMap getAttributes() { + if (_attributes == null) + _attributes = new ElementAttributes(this); + + return _attributes; + } + + public String getAttribute(String name) { + return DomImpl._element_getAttribute(this, name); + } + + public Attr getAttributeNode(String name) { + return DomImpl._element_getAttributeNode(this, name); + } + + public Attr getAttributeNodeNS(String namespaceURI, String localName) { + return DomImpl._element_getAttributeNodeNS(this, namespaceURI, localName); + } + + public String getAttributeNS(String namespaceURI, String localName) { + return DomImpl._element_getAttributeNS(this, namespaceURI, localName); + } + + public NodeList getElementsByTagName(String name) { + return DomImpl._element_getElementsByTagName(this, name); + } + + public NodeList getElementsByTagNameNS(String namespaceURI, String localName) { + return DomImpl._element_getElementsByTagNameNS(this, namespaceURI, localName); + } + + public String getTagName() { + return DomImpl._element_getTagName(this); + } + + public boolean hasAttribute(String name) { + return DomImpl._element_hasAttribute(this, name); + } + + public boolean hasAttributeNS(String namespaceURI, String localName) { + return DomImpl._element_hasAttributeNS(this, namespaceURI, localName); + } + + public void removeAttribute(String name) { + DomImpl._element_removeAttribute(this, name); + } + + public Attr removeAttributeNode(Attr oldAttr) { + return DomImpl._element_removeAttributeNode(this, oldAttr); + } + + public void removeAttributeNS(String namespaceURI, String localName) { + DomImpl._element_removeAttributeNS(this, namespaceURI, localName); + } + + public void setAttribute(String name, String value) { + DomImpl._element_setAttribute(this, name, value); + } + + public Attr setAttributeNode(Attr newAttr) { + return DomImpl._element_setAttributeNode(this, newAttr); + } + + public Attr setAttributeNodeNS(Attr newAttr) { + return DomImpl._element_setAttributeNodeNS(this, newAttr); + } + + public void setAttributeNS(String namespaceURI, String qualifiedName, String value) { + DomImpl._element_setAttributeNS(this, namespaceURI, qualifiedName, value); + } + + // DOM Level 3 + public TypeInfo getSchemaTypeInfo() { + throw new RuntimeException("DOM Level 3 Not implemented"); + } + + public void setIdAttribute(String name, boolean isId) { + throw new RuntimeException("DOM Level 3 Not implemented"); + } + + public void setIdAttributeNS(String namespaceURI, String localName, boolean isId) { + throw new RuntimeException("DOM Level 3 Not implemented"); + } + + public void setIdAttributeNode(Attr idAttr, boolean isId) { + throw new RuntimeException("DOM Level 3 Not implemented"); + } + + private ElementAttributes _attributes; +} + Modified: xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/Jsr173.java URL: http://svn.apache.org/viewvc/xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/Jsr173.java?rev=1877931&r1=1877930&r2=1877931&view=diff ============================================================================== --- xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/Jsr173.java (original) +++ xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/Jsr173.java Tue May 19 20:10:55 2020 @@ -44,12 +44,12 @@ public class Jsr173 Jsr173GateWay gw = (Jsr173GateWay) xs; Locale l = gw._l; - + if (l.noSync()) { l.enter(); try { return nodeFromStreamImpl( gw ); } finally { l.exit(); } } else synchronized ( l ) { l.enter(); try { return nodeFromStreamImpl( gw ); } finally { l.exit(); } } - + } - + public static Node nodeFromStreamImpl ( Jsr173GateWay gw ) { Cur c = gw._xs.getStreamCur(); @@ -60,25 +60,25 @@ public class Jsr173 public static XMLStreamReader newXmlStreamReader ( Cur c, Object src, int off, int cch ) { XMLStreamReaderBase xs = new XMLStreamReaderForString( c, src, off, cch ); - + if (c._locale.noSync()) return new UnsyncedJsr173( c._locale, xs ); else return new SyncedJsr173( c._locale, xs ); } - + public static XMLStreamReader newXmlStreamReader ( Cur c, XmlOptions options ) { options = XmlOptions.maskNull( options ); - - boolean inner = + + boolean inner = options.hasOption( XmlOptions.SAVE_INNER ) && !options.hasOption( XmlOptions.SAVE_OUTER ); XMLStreamReaderBase xs; int k = c.kind(); - + if (k == Cur.TEXT || k < 0) { xs = new XMLStreamReaderForString( c, c.getChars( -1 ), c._offSrc, c._cchSrc ); @@ -95,23 +95,23 @@ public class Jsr173 } else xs = new XMLStreamReaderForNode( c, false ); - + if (c._locale.noSync()) return new UnsyncedJsr173( c._locale, xs ); else return new SyncedJsr173( c._locale, xs ); } - + // // // - + private static final class XMLStreamReaderForNode extends XMLStreamReaderBase { public XMLStreamReaderForNode ( Cur c, boolean inner ) { super( c ); - + assert c.isContainer() || c.isComment() || c.isProcinst() || c.isAttr(); // Iterate over everything *between* _cur and _end. Do @@ -120,12 +120,12 @@ public class Jsr173 if (inner) { assert c.isContainer(); - + _cur = c.weakCur( this ); if (!_cur.toFirstAttr()) _cur.next(); - + _end = c.weakCur( this ); _end.toEnd(); } @@ -155,9 +155,9 @@ public class Jsr173 if (!_wholeDoc) { // Set the _done bit properly - + _cur.push(); - + try { next(); @@ -166,7 +166,7 @@ public class Jsr173 { throw new RuntimeException( e.getMessage(), e ); } - + _cur.pop(); } @@ -240,7 +240,7 @@ public class Jsr173 _cur.next(); assert _wholeDoc || _end != null; - + _done = _wholeDoc ? _cur.kind() == -Cur.ROOT : _cur.isSamePos( _end ); } @@ -260,7 +260,7 @@ public class Jsr173 return _cur.getValueAsString(); if (k == Cur.TEXT) - return _cur.getCharsAsString( -1 ); + return _cur.getCharsAsString(); throw new IllegalStateException(); } @@ -373,7 +373,7 @@ public class Jsr173 return ca; } - + public String getAttributeValue ( String uri, String local ) { Cur ca = toAttr( _cur, uri, local ); @@ -429,11 +429,11 @@ public class Jsr173 public int getAttributeCount ( ) { int n = 0; - + if (_cur.isElem()) { Cur ca = _cur.tempCur(); - + if (ca.toFirstAttr()) { do @@ -503,7 +503,7 @@ public class Jsr173 // Go to attr to force index check Cur ca = toAttr( _cur, index ); ca.release(); - + return false; } @@ -550,7 +550,7 @@ public class Jsr173 { if (c.kind() == -Cur.ELEM) ca.toParent(); - + if (ca.toFirstAttr()) { do @@ -613,7 +613,7 @@ public class Jsr173 throw new IllegalStateException(); Object src = cText.getChars( -1 ); - + ensureCharBufLen( cText._cchSrc ); CharUtil.getChars( @@ -625,7 +625,7 @@ public class Jsr173 _textFetched = true; } } - + private void ensureCharBufLen ( int cch ) { if (_chars == null || _chars.length < cch) @@ -634,7 +634,7 @@ public class Jsr173 while ( l < cch ) l *= 2; - + _chars = new char [ l ]; } } @@ -694,14 +694,14 @@ public class Jsr173 cText = _cur; else throw new IllegalStateException(); - + _src = cText.getChars( -1 ); _offSrc = cText._offSrc; _cchSrc = cText._cchSrc; - + if (cText != _cur) cText.release(); - + _srcFetched = true; } @@ -712,14 +712,14 @@ public class Jsr173 length = _cchSrc - sourceStart; CharUtil.getChars( target, targetStart, _src, _offSrc, length ); - + return length; } public boolean hasText ( ) { int k = _cur.kind(); - + return k == Cur.COMMENT || k == Cur.TEXT; } @@ -768,7 +768,7 @@ public class Jsr173 private boolean _wholeDoc; private boolean _done; - + private Cur _cur; private Cur _end; @@ -776,13 +776,13 @@ public class Jsr173 private Object _src; private int _offSrc; private int _cchSrc; - + private boolean _textFetched; private char[] _chars; private int _offChars; private int _cchChars; } - + // // // @@ -857,7 +857,7 @@ public class Jsr173 throw new IllegalArgumentException( "Property name is null" ); // BUGBUG - I should implement some perperties here - + return null; } @@ -924,7 +924,7 @@ public class Jsr173 public int getColumnNumber ( ) { return _column; } public int getLineNumber ( ) { return _line; } public String getLocationURI ( ) { return _uri; } - + public String getPublicId ( ) { return null; } public String getSystemId ( ) { return null; } @@ -943,7 +943,7 @@ public class Jsr173 if (!c.isContainer()) c.toParent(); - + String ns = c.namespaceForPrefix( prefix, true ); c.pop(); @@ -961,9 +961,9 @@ public class Jsr173 if (!c.isContainer()) c.toParent(); - + String prefix = c.prefixForNamespace( namespaceURI, null, false ); - + c.pop(); return prefix; @@ -994,14 +994,14 @@ public class Jsr173 private Locale _locale; private long _version; - + String _uri; - + int _line = -1; int _column = -1; int _offset = -1; } - + // // // @@ -1034,7 +1034,7 @@ public class Jsr173 return CharUtil.getString( _src, _off, _cch ); } - + public char[] getTextCharacters ( ) { checkChanged(); @@ -1057,20 +1057,20 @@ public class Jsr173 return _cch; } - + public int getTextCharacters ( int sourceStart, char[] target, int targetStart, int length ) { checkChanged(); if (length < 0) throw new IndexOutOfBoundsException(); - + if (sourceStart > _cch) throw new IndexOutOfBoundsException(); if (sourceStart + length > _cch) length = _cch - sourceStart; - + CharUtil.getChars( target, targetStart, _src, _off + sourceStart, length ); return length; @@ -1125,7 +1125,7 @@ public class Jsr173 private static abstract class Jsr173GateWay { public Jsr173GateWay ( Locale l, XMLStreamReaderBase xs ) { _l = l; _xs = xs; } - + Locale _l; XMLStreamReaderBase _xs; } @@ -1133,7 +1133,7 @@ public class Jsr173 private static final class SyncedJsr173 extends Jsr173GateWay implements XMLStreamReader, Location, NamespaceContext { public SyncedJsr173 ( Locale l, XMLStreamReaderBase xs ) { super( l, xs ); } - + public Object getProperty ( java.lang.String name ) { synchronized ( _l ) { _l.enter(); try { return _xs.getProperty( name ); } finally { _l.exit(); } } } public int next ( ) throws XMLStreamException { synchronized ( _l ) { _l.enter(); try { return _xs.next(); } finally { _l.exit(); } } } public void require ( int type, String namespaceURI, String localName ) throws XMLStreamException { synchronized ( _l ) { _l.enter(); try { _xs.require( type, namespaceURI, localName ); } finally { _l.exit(); } } } @@ -1192,7 +1192,7 @@ public class Jsr173 private static final class UnsyncedJsr173 extends Jsr173GateWay implements XMLStreamReader, Location, NamespaceContext { public UnsyncedJsr173 ( Locale l, XMLStreamReaderBase xs ) { super( l, xs ); } - + public Object getProperty ( java.lang.String name ) { try { _l.enter(); return _xs.getProperty( name ); } finally { _l.exit(); } } public int next ( ) throws XMLStreamException { try { _l.enter(); return _xs.next(); } finally { _l.exit(); } } public void require ( int type, String namespaceURI, String localName ) throws XMLStreamException { try { _l.enter(); _xs.require( type, namespaceURI, localName ); } finally { _l.exit(); } } @@ -1249,4 +1249,3 @@ public class Jsr173 } } - \ No newline at end of file Modified: xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/Locale.java URL: http://svn.apache.org/viewvc/xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/Locale.java?rev=1877931&r1=1877930&r2=1877931&view=diff ============================================================================== --- xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/Locale.java (original) +++ xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/Locale.java Tue May 19 20:10:55 2020 @@ -15,96 +15,33 @@ package org.apache.xmlbeans.impl.store; -import org.xml.sax.Locator; -import org.xml.sax.Attributes; -import org.xml.sax.ContentHandler; -import org.xml.sax.EntityResolver; -import org.xml.sax.ErrorHandler; -import org.xml.sax.InputSource; -import org.xml.sax.ext.LexicalHandler; +import org.apache.xmlbeans.*; +import org.apache.xmlbeans.XmlCursor.XmlBookmark; +import org.apache.xmlbeans.impl.common.*; +import org.apache.xmlbeans.impl.store.Cur.Locations; +import org.apache.xmlbeans.impl.store.DomImpl.Dom; +import org.apache.xmlbeans.impl.store.Saaj.SaajCallback; +import org.apache.xmlbeans.impl.values.TypeStore; +import org.apache.xmlbeans.xml.stream.CharacterData; +import org.apache.xmlbeans.xml.stream.ProcessingInstruction; +import org.apache.xmlbeans.xml.stream.*; +import org.w3c.dom.*; +import org.xml.sax.*; import org.xml.sax.ext.DeclHandler; -import org.xml.sax.SAXParseException; -import org.xml.sax.XMLReader; -import org.xml.sax.SAXException; -import org.xml.sax.DTDHandler; - -import java.util.HashMap; -import java.util.Map; - -import java.lang.ref.ReferenceQueue; -import java.lang.ref.Reference; -import java.lang.ref.PhantomReference; -import java.lang.ref.SoftReference; +import org.xml.sax.ext.LexicalHandler; +import javax.xml.namespace.QName; +import javax.xml.stream.XMLStreamException; +import javax.xml.stream.XMLStreamReader; +import java.io.IOException; import java.io.InputStream; import java.io.Reader; import java.io.StringReader; -import java.io.IOException; - -import javax.xml.namespace.QName; -import javax.xml.stream.XMLStreamReader; -import javax.xml.stream.XMLStreamException; - -import org.apache.xmlbeans.xml.stream.Attribute; -import org.apache.xmlbeans.xml.stream.AttributeIterator; -import org.apache.xmlbeans.xml.stream.CharacterData; -import org.apache.xmlbeans.xml.stream.ProcessingInstruction; -import org.apache.xmlbeans.xml.stream.Space; -import org.apache.xmlbeans.xml.stream.StartDocument; -import org.apache.xmlbeans.xml.stream.StartElement; -import org.apache.xmlbeans.xml.stream.XMLEvent; -import org.apache.xmlbeans.xml.stream.XMLInputStream; -import org.apache.xmlbeans.xml.stream.XMLName; - -import org.apache.xmlbeans.impl.common.SAXHelper; -import org.apache.xmlbeans.impl.common.XMLNameHelper; -import org.apache.xmlbeans.impl.common.QNameHelper; -import org.apache.xmlbeans.impl.common.XmlLocale; -import org.apache.xmlbeans.impl.common.ResolverUtil; -import org.apache.xmlbeans.impl.common.SystemCache; -import org.apache.xmlbeans.impl.common.XBLogger; -import org.apache.xmlbeans.impl.common.XBLogFactory; - -import org.apache.xmlbeans.impl.store.Saaj.SaajCallback; - -import org.apache.xmlbeans.impl.store.DomImpl.Dom; -import org.apache.xmlbeans.impl.store.DomImpl.TextNode; -import org.apache.xmlbeans.impl.store.DomImpl.CdataNode; -import org.apache.xmlbeans.impl.store.DomImpl.SaajTextNode; -import org.apache.xmlbeans.impl.store.DomImpl.SaajCdataNode; - -import org.apache.xmlbeans.impl.store.Cur.Locations; - -import org.apache.xmlbeans.CDataBookmark; -import org.apache.xmlbeans.XmlBeans; -import org.apache.xmlbeans.XmlLineNumber; -import org.apache.xmlbeans.XmlCursor; -import org.apache.xmlbeans.XmlCursor.XmlBookmark; -import org.apache.xmlbeans.XmlErrorCodes; -import org.apache.xmlbeans.XmlException; -import org.apache.xmlbeans.XmlObject; -import org.apache.xmlbeans.XmlOptions; -import org.apache.xmlbeans.XmlOptionsBean; -import org.apache.xmlbeans.XmlSaxHandler; -import org.apache.xmlbeans.SchemaType; -import org.apache.xmlbeans.SchemaTypeLoader; -import org.apache.xmlbeans.XmlTokenSource; -import org.apache.xmlbeans.QNameSet; -import org.apache.xmlbeans.QNameCache; -import org.apache.xmlbeans.XmlError; -import org.apache.xmlbeans.XmlRuntimeException; -import org.apache.xmlbeans.XmlDocumentProperties; - -import org.apache.xmlbeans.impl.values.TypeStore; -import org.apache.xmlbeans.impl.values.TypeStoreUser; -import org.apache.xmlbeans.impl.values.TypeStoreUserFactory; - -import org.w3c.dom.DOMImplementation; -import org.w3c.dom.Document; -import org.w3c.dom.DocumentType; -import org.w3c.dom.Node; -import org.w3c.dom.NamedNodeMap; -import org.w3c.dom.Element; +import java.lang.ref.PhantomReference; +import java.lang.ref.ReferenceQueue; +import java.lang.ref.SoftReference; +import java.util.HashMap; +import java.util.Map; public final class Locale implements DOMImplementation, SaajCallback, XmlLocale @@ -150,7 +87,7 @@ public final class Locale // // Also - have a thread local setting for thread safety? .. Perhaps something // in the type loader which defines whether ot not sync is on???? - + _noSync = options.hasOption(XmlOptions.UNSYNCHRONIZED); _tempFrames = new Cur[_numTempFramesLeft = 8]; @@ -158,10 +95,10 @@ public final class Locale // BUGBUG - this cannot be thread local .... // BUGBUG - this cannot be thread local .... // BUGBUG - this cannot be thread local .... uhh what, again? - // + // // Lazy create this (loading up a locale should use the thread locale one) // same goes for the qname factory .. use thread local for hte most part when loading - + _qnameFactory = new DefaultQNameFactory(); //new LocalDocumentQNameFactory(); _locations = new Locations(this); @@ -169,11 +106,11 @@ public final class Locale _schemaTypeLoader = stl; _validateOnSet = options.hasOption(XmlOptions.VALIDATE_ON_SET); - + // // Check for Saaj implementation request // - + Object saajObj = options.get(Saaj.SAAJ_IMPL); if (saajObj != null) @@ -246,7 +183,7 @@ public final class Locale // // // - + static void associateSourceName(Cur c, XmlOptions options) { String sourceName = (String) XmlOptions.safeGet(options, @@ -259,7 +196,7 @@ public final class Locale // // // - + static void autoTypeDocument(Cur c, SchemaType requestedType, XmlOptions options) throws XmlException @@ -298,7 +235,7 @@ public final class Locale } // Look for a document element to establish type - + if (type == null && (requestedType == null || requestedType.isDocumentType())) { @@ -554,7 +491,7 @@ public final class Locale if (k == ATTR) break; - if (k == TEXT && !isWhiteSpace(start.getCharsAsString(-1))) + if (k == TEXT && !isWhiteSpace(start.getCharsAsString())) { isFrag = true; break; @@ -581,11 +518,11 @@ public final class Locale return isFrag || numDocElems != 1; } - + // // // - + public static XmlObject newInstance(SchemaTypeLoader stl, SchemaType type, XmlOptions options) { @@ -634,7 +571,7 @@ public final class Locale else c.createRoot(); c.setType(sType); - + XmlObject x = (XmlObject) c.getUser(); c.release(); @@ -2470,18 +2407,18 @@ public final class Locale // // // - + Dom findDomNthChild ( Dom parent, int n ) { assert n >= 0; - + if (parent == null) return null; - + int da = _domNthCache_A.distance(parent, n); int db = _domNthCache_B.distance(parent, n); - - + + // the "better" cache should never walk more than 1/2 len Dom x = null; boolean bInvalidate = (db - _domNthCache_B._len / 2 > 0) && @@ -2510,33 +2447,33 @@ public final class Locale _domNthCache_A = _domNthCache_B; _domNthCache_B = temp; } - + return x; } - + int domLength ( Dom parent ) { if (parent == null) return 0; - + int da = _domNthCache_A.distance( parent, 0 ); int db = _domNthCache_B.distance( parent, 0 ); - + int len = da <= db ? _domNthCache_A.length( parent ) : _domNthCache_B.length( parent ); - + if (da == db) { domNthCache temp = _domNthCache_A; _domNthCache_A = _domNthCache_B; _domNthCache_B = temp; } - + return len; } - + void invalidateDomCaches ( Dom d ) { if (_domNthCache_A._parent == d) @@ -2544,28 +2481,28 @@ public final class Locale if (_domNthCache_B._parent == d) _domNthCache_B._version = -1; } - + boolean isDomCached ( Dom d ) { return _domNthCache_A._parent == d || _domNthCache_B._parent == d; } - + class domNthCache { - + int distance ( Dom parent, int n ) { assert n >= 0; - + if (_version != Locale.this.version()) return Integer.MAX_VALUE - 1; - + if (parent != _parent) return Integer.MAX_VALUE; - + return n > _n ? n - _n : _n - n; } - + int length ( Dom parent ) { if (_version != Locale.this.version() || _parent != parent) @@ -2576,11 +2513,11 @@ public final class Locale _n = -1; _len = -1; } - + if (_len == -1) { Dom x = null; - + if (_child != null && _n != -1) { x = _child; @@ -2590,26 +2527,26 @@ public final class Locale { x = DomImpl.firstChild(_parent); _len = 0; - + // cache the 0th child _child = x; _n = 0; } - + for (; x != null; x = DomImpl.nextSibling(x) ) { _len++; } } - - + + return _len; } - + Dom fetch ( Dom parent, int n ) { assert n >= 0; - + if (_version != Locale.this.version() || _parent != parent) { _parent = parent; @@ -2617,7 +2554,7 @@ public final class Locale _child = null; _n = -1; _len = -1; - + for (Dom x = DomImpl.firstChild(_parent); x != null; x = DomImpl.nextSibling(x) ) { _n++; @@ -2627,13 +2564,13 @@ public final class Locale break; } } - + return _child; } - + if (_n < 0) return null; - + if (n > _n) { while ( n > _n ) @@ -2642,10 +2579,10 @@ public final class Locale { if (x == null) return null; - + _child = x; _n++; - + break; } } @@ -2658,18 +2595,18 @@ public final class Locale { if (x == null) return null; - + _child = x; _n--; - + break; } } } - + return _child; } - + public static final int BLITZ_BOUNDARY = 40; //walk small lists private long _version; private Dom _parent; @@ -2677,9 +2614,9 @@ public final class Locale private int _n; private int _len; } - + + // // - // // CharUtil getCharUtil() @@ -3070,7 +3007,7 @@ public final class Locale xr = SAXHelper.newXMLReader(new XmlOptionsBean(options)); } catch(Exception e) { throw new XmlException("Problem creating XMLReader", e); - } + } } SaxLoader sl = new XmlReaderSaxLoader(xr); Added: xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/NamedNodeXobj.java URL: http://svn.apache.org/viewvc/xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/NamedNodeXobj.java?rev=1877931&view=auto ============================================================================== --- xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/NamedNodeXobj.java (added) +++ xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/NamedNodeXobj.java Tue May 19 20:10:55 2020 @@ -0,0 +1,30 @@ +/* Copyright 2004 The Apache Software Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.xmlbeans.impl.store; + +abstract class NamedNodeXobj extends NodeXobj { + NamedNodeXobj(Locale l, int kind, int domType) { + super(l, kind, domType); + _canHavePrefixUri = true; + } + + public boolean nodeCanHavePrefixUri() { + return _canHavePrefixUri; + } + + boolean _canHavePrefixUri; +} + Added: xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/NodeXobj.java URL: http://svn.apache.org/viewvc/xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/NodeXobj.java?rev=1877931&view=auto ============================================================================== --- xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/NodeXobj.java (added) +++ xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/NodeXobj.java Tue May 19 20:10:55 2020 @@ -0,0 +1,194 @@ +/* Copyright 2004 The Apache Software Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.xmlbeans.impl.store; + +import org.w3c.dom.*; + +abstract class NodeXobj extends Xobj implements DomImpl.Dom, Node, NodeList { + NodeXobj(Locale l, int kind, int domType) { + super(l, kind, domType); + } + + DomImpl.Dom getDom() { + return this; + } + + // + // + // + + public int getLength() { + return DomImpl._childNodes_getLength(this); + } + + public Node item(int i) { + return DomImpl._childNodes_item(this, i); + } + + public Node appendChild(Node newChild) { + return DomImpl._node_appendChild(this, newChild); + } + + public Node cloneNode(boolean deep) { + return DomImpl._node_cloneNode(this, deep); + } + + public NamedNodeMap getAttributes() { + return null; + } + + public NodeList getChildNodes() { + return this; + } + + public Node getParentNode() { + return DomImpl._node_getParentNode(this); + } + + public Node removeChild(Node oldChild) { + return DomImpl._node_removeChild(this, oldChild); + } + + public Node getFirstChild() { + return DomImpl._node_getFirstChild(this); + } + + public Node getLastChild() { + return DomImpl._node_getLastChild(this); + } + + public String getLocalName() { + return DomImpl._node_getLocalName(this); + } + + public String getNamespaceURI() { + return DomImpl._node_getNamespaceURI(this); + } + + public Node getNextSibling() { + return DomImpl._node_getNextSibling(this); + } + + public String getNodeName() { + return DomImpl._node_getNodeName(this); + } + + public short getNodeType() { + return DomImpl._node_getNodeType(this); + } + + public String getNodeValue() { + return DomImpl._node_getNodeValue(this); + } + + public Document getOwnerDocument() { + return DomImpl._node_getOwnerDocument(this); + } + + public String getPrefix() { + return DomImpl._node_getPrefix(this); + } + + public Node getPreviousSibling() { + return DomImpl._node_getPreviousSibling(this); + } + + public boolean hasAttributes() { + return DomImpl._node_hasAttributes(this); + } + + public boolean hasChildNodes() { + return DomImpl._node_hasChildNodes(this); + } + + public Node insertBefore(Node newChild, Node refChild) { + return DomImpl._node_insertBefore(this, newChild, refChild); + } + + public boolean isSupported(String feature, String version) { + return DomImpl._node_isSupported(this, feature, version); + } + + public void normalize() { + DomImpl._node_normalize(this); + } + + public Node replaceChild(Node newChild, Node oldChild) { + return DomImpl._node_replaceChild(this, newChild, oldChild); + } + + public void setNodeValue(String nodeValue) { + DomImpl._node_setNodeValue(this, nodeValue); + } + + public void setPrefix(String prefix) { + DomImpl._node_setPrefix(this, prefix); + } + + public boolean nodeCanHavePrefixUri() { + return false; + } + + // DOM Level 3 + public Object getUserData(String key) { + return DomImpl._node_getUserData(this, key); + } + + public Object setUserData(String key, Object data, UserDataHandler handler) { + return DomImpl._node_setUserData(this, key, data, handler); + } + + public Object getFeature(String feature, String version) { + return DomImpl._node_getFeature(this, feature, version); + } + + public boolean isEqualNode(Node arg) { + return DomImpl._node_isEqualNode(this, arg); + } + + public boolean isSameNode(Node arg) { + return DomImpl._node_isSameNode(this, arg); + } + + public String lookupNamespaceURI(String prefix) { + return DomImpl._node_lookupNamespaceURI(this, prefix); + } + + public String lookupPrefix(String namespaceURI) { + return DomImpl._node_lookupPrefix(this, namespaceURI); + } + + public boolean isDefaultNamespace(String namespaceURI) { + return DomImpl._node_isDefaultNamespace(this, namespaceURI); + } + + public void setTextContent(String textContent) { + DomImpl._node_setTextContent(this, textContent); + } + + public String getTextContent() { + return DomImpl._node_getTextContent(this); + } + + public short compareDocumentPosition(Node other) { + return DomImpl._node_compareDocumentPosition(this, other); + } + + public String getBaseURI() { + return DomImpl._node_getBaseURI(this); + } +} + Added: xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/ProcInstXobj.java URL: http://svn.apache.org/viewvc/xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/ProcInstXobj.java?rev=1877931&view=auto ============================================================================== --- xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/ProcInstXobj.java (added) +++ xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/ProcInstXobj.java Tue May 19 20:10:55 2020 @@ -0,0 +1,51 @@ +/* Copyright 2004 The Apache Software Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.xmlbeans.impl.store; + +import org.w3c.dom.Node; +import org.w3c.dom.ProcessingInstruction; + +class ProcInstXobj extends NodeXobj implements ProcessingInstruction { + ProcInstXobj(Locale l, String target) { + super(l, PROCINST, DomImpl.PROCINST); + _name = _locale.makeQName(null, target); + } + + Xobj newNode(Locale l) { + return new ProcInstXobj(l, _name.getLocalPart()); + } + + public int getLength() { + return 0; + } + + public Node getFirstChild() { + return null; + } + + public String getData() { + return DomImpl._processingInstruction_getData(this); + } + + public String getTarget() { + return DomImpl._processingInstruction_getTarget(this); + } + + public void setData(String data) { + DomImpl._processingInstruction_setData(this, data); + } +} + Added: xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SaajCdataNode.java URL: http://svn.apache.org/viewvc/xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SaajCdataNode.java?rev=1877931&view=auto ============================================================================== --- xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SaajCdataNode.java (added) +++ xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SaajCdataNode.java Tue May 19 20:10:55 2020 @@ -0,0 +1,53 @@ +/* Copyright 2004 The Apache Software Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.xmlbeans.impl.store; + +import org.apache.xmlbeans.impl.soap.SOAPElement; + +class SaajCdataNode extends CdataNode implements org.apache.xmlbeans.impl.soap.Text { + public SaajCdataNode(Locale l) { + super(l); + } + + public boolean isComment() { + return DomImpl._soapText_isComment(this); + } + + public void detachNode() { + DomImpl._soapNode_detachNode(this); + } + + public void recycleNode() { + DomImpl._soapNode_recycleNode(this); + } + + public String getValue() { + return DomImpl._soapNode_getValue(this); + } + + public void setValue(String value) { + DomImpl._soapNode_setValue(this, value); + } + + public SOAPElement getParentElement() { + return DomImpl._soapNode_getParentElement(this); + } + + public void setParentElement(SOAPElement p) { + DomImpl._soapNode_setParentElement(this, p); + } +} + Added: xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SaajTextNode.java URL: http://svn.apache.org/viewvc/xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SaajTextNode.java?rev=1877931&view=auto ============================================================================== --- xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SaajTextNode.java (added) +++ xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SaajTextNode.java Tue May 19 20:10:55 2020 @@ -0,0 +1,53 @@ +/* Copyright 2004 The Apache Software Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.xmlbeans.impl.store; + +import org.apache.xmlbeans.impl.soap.SOAPElement; + +class SaajTextNode extends TextNode implements org.apache.xmlbeans.impl.soap.Text { + SaajTextNode(Locale l) { + super(l); + } + + public boolean isComment() { + return DomImpl._soapText_isComment(this); + } + + public void detachNode() { + DomImpl._soapNode_detachNode(this); + } + + public void recycleNode() { + DomImpl._soapNode_recycleNode(this); + } + + public String getValue() { + return DomImpl._soapNode_getValue(this); + } + + public void setValue(String value) { + DomImpl._soapNode_setValue(this, value); + } + + public SOAPElement getParentElement() { + return DomImpl._soapNode_getParentElement(this); + } + + public void setParentElement(SOAPElement p) { + DomImpl._soapNode_setParentElement(this, p); + } +} + Added: xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapBodyElementXobj.java URL: http://svn.apache.org/viewvc/xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapBodyElementXobj.java?rev=1877931&view=auto ============================================================================== --- xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapBodyElementXobj.java (added) +++ xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapBodyElementXobj.java Tue May 19 20:10:55 2020 @@ -0,0 +1,30 @@ +/* Copyright 2004 The Apache Software Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.xmlbeans.impl.store; + +import org.apache.xmlbeans.impl.soap.SOAPBodyElement; + +import javax.xml.namespace.QName; + +class SoapBodyElementXobj extends SoapElementXobj implements SOAPBodyElement { + SoapBodyElementXobj(Locale l, QName name) { + super(l, name); + } + + Xobj newNode(Locale l) { + return new SoapBodyElementXobj(l, _name); + } +} Added: xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapBodyXobj.java URL: http://svn.apache.org/viewvc/xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapBodyXobj.java?rev=1877931&view=auto ============================================================================== --- xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapBodyXobj.java (added) +++ xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapBodyXobj.java Tue May 19 20:10:55 2020 @@ -0,0 +1,59 @@ +/* Copyright 2004 The Apache Software Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.xmlbeans.impl.store; + +import org.apache.xmlbeans.impl.soap.*; +import org.w3c.dom.Document; + +import javax.xml.namespace.QName; + +class SoapBodyXobj extends SoapElementXobj implements SOAPBody { + SoapBodyXobj(Locale l, QName name) { + super(l, name); + } + + Xobj newNode(Locale l) { + return new SoapBodyXobj(l, _name); + } + + public boolean hasFault() { + return DomImpl.soapBody_hasFault(this); + } + + public SOAPFault addFault() throws SOAPException { + return DomImpl.soapBody_addFault(this); + } + + public SOAPFault getFault() { + return DomImpl.soapBody_getFault(this); + } + + public SOAPBodyElement addBodyElement(Name name) { + return DomImpl.soapBody_addBodyElement(this, name); + } + + public SOAPBodyElement addDocument(Document document) { + return DomImpl.soapBody_addDocument(this, document); + } + + public SOAPFault addFault(Name name, String s) throws SOAPException { + return DomImpl.soapBody_addFault(this, name, s); + } + + public SOAPFault addFault(Name faultCode, String faultString, java.util.Locale locale) throws SOAPException { + return DomImpl.soapBody_addFault(this, faultCode, faultString, locale); + } +} Added: xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapElementXobj.java URL: http://svn.apache.org/viewvc/xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapElementXobj.java?rev=1877931&view=auto ============================================================================== --- xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapElementXobj.java (added) +++ xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapElementXobj.java Tue May 19 20:10:55 2020 @@ -0,0 +1,142 @@ +/* Copyright 2004 The Apache Software Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.xmlbeans.impl.store; + +import org.apache.xmlbeans.impl.soap.Name; +import org.apache.xmlbeans.impl.soap.SOAPElement; +import org.apache.xmlbeans.impl.soap.SOAPException; + +import javax.xml.namespace.QName; +import java.util.Iterator; + +class SoapElementXobj extends ElementXobj implements SOAPElement, org.apache.xmlbeans.impl.soap.Node { + SoapElementXobj(Locale l, QName name) { + super(l, name); + } + + Xobj newNode(Locale l) { + return new SoapElementXobj(l, _name); + } + + public void detachNode() { + DomImpl._soapNode_detachNode(this); + } + + public void recycleNode() { + DomImpl._soapNode_recycleNode(this); + } + + public String getValue() { + return DomImpl._soapNode_getValue(this); + } + + public void setValue(String value) { + DomImpl._soapNode_setValue(this, value); + } + + public SOAPElement getParentElement() { + return DomImpl._soapNode_getParentElement(this); + } + + public void setParentElement(SOAPElement p) { + DomImpl._soapNode_setParentElement(this, p); + } + + public void removeContents() { + DomImpl._soapElement_removeContents(this); + } + + public String getEncodingStyle() { + return DomImpl._soapElement_getEncodingStyle(this); + } + + public void setEncodingStyle(String encodingStyle) { + DomImpl._soapElement_setEncodingStyle(this, encodingStyle); + } + + public boolean removeNamespaceDeclaration(String prefix) { + return DomImpl._soapElement_removeNamespaceDeclaration(this, prefix); + } + + public Iterator getAllAttributes() { + return DomImpl._soapElement_getAllAttributes(this); + } + + public Iterator getChildElements() { + return DomImpl._soapElement_getChildElements(this); + } + + public Iterator getNamespacePrefixes() { + return DomImpl._soapElement_getNamespacePrefixes(this); + } + + public SOAPElement addAttribute(Name name, String value) throws SOAPException { + return DomImpl._soapElement_addAttribute(this, name, value); + } + + public SOAPElement addChildElement(SOAPElement oldChild) throws SOAPException { + return DomImpl._soapElement_addChildElement(this, oldChild); + } + + public SOAPElement addChildElement(Name name) throws SOAPException { + return DomImpl._soapElement_addChildElement(this, name); + } + + public SOAPElement addChildElement(String localName) throws SOAPException { + return DomImpl._soapElement_addChildElement(this, localName); + } + + public SOAPElement addChildElement(String localName, String prefix) throws SOAPException { + return DomImpl._soapElement_addChildElement(this, localName, prefix); + } + + public SOAPElement addChildElement(String localName, String prefix, String uri) throws SOAPException { + return DomImpl._soapElement_addChildElement(this, localName, prefix, uri); + } + + public SOAPElement addNamespaceDeclaration(String prefix, String uri) { + return DomImpl._soapElement_addNamespaceDeclaration(this, prefix, uri); + } + + public SOAPElement addTextNode(String data) { + return DomImpl._soapElement_addTextNode(this, data); + } + + public String getAttributeValue(Name name) { + return DomImpl._soapElement_getAttributeValue(this, name); + } + + public Iterator getChildElements(Name name) { + return DomImpl._soapElement_getChildElements(this, name); + } + + public Name getElementName() { + return DomImpl._soapElement_getElementName(this); + } + + public String getNamespaceURI(String prefix) { + return DomImpl._soapElement_getNamespaceURI(this, prefix); + } + + public Iterator getVisibleNamespacePrefixes() { + return DomImpl._soapElement_getVisibleNamespacePrefixes(this); + } + + public boolean removeAttribute(Name name) { + return DomImpl._soapElement_removeAttribute(this, name); + } +} + Added: xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapEnvelopeXobj.java URL: http://svn.apache.org/viewvc/xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapEnvelopeXobj.java?rev=1877931&view=auto ============================================================================== --- xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapEnvelopeXobj.java (added) +++ xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapEnvelopeXobj.java Tue May 19 20:10:55 2020 @@ -0,0 +1,54 @@ +/* Copyright 2004 The Apache Software Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.xmlbeans.impl.store; + +import org.apache.xmlbeans.impl.soap.*; + +import javax.xml.namespace.QName; + +class SoapEnvelopeXobj extends SoapElementXobj implements SOAPEnvelope { + SoapEnvelopeXobj(Locale l, QName name) { + super(l, name); + } + + Xobj newNode(Locale l) { + return new SoapEnvelopeXobj(l, _name); + } + + public SOAPBody addBody() throws SOAPException { + return DomImpl._soapEnvelope_addBody(this); + } + + public SOAPBody getBody() throws SOAPException { + return DomImpl._soapEnvelope_getBody(this); + } + + public SOAPHeader getHeader() throws SOAPException { + return DomImpl._soapEnvelope_getHeader(this); + } + + public SOAPHeader addHeader() throws SOAPException { + return DomImpl._soapEnvelope_addHeader(this); + } + + public Name createName(String localName) { + return DomImpl._soapEnvelope_createName(this, localName); + } + + public Name createName(String localName, String prefix, String namespaceURI) { + return DomImpl._soapEnvelope_createName(this, localName, prefix, namespaceURI); + } +} Added: xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapFaultElementXobj.java URL: http://svn.apache.org/viewvc/xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapFaultElementXobj.java?rev=1877931&view=auto ============================================================================== --- xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapFaultElementXobj.java (added) +++ xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapFaultElementXobj.java Tue May 19 20:10:55 2020 @@ -0,0 +1,30 @@ +/* Copyright 2004 The Apache Software Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.xmlbeans.impl.store; + +import org.apache.xmlbeans.impl.soap.SOAPFaultElement; + +import javax.xml.namespace.QName; + +class SoapFaultElementXobj extends SoapElementXobj implements SOAPFaultElement { + SoapFaultElementXobj(Locale l, QName name) { + super(l, name); + } + + Xobj newNode(Locale l) { + return new SoapFaultElementXobj(l, _name); + } +} Added: xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapFaultXobj.java URL: http://svn.apache.org/viewvc/xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapFaultXobj.java?rev=1877931&view=auto ============================================================================== --- xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapFaultXobj.java (added) +++ xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapFaultXobj.java Tue May 19 20:10:55 2020 @@ -0,0 +1,81 @@ +/* Copyright 2004 The Apache Software Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.xmlbeans.impl.store; + +import org.apache.xmlbeans.impl.soap.Detail; +import org.apache.xmlbeans.impl.soap.Name; +import org.apache.xmlbeans.impl.soap.SOAPException; +import org.apache.xmlbeans.impl.soap.SOAPFault; + +import javax.xml.namespace.QName; + +class SoapFaultXobj extends SoapBodyElementXobj implements SOAPFault { + SoapFaultXobj(Locale l, QName name) { + super(l, name); + } + + Xobj newNode(Locale l) { + return new SoapFaultXobj(l, _name); + } + + public void setFaultString(String faultString) { + DomImpl.soapFault_setFaultString(this, faultString); + } + + public void setFaultString(String faultString, java.util.Locale locale) { + DomImpl.soapFault_setFaultString(this, faultString, locale); + } + + public void setFaultCode(Name faultCodeName) throws SOAPException { + DomImpl.soapFault_setFaultCode(this, faultCodeName); + } + + public void setFaultActor(String faultActorString) { + DomImpl.soapFault_setFaultActor(this, faultActorString); + } + + public String getFaultActor() { + return DomImpl.soapFault_getFaultActor(this); + } + + public String getFaultCode() { + return DomImpl.soapFault_getFaultCode(this); + } + + public void setFaultCode(String faultCode) throws SOAPException { + DomImpl.soapFault_setFaultCode(this, faultCode); + } + + public java.util.Locale getFaultStringLocale() { + return DomImpl.soapFault_getFaultStringLocale(this); + } + + public Name getFaultCodeAsName() { + return DomImpl.soapFault_getFaultCodeAsName(this); + } + + public String getFaultString() { + return DomImpl.soapFault_getFaultString(this); + } + + public Detail addDetail() throws SOAPException { + return DomImpl.soapFault_addDetail(this); + } + + public Detail getDetail() { + return DomImpl.soapFault_getDetail(this); + } +} Added: xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapHeaderElementXobj.java URL: http://svn.apache.org/viewvc/xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapHeaderElementXobj.java?rev=1877931&view=auto ============================================================================== --- xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapHeaderElementXobj.java (added) +++ xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapHeaderElementXobj.java Tue May 19 20:10:55 2020 @@ -0,0 +1,46 @@ +/* Copyright 2004 The Apache Software Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.xmlbeans.impl.store; + +import org.apache.xmlbeans.impl.soap.SOAPHeaderElement; + +import javax.xml.namespace.QName; + +class SoapHeaderElementXobj extends SoapElementXobj implements SOAPHeaderElement { + SoapHeaderElementXobj(Locale l, QName name) { + super(l, name); + } + + Xobj newNode(Locale l) { + return new SoapHeaderElementXobj(l, _name); + } + + public void setMustUnderstand(boolean mustUnderstand) { + DomImpl.soapHeaderElement_setMustUnderstand(this, mustUnderstand); + } + + public boolean getMustUnderstand() { + return DomImpl.soapHeaderElement_getMustUnderstand(this); + } + + public void setActor(String actor) { + DomImpl.soapHeaderElement_setActor(this, actor); + } + + public String getActor() { + return DomImpl.soapHeaderElement_getActor(this); + } +} Added: xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapHeaderXobj.java URL: http://svn.apache.org/viewvc/xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapHeaderXobj.java?rev=1877931&view=auto ============================================================================== --- xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapHeaderXobj.java (added) +++ xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapHeaderXobj.java Tue May 19 20:10:55 2020 @@ -0,0 +1,57 @@ +/* Copyright 2004 The Apache Software Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.xmlbeans.impl.store; + +import org.apache.xmlbeans.impl.soap.Name; +import org.apache.xmlbeans.impl.soap.SOAPHeader; +import org.apache.xmlbeans.impl.soap.SOAPHeaderElement; + +import javax.xml.namespace.QName; +import java.util.Iterator; + +class SoapHeaderXobj extends SoapElementXobj implements SOAPHeader { + SoapHeaderXobj(Locale l, QName name) { + super(l, name); + } + + Xobj newNode(Locale l) { + return new SoapHeaderXobj(l, _name); + } + + public Iterator examineAllHeaderElements() { + return DomImpl.soapHeader_examineAllHeaderElements(this); + } + + public Iterator extractAllHeaderElements() { + return DomImpl.soapHeader_extractAllHeaderElements(this); + } + + public Iterator examineHeaderElements(String actor) { + return DomImpl.soapHeader_examineHeaderElements(this, actor); + } + + public Iterator examineMustUnderstandHeaderElements(String mustUnderstandString) { + return DomImpl.soapHeader_examineMustUnderstandHeaderElements(this, mustUnderstandString); + } + + public Iterator extractHeaderElements(String actor) { + return DomImpl.soapHeader_extractHeaderElements(this, actor); + } + + public SOAPHeaderElement addHeaderElement(Name name) { + return DomImpl.soapHeader_addHeaderElement(this, name); + } +} Added: xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapPartDocXobj.java URL: http://svn.apache.org/viewvc/xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapPartDocXobj.java?rev=1877931&view=auto ============================================================================== --- xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapPartDocXobj.java (added) +++ xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapPartDocXobj.java Tue May 19 20:10:55 2020 @@ -0,0 +1,35 @@ +/* Copyright 2004 The Apache Software Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.xmlbeans.impl.store; + +class SoapPartDocXobj extends DocumentXobj { + SoapPartDocXobj(Locale l) { + super(l); + //super( l, ROOT, DomImpl.DOCUMENT ); + _soapPartDom = new SoapPartDom(this); + } + + DomImpl.Dom getDom() { + return _soapPartDom; + } + + Xobj newNode(Locale l) { + return new SoapPartDocXobj(l); + } + + SoapPartDom _soapPartDom; +} + Added: xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapPartDom.java URL: http://svn.apache.org/viewvc/xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapPartDom.java?rev=1877931&view=auto ============================================================================== --- xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapPartDom.java (added) +++ xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/SoapPartDom.java Tue May 19 20:10:55 2020 @@ -0,0 +1,395 @@ +/* Copyright 2004 The Apache Software Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.xmlbeans.impl.store; + +import org.apache.xmlbeans.impl.soap.SOAPEnvelope; +import org.apache.xmlbeans.impl.soap.SOAPPart; +import org.w3c.dom.*; + +import javax.xml.namespace.QName; +import javax.xml.transform.Source; +import java.io.PrintStream; +import java.util.Iterator; + +class SoapPartDom extends SOAPPart implements DomImpl.Dom, Document, NodeList { + SoapPartDom(SoapPartDocXobj docXobj) { + _docXobj = docXobj; + } + + public int nodeType() { + return DomImpl.DOCUMENT; + } + + public Locale locale() { + return _docXobj._locale; + } + + public Cur tempCur() { + return _docXobj.tempCur(); + } + + public QName getQName() { + return _docXobj._name; + } + + public void dump() { + dump(System.out); + } + + public void dump(PrintStream o) { + _docXobj.dump(o); + } + + public void dump(PrintStream o, Object ref) { + _docXobj.dump(o, ref); + } + + public String name() { + return "#document"; + } + + public Node appendChild(Node newChild) { + return DomImpl._node_appendChild(this, newChild); + } + + public Node cloneNode(boolean deep) { + return DomImpl._node_cloneNode(this, deep); + } + + public NamedNodeMap getAttributes() { + return null; + } + + public NodeList getChildNodes() { + return this; + } + + public Node getParentNode() { + return DomImpl._node_getParentNode(this); + } + + public Node removeChild(Node oldChild) { + return DomImpl._node_removeChild(this, oldChild); + } + + public Node getFirstChild() { + return DomImpl._node_getFirstChild(this); + } + + public Node getLastChild() { + return DomImpl._node_getLastChild(this); + } + + public String getLocalName() { + return DomImpl._node_getLocalName(this); + } + + public String getNamespaceURI() { + return DomImpl._node_getNamespaceURI(this); + } + + public Node getNextSibling() { + return DomImpl._node_getNextSibling(this); + } + + public String getNodeName() { + return DomImpl._node_getNodeName(this); + } + + public short getNodeType() { + return DomImpl._node_getNodeType(this); + } + + public String getNodeValue() { + return DomImpl._node_getNodeValue(this); + } + + public Document getOwnerDocument() { + return DomImpl._node_getOwnerDocument(this); + } + + public String getPrefix() { + return DomImpl._node_getPrefix(this); + } + + public Node getPreviousSibling() { + return DomImpl._node_getPreviousSibling(this); + } + + public boolean hasAttributes() { + return DomImpl._node_hasAttributes(this); + } + + public boolean hasChildNodes() { + return DomImpl._node_hasChildNodes(this); + } + + public Node insertBefore(Node newChild, Node refChild) { + return DomImpl._node_insertBefore(this, newChild, refChild); + } + + public boolean isSupported(String feature, String version) { + return DomImpl._node_isSupported(this, feature, version); + } + + public void normalize() { + DomImpl._node_normalize(this); + } + + public Node replaceChild(Node newChild, Node oldChild) { + return DomImpl._node_replaceChild(this, newChild, oldChild); + } + + public void setNodeValue(String nodeValue) { + DomImpl._node_setNodeValue(this, nodeValue); + } + + public void setPrefix(String prefix) { + DomImpl._node_setPrefix(this, prefix); + } + + // DOM Level 3 + public Object getUserData(String key) { + return DomImpl._node_getUserData(this, key); + } + + public Object setUserData(String key, Object data, UserDataHandler handler) { + return DomImpl._node_setUserData(this, key, data, handler); + } + + public Object getFeature(String feature, String version) { + return DomImpl._node_getFeature(this, feature, version); + } + + public boolean isEqualNode(Node arg) { + return DomImpl._node_isEqualNode(this, arg); + } + + public boolean isSameNode(Node arg) { + return DomImpl._node_isSameNode(this, arg); + } + + public String lookupNamespaceURI(String prefix) { + return DomImpl._node_lookupNamespaceURI(this, prefix); + } + + public String lookupPrefix(String namespaceURI) { + return DomImpl._node_lookupPrefix(this, namespaceURI); + } + + public boolean isDefaultNamespace(String namespaceURI) { + return DomImpl._node_isDefaultNamespace(this, namespaceURI); + } + + public void setTextContent(String textContent) { + DomImpl._node_setTextContent(this, textContent); + } + + public String getTextContent() { + return DomImpl._node_getTextContent(this); + } + + public short compareDocumentPosition(Node other) { + return DomImpl._node_compareDocumentPosition(this, other); + } + + public String getBaseURI() { + return DomImpl._node_getBaseURI(this); + } + + public Node adoptNode(Node source) { + throw new RuntimeException("DOM Level 3 Not implemented"); + } + + public String getDocumentURI() { + throw new RuntimeException("DOM Level 3 Not implemented"); + } + + public DOMConfiguration getDomConfig() { + throw new RuntimeException("DOM Level 3 Not implemented"); + } + + public String getInputEncoding() { + throw new RuntimeException("DOM Level 3 Not implemented"); + } + + public boolean getStrictErrorChecking() { + throw new RuntimeException("DOM Level 3 Not implemented"); + } + + public String getXmlEncoding() { + throw new RuntimeException("DOM Level 3 Not implemented"); + } + + public boolean getXmlStandalone() { + throw new RuntimeException("DOM Level 3 Not implemented"); + } + + public String getXmlVersion() { + throw new RuntimeException("DOM Level 3 Not implemented"); + } + + public void normalizeDocument() { + throw new RuntimeException("DOM Level 3 Not implemented"); + } + + public Node renameNode(Node n, String namespaceURI, String qualifiedName) { + throw new RuntimeException("DOM Level 3 Not implemented"); + } + + public void setDocumentURI(String documentURI) { + throw new RuntimeException("DOM Level 3 Not implemented"); + } + + public void setStrictErrorChecking(boolean strictErrorChecking) { + throw new RuntimeException("DOM Level 3 Not implemented"); + } + + public void setXmlStandalone(boolean xmlStandalone) { + throw new RuntimeException("DOM Level 3 Not implemented"); + } + + public void setXmlVersion(String xmlVersion) { + throw new RuntimeException("DOM Level 3 Not implemented"); + } + + public Attr createAttribute(String name) { + return DomImpl._document_createAttribute(this, name); + } + + public Attr createAttributeNS(String namespaceURI, String qualifiedName) { + return DomImpl._document_createAttributeNS(this, namespaceURI, qualifiedName); + } + + public CDATASection createCDATASection(String data) { + return DomImpl._document_createCDATASection(this, data); + } + + public Comment createComment(String data) { + return DomImpl._document_createComment(this, data); + } + + public DocumentFragment createDocumentFragment() { + return DomImpl._document_createDocumentFragment(this); + } + + public Element createElement(String tagName) { + return DomImpl._document_createElement(this, tagName); + } + + public Element createElementNS(String namespaceURI, String qualifiedName) { + return DomImpl._document_createElementNS(this, namespaceURI, qualifiedName); + } + + public EntityReference createEntityReference(String name) { + return DomImpl._document_createEntityReference(this, name); + } + + public ProcessingInstruction createProcessingInstruction(String target, String data) { + return DomImpl._document_createProcessingInstruction(this, target, data); + } + + public Text createTextNode(String data) { + return DomImpl._document_createTextNode(this, data); + } + + public DocumentType getDoctype() { + return DomImpl._document_getDoctype(this); + } + + public Element getDocumentElement() { + return DomImpl._document_getDocumentElement(this); + } + + public Element getElementById(String elementId) { + return DomImpl._document_getElementById(this, elementId); + } + + public NodeList getElementsByTagName(String tagname) { + return DomImpl._document_getElementsByTagName(this, tagname); + } + + public NodeList getElementsByTagNameNS(String namespaceURI, String localName) { + return DomImpl._document_getElementsByTagNameNS(this, namespaceURI, localName); + } + + public DOMImplementation getImplementation() { + return DomImpl._document_getImplementation(this); + } + + public Node importNode(Node importedNode, boolean deep) { + return DomImpl._document_importNode(this, importedNode, deep); + } + + public int getLength() { + return DomImpl._childNodes_getLength(this); + } + + public Node item(int i) { + return DomImpl._childNodes_item(this, i); + } + + public void removeAllMimeHeaders() { + DomImpl._soapPart_removeAllMimeHeaders(this); + } + + public void removeMimeHeader(String name) { + DomImpl._soapPart_removeMimeHeader(this, name); + } + + public Iterator getAllMimeHeaders() { + return DomImpl._soapPart_getAllMimeHeaders(this); + } + + public SOAPEnvelope getEnvelope() { + return DomImpl._soapPart_getEnvelope(this); + } + + public Source getContent() { + return DomImpl._soapPart_getContent(this); + } + + public void setContent(Source source) { + DomImpl._soapPart_setContent(this, source); + } + + public String[] getMimeHeader(String name) { + return DomImpl._soapPart_getMimeHeader(this, name); + } + + public void addMimeHeader(String name, String value) { + DomImpl._soapPart_addMimeHeader(this, name, value); + } + + public void setMimeHeader(String name, String value) { + DomImpl._soapPart_setMimeHeader(this, name, value); + } + + public Iterator getMatchingMimeHeaders(String[] names) { + return DomImpl._soapPart_getMatchingMimeHeaders(this, names); + } + + public Iterator getNonMatchingMimeHeaders(String[] names) { + return DomImpl._soapPart_getNonMatchingMimeHeaders(this, names); + } + + public boolean nodeCanHavePrefixUri() { + return true; + } + + SoapPartDocXobj _docXobj; +} + Added: xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/TextNode.java URL: http://svn.apache.org/viewvc/xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/TextNode.java?rev=1877931&view=auto ============================================================================== --- xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/TextNode.java (added) +++ xmlbeans/trunk/src/store/org/apache/xmlbeans/impl/store/TextNode.java Tue May 19 20:10:55 2020 @@ -0,0 +1,48 @@ +/* Copyright 2004 The Apache Software Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.xmlbeans.impl.store; + +import org.w3c.dom.Text; + +class TextNode extends CharNode implements Text { + TextNode(Locale l) { + super(l); + } + + public int nodeType() { + return DomImpl.TEXT; + } + + public String name() { + return "#text"; + } + + public Text splitText(int offset) { + return DomImpl._text_splitText(this, offset); + } + + public String getWholeText() { + return DomImpl._text_getWholeText(this); + } + + public boolean isElementContentWhitespace() { + return DomImpl._text_isElementContentWhitespace(this); + } + + public Text replaceWholeText(String content) { + return DomImpl._text_replaceWholeText(this, content); + } +} --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
