Author: thilina
Date: Mon Sep 4 23:50:51 2006
New Revision: 440280
URL: http://svn.apache.org/viewvc?view=rev&rev=440280
Log:
Refactoring content type logic
Fixing the ImageSample Test
Modified:
webservices/commons/trunk/modules/axiom/modules/axiom-api/src/main/java/org/apache/axiom/om/OMOutputFormat.java
webservices/commons/trunk/modules/axiom/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/MIMEOutputUtils.java
webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/attachments/ImageSampleTest.java
Modified:
webservices/commons/trunk/modules/axiom/modules/axiom-api/src/main/java/org/apache/axiom/om/OMOutputFormat.java
URL:
http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/modules/axiom-api/src/main/java/org/apache/axiom/om/OMOutputFormat.java?view=diff&rev=440280&r1=440279&r2=440280
==============================================================================
---
webservices/commons/trunk/modules/axiom/modules/axiom-api/src/main/java/org/apache/axiom/om/OMOutputFormat.java
(original)
+++
webservices/commons/trunk/modules/axiom/modules/axiom-api/src/main/java/org/apache/axiom/om/OMOutputFormat.java
Mon Sep 4 23:50:51 2006
@@ -16,6 +16,7 @@
package org.apache.axiom.om;
+import org.apache.axiom.om.impl.MTOMConstants;
import org.apache.axiom.om.util.UUIDGenerator;
import org.apache.axiom.soap.SOAP11Constants;
import org.apache.axiom.soap.SOAP12Constants;
@@ -56,19 +57,20 @@
public String getContentType() {
String SOAPContentType;
- if (isOptimized()) {
- if (isSoap11) {
- SOAPContentType = SOAP11Constants.SOAP_11_CONTENT_TYPE;
- } else {
- SOAPContentType = SOAP12Constants.SOAP_12_CONTENT_TYPE;
- }
- return this.getContentTypeForMime(SOAPContentType);
+ if (isSoap11) {
+ SOAPContentType = SOAP11Constants.SOAP_11_CONTENT_TYPE;
} else {
- if (!isSoap11) {
- return SOAP12Constants.SOAP_12_CONTENT_TYPE;
- } else {
- return SOAP11Constants.SOAP_11_CONTENT_TYPE;
- }
+ SOAPContentType = SOAP12Constants.SOAP_12_CONTENT_TYPE;
+ }
+ // MTOM is given priority
+ if (isOptimized()) {
+ return this.getContentTypeForMime(SOAPContentType,
MTOMConstants.MTOM_TYPE);
+ } else if (isDoingSWA())
+ {
+ return this.getContentTypeForMime(SOAPContentType,
MTOMConstants.SWA_TYPE);
+ }
+ else {
+ return SOAPContentType;
}
}
@@ -150,14 +152,14 @@
this.doingSWA = doingSWA;
}
- public String getContentTypeForMime(String SOAPContentType) {
+ public String getContentTypeForMime(String SOAPContentType, String
type) {
StringBuffer sb = new StringBuffer();
sb.append("multipart/related");
sb.append("; ");
sb.append("boundary=");
sb.append(getMimeBoundary());
- sb.append("; ");
- sb.append("type=\"application/xop+xml\"");
+ sb.append("; ");
+ sb.append("type=\""+type+"\"");
sb.append("; ");
sb.append("start=\"<" + getRootContentId() + ">\"");
sb.append("; ");
Modified:
webservices/commons/trunk/modules/axiom/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/MIMEOutputUtils.java
URL:
http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/MIMEOutputUtils.java?view=diff&rev=440280&r1=440279&r2=440280
==============================================================================
---
webservices/commons/trunk/modules/axiom/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/MIMEOutputUtils.java
(original)
+++
webservices/commons/trunk/modules/axiom/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/MIMEOutputUtils.java
Mon Sep 4 23:50:51 2006
@@ -20,6 +20,8 @@
import org.apache.axiom.om.OMException;
import org.apache.axiom.om.OMOutputFormat;
import org.apache.axiom.om.OMText;
+import org.apache.axiom.soap.SOAP11Constants;
+import org.apache.axiom.soap.SOAP12Constants;
import javax.activation.DataHandler;
import javax.mail.MessagingException;
@@ -127,12 +129,36 @@
outStream.write(new byte[]{45, 45});
}
- public static void writeSOAPWithAttachementsMessage(OMElement
element,OutputStream outputStream, Map attachmentMap)
+ public static void writeSOAPWithAttachmentsMessage(StringWriter
writer,OutputStream outputStream, Map attachmentMap,OMOutputFormat format)
{
+// String SOAPContentType;
+// if (format.isSOAP11()) {
+// SOAPContentType = SOAP11Constants.SOAP_11_CONTENT_TYPE;
+// } else {
+// SOAPContentType = SOAP12Constants.SOAP_12_CONTENT_TYPE;
+// }
+// startWritingMime(outputStream, format.getMimeBoundary());
+//
+// javax.activation.DataHandler dh = new
javax.activation.DataHandler(writer.toString(),
+// "text/xml; charset=" + format.getCharSetEncoding());
+// MimeBodyPart rootMimeBodyPart = new MimeBodyPart();
+// rootMimeBodyPart.setDataHandler(dh);
+//
+// rootMimeBodyPart.addHeader("content-type",
+// "application/xop+xml; charset=" +
format.getCharSetEncoding() +
+// "; type=\""+SOAPContentType+"\";");
+// rootMimeBodyPart.addHeader("content-transfer-encoding", "binary");
+//
rootMimeBodyPart.addHeader("content-id","<"+format.getRootContentId()+">");
+//
+// writeBodyPart(outputStream, rootMimeBodyPart,
format.getMimeBoundary());
+//
+// Iterator attachmentIDIterator = attachmentMap.keySet().iterator();
+// while (binaryNodeIterator.hasNext()) {
+// OMText binaryNode = (OMText) binaryNodeIterator.next();
+// writeBodyPart(outStream, createMimeBodyPart(binaryNode),
+// boundary);
+// }
+// finishWritingMime(outStream);
- }
-
- public static void writeSOAPWithAttachmentsMessage(StringWriter
bufferedSOAPBody, ByteArrayOutputStream bytesOut, HashMap hashMap,
OMOutputFormat format2) {
- //TODO : Thilina please implement this :)
}
}
Modified:
webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/attachments/ImageSampleTest.java
URL:
http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/attachments/ImageSampleTest.java?view=diff&rev=440280&r1=440279&r2=440280
==============================================================================
---
webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/attachments/ImageSampleTest.java
(original)
+++
webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/attachments/ImageSampleTest.java
Mon Sep 4 23:50:51 2006
@@ -16,7 +16,6 @@
package org.apache.axiom.attachments;
-import java.awt.Graphics;
import java.awt.Image;
import java.awt.image.BufferedImage;
import java.io.BufferedReader;
@@ -48,8 +47,6 @@
import org.apache.axiom.om.impl.llom.OMTextImpl;
import org.apache.axiom.om.impl.mtom.MTOMStAXSOAPModelBuilder;
-import sun.reflect.ReflectionFactory.GetReflectionFactoryAction;
-
public class ImageSampleTest extends AbstractTestCase {
public ImageSampleTest(String testName) {
@@ -139,7 +136,6 @@
DataHandler actualDH;
actualDH = (DataHandler)blob.getDataHandler();
BufferedImage bufferedImage =
ImageIO.read(actualDH.getDataSource().getInputStream());
- ImageWriter writer = null;
this.saveImage("image/jpeg",bufferedImage, new
FileOutputStream(imageOutFileName) );
}
/**
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]