Author: nthaker
Date: Fri Nov 5 15:33:41 2010
New Revision: 1031629
URL: http://svn.apache.org/viewvc?rev=1031629&view=rev
Log:
This is a performance improvement change. This performance change calculated
MTOM Threshold values only when JAX-WS runtime detects that application is
going to send/receive MTOM attachments.
The code contribution for this change is provided by Doug Larson of IBM.
Modified:
axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/transport/TransportUtils.java
axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/transport/http/SOAPMessageFormatter.java
Modified:
axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/transport/TransportUtils.java
URL:
http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/transport/TransportUtils.java?rev=1031629&r1=1031628&r2=1031629&view=diff
==============================================================================
---
axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/transport/TransportUtils.java
(original)
+++
axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/transport/TransportUtils.java
Fri Nov 5 15:33:41 2010
@@ -525,14 +525,15 @@ public class TransportUtils {
}
Attachments attachments = msgContext.getAttachmentMap();
- LifecycleManager lcm =
(LifecycleManager)msgContext.getRootContext().getAxisConfiguration().getParameterValue(DeploymentConstants.ATTACHMENTS_LIFECYCLE_MANAGER);
+
if (attachments != null) {
// Get the list of Content IDs for the attachments...but does
not try to pull the stream for new attachments.
// (Pulling the stream for new attachments will probably
fail...the stream is probably closed)
List keys = attachments.getContentIDList();
- if (keys != null) {
+ if (keys != null && keys.size() > 0) {
String key = null;
File file = null;
+ LifecycleManager lcm =
(LifecycleManager)msgContext.getRootContext().getAxisConfiguration().getParameterValue(DeploymentConstants.ATTACHMENTS_LIFECYCLE_MANAGER);
DataSource dataSource = null;
for (int i = 0; i < keys.size(); i++) {
try {
Modified:
axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/transport/http/SOAPMessageFormatter.java
URL:
http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/transport/http/SOAPMessageFormatter.java?rev=1031629&r1=1031628&r2=1031629&view=diff
==============================================================================
---
axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/transport/http/SOAPMessageFormatter.java
(original)
+++
axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/transport/http/SOAPMessageFormatter.java
Fri Nov 5 15:33:41 2010
@@ -55,14 +55,15 @@ public class SOAPMessageFormatter implem
}
OMElement element = msgCtxt.getEnvelope();
- int optimizedThreshold = Utils.getMtomThreshold(msgCtxt);
- if(optimizedThreshold > 0){
- if(log.isDebugEnabled()){
- log.debug("Setting MTOM optimized Threshold Value on
OMOutputFormat");
- }
- format.setOptimizedThreshold(optimizedThreshold);
- }
-
+ if (msgCtxt.isDoingMTOM()) {
+ int optimizedThreshold = Utils.getMtomThreshold(msgCtxt);
+ if(optimizedThreshold > 0){
+ if(log.isDebugEnabled()){
+ log.debug("Setting MTOM optimized Threshold Value on
OMOutputFormat");
+ }
+ format.setOptimizedThreshold(optimizedThreshold);
+ }
+ }
try {
if (!(format.isOptimized()) && format.isDoingSWA()) {
// Write the SOAPBody to an output stream