< prev index next >
jaxws/src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/impl/SOAPTextImpl.java
Print this page
@@ -1,7 +1,7 @@
/*
- * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation. Oracle designates this
@@ -30,21 +30,275 @@
import javax.xml.soap.SOAPElement;
import javax.xml.soap.SOAPException;
import com.sun.xml.internal.messaging.saaj.soap.SOAPDocumentImpl;
import com.sun.xml.internal.messaging.saaj.util.LogDomainConstants;
+import org.w3c.dom.DOMException;
+import org.w3c.dom.Document;
+import org.w3c.dom.NamedNodeMap;
+import org.w3c.dom.Node;
+import org.w3c.dom.NodeList;
+import org.w3c.dom.Text;
+import org.w3c.dom.UserDataHandler;
public class SOAPTextImpl
- extends com.sun.org.apache.xerces.internal.dom.TextImpl
implements javax.xml.soap.Text, org.w3c.dom.Text {
+ @Override
+ public Text splitText(int offset) throws DOMException {
+ return textNode.splitText(offset);
+ }
+
+ @Override
+ public boolean isElementContentWhitespace() {
+ return textNode.isElementContentWhitespace();
+ }
+
+ @Override
+ public String getWholeText() {
+ return textNode.getWholeText();
+ }
+
+ @Override
+ public Text replaceWholeText(String content) throws DOMException {
+ return textNode.replaceWholeText(content);
+ }
+
+ @Override
+ public String getData() throws DOMException {
+ return textNode.getData();
+ }
+
+ @Override
+ public void setData(String data) throws DOMException {
+ textNode.setData(data);
+ }
+
+ @Override
+ public int getLength() {
+ return textNode.getLength();
+ }
+
+ @Override
+ public String substringData(int offset, int count) throws DOMException {
+ return textNode.substringData(offset, count);
+ }
+
+ @Override
+ public void appendData(String arg) throws DOMException {
+ textNode.appendData(arg);
+ }
+
+ @Override
+ public void insertData(int offset, String arg) throws DOMException {
+ textNode.insertData(offset, arg);
+ }
+
+ @Override
+ public void deleteData(int offset, int count) throws DOMException {
+ textNode.deleteData(offset, count);
+ }
+
+ @Override
+ public void replaceData(int offset, int count, String arg) throws DOMException {
+ textNode.replaceData(offset, count, arg);
+ }
+
+ @Override
+ public String getNodeName() {
+ return textNode.getNodeName();
+ }
+
+ @Override
+ public String getNodeValue() throws DOMException {
+ return textNode.getNodeValue();
+ }
+
+ @Override
+ public void setNodeValue(String nodeValue) throws DOMException {
+ textNode.setNodeValue(nodeValue);
+ }
+
+ @Override
+ public short getNodeType() {
+ return textNode.getNodeType();
+ }
+
+ @Override
+ public Node getParentNode() {
+ return textNode.getParentNode();
+ }
+
+ @Override
+ public NodeList getChildNodes() {
+ return textNode.getChildNodes();
+ }
+
+ @Override
+ public Node getFirstChild() {
+ return textNode.getFirstChild();
+ }
+
+ @Override
+ public Node getLastChild() {
+ return textNode.getLastChild();
+ }
+
+ @Override
+ public Node getPreviousSibling() {
+ return textNode.getPreviousSibling();
+ }
+
+ @Override
+ public Node getNextSibling() {
+ return textNode.getNextSibling();
+ }
+
+ @Override
+ public NamedNodeMap getAttributes() {
+ return textNode.getAttributes();
+ }
+
+ @Override
+ public Document getOwnerDocument() {
+ return textNode.getOwnerDocument();
+ }
+
+ @Override
+ public Node insertBefore(Node newChild, Node refChild) throws DOMException {
+ return textNode.insertBefore(newChild, refChild);
+ }
+
+ @Override
+ public Node replaceChild(Node newChild, Node oldChild) throws DOMException {
+ return textNode.replaceChild(newChild, oldChild);
+ }
+
+ @Override
+ public Node removeChild(Node oldChild) throws DOMException {
+ return textNode.removeChild(oldChild);
+ }
+
+ @Override
+ public Node appendChild(Node newChild) throws DOMException {
+ return textNode.appendChild(newChild);
+ }
+
+ @Override
+ public boolean hasChildNodes() {
+ return textNode.hasChildNodes();
+ }
+
+ @Override
+ public Node cloneNode(boolean deep) {
+ return textNode.cloneNode(deep);
+ }
+
+ @Override
+ public void normalize() {
+ textNode.normalize();
+ }
+
+ @Override
+ public boolean isSupported(String feature, String version) {
+ return textNode.isSupported(feature, version);
+ }
+
+ @Override
+ public String getNamespaceURI() {
+ return textNode.getNamespaceURI();
+ }
+
+ @Override
+ public String getPrefix() {
+ return textNode.getPrefix();
+ }
+
+ @Override
+ public void setPrefix(String prefix) throws DOMException {
+ textNode.setPrefix(prefix);
+ }
+
+ @Override
+ public String getLocalName() {
+ return textNode.getLocalName();
+ }
+
+ @Override
+ public boolean hasAttributes() {
+ return textNode.hasAttributes();
+ }
+
+ @Override
+ public String getBaseURI() {
+ return textNode.getBaseURI();
+ }
+
+ @Override
+ public short compareDocumentPosition(Node other) throws DOMException {
+ return textNode.compareDocumentPosition(other);
+ }
+
+ @Override
+ public String getTextContent() throws DOMException {
+ return textNode.getTextContent();
+ }
+
+ @Override
+ public void setTextContent(String textContent) throws DOMException {
+ textNode.setTextContent(textContent);
+ }
+
+ @Override
+ public boolean isSameNode(Node other) {
+ return textNode.isSameNode(other);
+ }
+
+ @Override
+ public String lookupPrefix(String namespaceURI) {
+ return textNode.lookupPrefix(namespaceURI);
+ }
+
+ @Override
+ public boolean isDefaultNamespace(String namespaceURI) {
+ return textNode.isDefaultNamespace(namespaceURI);
+ }
+
+ @Override
+ public String lookupNamespaceURI(String prefix) {
+ return textNode.lookupNamespaceURI(prefix);
+ }
+
+ @Override
+ public boolean isEqualNode(Node arg) {
+ return textNode.isEqualNode(arg);
+ }
+
+ @Override
+ public Object getFeature(String feature, String version) {
+ return textNode.getFeature(feature, version);
+ }
+
+ @Override
+ public Object setUserData(String key, Object data, UserDataHandler handler) {
+ return textNode.setUserData(key, data, handler);
+ }
+
+ @Override
+ public Object getUserData(String key) {
+ return textNode.getUserData(key);
+ }
+
protected static final Logger log =
Logger.getLogger(LogDomainConstants.SOAP_IMPL_DOMAIN,
"com.sun.xml.internal.messaging.saaj.soap.impl.LocalStrings");
+ private Text textNode;
+
public SOAPTextImpl(SOAPDocumentImpl ownerDoc, String text) {
- super(ownerDoc, text);
+ textNode = ownerDoc.getDomDocument().createTextNode(text);
+ ownerDoc.register(this);
}
public String getValue() {
String nodeValue = getNodeValue();
return (nodeValue.equals("") ? null : nodeValue);
@@ -68,11 +322,11 @@
public void detachNode() {
org.w3c.dom.Node parent = getParentNode();
if (parent != null) {
- parent.removeChild(this);
+ parent.removeChild(getDomElement());
}
}
public void recycleNode() {
detachNode();
@@ -86,6 +340,10 @@
if (txt == null) {
return false;
}
return txt.startsWith("<!--") && txt.endsWith("-->");
}
+
+ public Text getDomElement() {
+ return textNode;
+ }
}
< prev index next >