Author: mckierna
Date: Wed Jun 25 04:07:28 2008
New Revision: 671508

URL: http://svn.apache.org/viewvc?rev=671508&view=rev
Log:
Allow for non reliable messages and further bug with replay model

Modified:
    
webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/Sandesha2Constants.java
    
webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/handlers/SandeshaInHandler.java
    
webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/msgprocessors/SequenceProcessor.java

Modified: 
webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/Sandesha2Constants.java
URL: 
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/Sandesha2Constants.java?rev=671508&r1=671507&r2=671508&view=diff
==============================================================================
--- 
webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/Sandesha2Constants.java
 (original)
+++ 
webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/Sandesha2Constants.java
 Wed Jun 25 04:07:28 2008
@@ -586,6 +586,8 @@
        
        static final String MSG_NO_OF_IN_MSG = "MsgNoOfInMsg";
        
+       static final String FORCE_ALLOW_UNRELIABLE_MSG = 
"forceAllowUnreliableMessage";
+       
        static final String MAKE_CONNECTION_RESPONSE = "MakeConnectionResponse";
        
        static final String SERVICE_CONTAINS_OUT_IN_MEPS = 
"ServiceContainsOutInMeps";

Modified: 
webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/handlers/SandeshaInHandler.java
URL: 
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/handlers/SandeshaInHandler.java?rev=671508&r1=671507&r2=671508&view=diff
==============================================================================
--- 
webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/handlers/SandeshaInHandler.java
 (original)
+++ 
webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/handlers/SandeshaInHandler.java
 Wed Jun 25 04:07:28 2008
@@ -117,7 +117,8 @@
 
                                SandeshaPolicyBean propertyBean = SandeshaUtil
                                                
.getPropertyBean(msgCtx.getAxisOperation());
-                               if (propertyBean.isEnforceRM()) {
+                               
+                               if (propertyBean.isEnforceRM() && 
!Boolean.valueOf((String)msgCtx.getProperty(Sandesha2Constants.FORCE_ALLOW_UNRELIABLE_MSG)))
 {
                                        String message = 
SandeshaMessageHelper.getMessage(
                                                        
SandeshaMessageKeys.rmEnforceFailure, msgCtx.getMessageID());
                                        log.warn(message);

Modified: 
webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/msgprocessors/SequenceProcessor.java
URL: 
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/msgprocessors/SequenceProcessor.java?rev=671508&r1=671507&r2=671508&view=diff
==============================================================================
--- 
webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/msgprocessors/SequenceProcessor.java
 (original)
+++ 
webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/msgprocessors/SequenceProcessor.java
 Wed Jun 25 04:07:28 2008
@@ -170,6 +170,8 @@
                }
                
                EndpointReference replyTo = rmMsgCtx.getReplyTo();
+               if (log.isDebugEnabled())
+                       log.debug("SequenceProcessor::processReliableMessage 
replyTo = " + replyTo);
                
                // updating the Highest_In_Msg_No property which gives the 
highest
                // message number retrieved from this sequence.
@@ -236,8 +238,11 @@
                        //replied), the client may take this as a InOnly 
message and may avoid looking for the application
                        //response if using replay.
                        //Therefore we only send acks back in the anon InOnly 
case.
-                       if (WSDLConstants.MEP_CONSTANT_IN_ONLY == 
rmMsgCtx.getMessageContext().getAxisOperation().getAxisSpecificMEPConstant() && 
-                                       (replyTo==null || 
replyTo.getAddress()==null || replyTo.isWSAddressingAnonymous() )) {
+                       int msgExchangePattern = 
rmMsgCtx.getMessageContext().getAxisOperation().getAxisSpecificMEPConstant();
+                       if (log.isDebugEnabled())
+                               log.debug("SequenceProcessor:: mep= " + 
msgExchangePattern);    
+                       if (WSDLConstants.MEP_CONSTANT_IN_ONLY ==  
msgExchangePattern && 
+                                       (replyTo==null || 
replyTo.getAddress()==null || replyTo.isWSAddressingAnonymous() || 
replyTo.hasNoneAddress())) {
                                sendAckIfNeeded(bean, sequenceId, rmMsgCtx, 
storageManager, true, acksTo.hasAnonymousAddress());        
                        }
                        



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

Reply via email to