Author: mlovett
Date: Wed Feb 28 04:40:50 2007
New Revision: 512732

URL: http://svn.apache.org/viewvc?view=rev&rev=512732
Log:
Ensure that we always signal a transport, if one is waiting as we send a message

Modified:
    
webservices/sandesha/trunk/java/src/org/apache/sandesha2/workers/SenderWorker.java

Modified: 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/workers/SenderWorker.java
URL: 
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/workers/SenderWorker.java?view=diff&rev=512732&r1=512731&r2=512732
==============================================================================
--- 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/workers/SenderWorker.java
 (original)
+++ 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/workers/SenderWorker.java
 Wed Feb 28 04:40:50 2007
@@ -134,21 +134,21 @@
                        RequestResponseTransport t = null;
                        Boolean makeConnection = (Boolean) 
msgCtx.getProperty(Sandesha2Constants.MAKE_CONNECTION_RESPONSE);
                        EndpointReference toEPR = msgCtx.getTo();
-                       if((toEPR!=null && toEPR.hasAnonymousAddress()) &&
-                               (makeConnection == null || 
!makeConnection.booleanValue())) {
 
-                               MessageContext inMsg = null;
-                               OperationContext op = 
msgCtx.getOperationContext();
-                               if (op != null)
-                                       inMsg = 
op.getMessageContext(WSDLConstants.MESSAGE_LABEL_IN_VALUE);
-                               if (inMsg != null)
-                                       t = (RequestResponseTransport) 
inMsg.getProperty(RequestResponseTransport.TRANSPORT_CONTROL);
-
-                               if (t == null || 
!t.getStatus().equals(RequestResponseTransportStatus.WAITING)) {
-                                       if (log.isDebugEnabled())
-                                               log.debug("Exit: 
SenderWorker::run, no response transport for anonymous message");
-                                       return;
-                               }
+                       MessageContext inMsg = null;
+                       OperationContext op = msgCtx.getOperationContext();
+                       if (op != null)
+                               inMsg = 
op.getMessageContext(WSDLConstants.MESSAGE_LABEL_IN_VALUE);
+                       if (inMsg != null)
+                               t = (RequestResponseTransport) 
inMsg.getProperty(RequestResponseTransport.TRANSPORT_CONTROL);
+
+                       // If we are anonymous, and this is not a 
makeConnection, then we must have a transport waiting
+                       if((toEPR==null || toEPR.hasAnonymousAddress()) &&
+                          (makeConnection == null || 
!makeConnection.booleanValue()) &&
+                          (t == null || 
!t.getStatus().equals(RequestResponseTransportStatus.WAITING))) {
+                               if (log.isDebugEnabled())
+                                       log.debug("Exit: SenderWorker::run, no 
response transport for anonymous message");
+                               return;
                        }
                        
                        boolean continueSending = 
updateMessage(rmMsgCtx,senderBean,storageManager);
@@ -235,7 +235,7 @@
                                if(response != InvocationResponse.SUSPEND) {
                                        if(t != null) {
                                                if(log.isDebugEnabled()) 
log.debug("Signalling transport in " + t);
-                                               if(t != null) 
t.signalResponseReady();
+                                               t.signalResponseReady();
                                        }
                                }
                                



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to