You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ws.apache.org by ve...@apache.org on 2015/09/20 21:44:44 UTC
svn commit: r1704178 - in
/webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common:
AxiomTextSupport.aj TextContent.java
Author: veithen
Date: Sun Sep 20 19:44:40 2015
New Revision: 1704178
URL: http://svn.apache.org/viewvc?rev=1704178&view=rev
Log:
Correctly encapsulate TextContent.
Modified:
webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/AxiomTextSupport.aj
webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/TextContent.java
Modified: webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/AxiomTextSupport.aj
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/AxiomTextSupport.aj?rev=1704178&r1=1704177&r2=1704178&view=diff
==============================================================================
--- webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/AxiomTextSupport.aj (original)
+++ webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/AxiomTextSupport.aj Sun Sep 20 19:44:40 2015
@@ -28,7 +28,6 @@ import org.apache.axiom.om.OMNamespace;
import org.apache.axiom.om.OMOutputFormat;
import org.apache.axiom.om.impl.common.serializer.push.OutputException;
import org.apache.axiom.om.impl.common.serializer.push.Serializer;
-import org.apache.axiom.util.UIDGenerator;
public aspect AxiomTextSupport {
private TextContent AxiomText.getTextContent(boolean force) {
@@ -46,28 +45,25 @@ public aspect AxiomTextSupport {
public final boolean AxiomText.isBinary() {
TextContent textContent = getTextContent(false);
- return textContent != null && textContent.binary;
+ return textContent != null && textContent.isBinary();
}
public final void AxiomText.setBinary(boolean binary) {
TextContent textContent = getTextContent(binary);
if (textContent != null) {
- textContent.binary = binary;
+ textContent.setBinary(binary);
}
}
public final boolean AxiomText.isOptimized() {
TextContent textContent = getTextContent(false);
- return textContent != null && textContent.optimize;
+ return textContent != null && textContent.isOptimize();
}
public final void AxiomText.setOptimize(boolean optimize) {
TextContent textContent = getTextContent(optimize);
if (textContent != null) {
- textContent.optimize = optimize;
- if (optimize) {
- textContent.binary = true;
- }
+ setOptimize(optimize);
}
}
@@ -113,23 +109,22 @@ public aspect AxiomTextSupport {
}
public final String AxiomText.getContentID() {
- TextContent textContent = getTextContent(true);
- if (textContent.contentID == null) {
- textContent.contentID = UIDGenerator.generateContentId();
- }
- return textContent.contentID;
+ return getTextContent(true).getContentID();
}
public final void AxiomText.internalSerialize(Serializer serializer, OMOutputFormat format, boolean cache) throws OutputException {
Object content = coreGetCharacterData();
if (content instanceof TextContent) {
TextContent textContent = (TextContent)content;
- if (!textContent.binary) {
- serializer.writeText(getType(), textContent.value);
- } else if (textContent.dataHandlerObject instanceof DataHandlerProvider) {
- serializer.writeDataHandler((DataHandlerProvider)textContent.dataHandlerObject, textContent.contentID, textContent.optimize);
+ if (textContent.isBinary()) {
+ Object dataHandlerObject = textContent.getDataHandlerObject();
+ if (dataHandlerObject instanceof DataHandlerProvider) {
+ serializer.writeDataHandler((DataHandlerProvider)dataHandlerObject, textContent.getContentID(), textContent.isOptimize());
+ } else {
+ serializer.writeDataHandler(textContent.getDataHandler(), textContent.getContentID(), textContent.isOptimize());
+ }
} else {
- serializer.writeDataHandler(textContent.getDataHandler(), textContent.contentID, textContent.optimize);
+ serializer.writeText(getType(), textContent.toString());
}
} else {
serializer.writeText(getType(), (String)content);
@@ -144,6 +139,6 @@ public aspect AxiomTextSupport {
}
public final void AxiomText.setContentID(String cid) {
- getTextContent(true).contentID = cid;
+ getTextContent(true).setContentID(cid);
}
}
Modified: webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/TextContent.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/TextContent.java?rev=1704178&r1=1704177&r2=1704178&view=diff
==============================================================================
--- webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/TextContent.java (original)
+++ webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/TextContent.java Sun Sep 20 19:44:40 2015
@@ -28,24 +28,25 @@ import org.apache.axiom.core.ClonePolicy
import org.apache.axiom.ext.stax.datahandler.DataHandlerProvider;
import org.apache.axiom.om.OMCloneOptions;
import org.apache.axiom.om.OMException;
+import org.apache.axiom.util.UIDGenerator;
import org.apache.axiom.util.base64.Base64Utils;
public final class TextContent implements CharacterData {
- final String value;
+ private final String value;
- final String mimeType;
+ private final String mimeType;
/** Field contentID for the mime part used when serializing Binary stuff as MTOM optimized. */
- String contentID;
+ private String contentID;
/**
* Contains a {@link DataHandler} or {@link DataHandlerProvider} object if the text node
* represents base64 encoded binary data.
*/
- Object dataHandlerObject;
+ private Object dataHandlerObject;
- boolean optimize;
- boolean binary;
+ private boolean optimize;
+ private boolean binary;
TextContent(String value) {
this.value = value;
@@ -84,6 +85,40 @@ public final class TextContent implement
this.binary = other.binary;
}
+ boolean isOptimize() {
+ return optimize;
+ }
+
+ void setOptimize(boolean optimize) {
+ this.optimize = optimize;
+ if (optimize) {
+ binary = true;
+ }
+ }
+
+ boolean isBinary() {
+ return binary;
+ }
+
+ void setBinary(boolean binary) {
+ this.binary = binary;
+ }
+
+ String getContentID() {
+ if (contentID == null) {
+ contentID = UIDGenerator.generateContentId();
+ }
+ return contentID;
+ }
+
+ void setContentID(String contentID) {
+ this.contentID = contentID;
+ }
+
+ Object getDataHandlerObject() {
+ return dataHandlerObject;
+ }
+
DataHandler getDataHandler() {
if (dataHandlerObject != null) {
if (dataHandlerObject instanceof DataHandlerProvider) {