Author: mlovett
Date: Fri Dec  8 03:46:23 2006
New Revision: 483955

URL: http://svn.apache.org/viewvc?view=rev&rev=483955
Log:
Fix a timing window in reply sequence termination, add trace to beans, and 
ensure ack messages know that they are flowing out.

Modified:
    
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/AcknowledgementProcessor.java
    
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/TerminateSeqMsgProcessor.java
    
webservices/sandesha/trunk/java/src/org/apache/sandesha2/storage/beans/CreateSeqBean.java
    
webservices/sandesha/trunk/java/src/org/apache/sandesha2/storage/beans/InvokerBean.java
    
webservices/sandesha/trunk/java/src/org/apache/sandesha2/storage/beans/NextMsgBean.java
    
webservices/sandesha/trunk/java/src/org/apache/sandesha2/storage/beans/SenderBean.java
    
webservices/sandesha/trunk/java/src/org/apache/sandesha2/storage/beans/SequencePropertyBean.java
    
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/AcknowledgementManager.java

Modified: 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/AcknowledgementProcessor.java
URL: 
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/AcknowledgementProcessor.java?view=diff&rev=483955&r1=483954&r2=483955
==============================================================================
--- 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/AcknowledgementProcessor.java
 (original)
+++ 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/AcknowledgementProcessor.java
 Fri Dec  8 03:46:23 2006
@@ -130,6 +130,7 @@
                        secManager.checkProofOfPossession(token, soapHeader, 
msgCtx);
                }
                
+               if(log.isDebugEnabled()) log.debug("Got Ack for RM Sequence: " 
+ outSequenceId + ", propertyKey: " + sequencePropertyKey);
                Iterator ackRangeIterator = 
sequenceAck.getAcknowledgementRanges().iterator();
                Iterator nackIterator = sequenceAck.getNackList().iterator();
 

Modified: 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/TerminateSeqMsgProcessor.java
URL: 
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/TerminateSeqMsgProcessor.java?view=diff&rev=483955&r1=483954&r2=483955
==============================================================================
--- 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/TerminateSeqMsgProcessor.java
 (original)
+++ 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/TerminateSeqMsgProcessor.java
 Fri Dec  8 03:46:23 2006
@@ -223,6 +223,13 @@
                                                        
Sandesha2Constants.SequenceProperties.HIGHEST_OUT_MSG_NUMBER, storageManager);
                                        highestOutMsgNo = 
Long.parseLong(highOutMessageNumberString);
                                        addResponseSideTerminate = true;
+                                       
+                                       // It is possible that the message has 
gone out, but not been acked yet. In that case
+                                       // we can store the 
HIGHEST_OUT_MSG_NUMBER as the LAST_OUT_MESSAGE_NO, so that when the
+                                       // ack arrives we will terminate the 
sequence
+                                       SequencePropertyBean lastOutMsgNoBean = 
new SequencePropertyBean(responseSideSequencePropertyKey,
+                                                       
Sandesha2Constants.SequenceProperties.LAST_OUT_MESSAGE_NO, 
highOutMessageNumberString);
+                                       seqPropMgr.insert(lastOutMsgNoBean);
                                }
                        }
 

Modified: 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/storage/beans/CreateSeqBean.java
URL: 
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/storage/beans/CreateSeqBean.java?view=diff&rev=483955&r1=483954&r2=483955
==============================================================================
--- 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/storage/beans/CreateSeqBean.java
 (original)
+++ 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/storage/beans/CreateSeqBean.java
 Fri Dec  8 03:46:23 2006
@@ -124,4 +124,15 @@
                this.referenceMessageStoreKey = referenceMessageStoreKey;
        }
        
+       public String toString() {
+               StringBuffer result = new StringBuffer();
+               result.append(this.getClass().getName());
+               result.append("\nSequence Id      : "); 
result.append(sequenceID);
+               result.append("\nInternal Seq Id  : "); 
result.append(internalSequenceID);
+               result.append("\nCreateSeq Msg Id : "); 
result.append(createSeqMsgID);
+               result.append("\nHas SecurityToken: "); 
result.append(securityTokenData != null && securityTokenData.length() > 0);
+               result.append("\nCreateSeq Msg Key: "); 
result.append(createSequenceMsgStoreKey);
+               result.append("\nReference Msg Key: "); 
result.append(referenceMessageStoreKey);
+               return result.toString();
+       }
 }

Modified: 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/storage/beans/InvokerBean.java
URL: 
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/storage/beans/InvokerBean.java?view=diff&rev=483955&r1=483954&r2=483955
==============================================================================
--- 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/storage/beans/InvokerBean.java
 (original)
+++ 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/storage/beans/InvokerBean.java
 Fri Dec  8 03:46:23 2006
@@ -114,4 +114,14 @@
        public void setInvoked(boolean invoked) {
                this.invoked = invoked;
        }
-}
\ No newline at end of file
+       
+       public String toString() {
+               StringBuffer result = new StringBuffer();
+               result.append(this.getClass().getName());
+               result.append("\nSequence Id: "); result.append(sequenceID);
+               result.append("\nMsg Number : "); result.append(msgNo);
+               result.append("\nInvoked    : "); result.append(invoked);
+               result.append("\nMessage Key: "); 
result.append(messageContextRefKey);
+               return result.toString();
+       }
+}

Modified: 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/storage/beans/NextMsgBean.java
URL: 
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/storage/beans/NextMsgBean.java?view=diff&rev=483955&r1=483954&r2=483955
==============================================================================
--- 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/storage/beans/NextMsgBean.java
 (original)
+++ 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/storage/beans/NextMsgBean.java
 Fri Dec  8 03:46:23 2006
@@ -106,4 +106,13 @@
                this.referenceMessageKey = referenceMessageKey;
        }
        
-}
\ No newline at end of file
+       public String toString() {
+               StringBuffer result = new StringBuffer();
+               result.append(this.getClass().getName());
+               result.append("\nSequence Id: "); result.append(sequenceID);
+               result.append("\nNext Msg # : "); 
result.append(nextMsgNoToProcess);
+               result.append("\nPolling    : "); result.append(pollingMode);
+               result.append("\nRef Msg Key: "); 
result.append(referenceMessageKey);
+               return result.toString();
+       }
+}

Modified: 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/storage/beans/SenderBean.java
URL: 
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/storage/beans/SenderBean.java?view=diff&rev=483955&r1=483954&r2=483955
==============================================================================
--- 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/storage/beans/SenderBean.java
 (original)
+++ 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/storage/beans/SenderBean.java
 Fri Dec  8 03:46:23 2006
@@ -212,4 +212,19 @@
                this.toAddress = toAddress;
        }
        
-}
\ No newline at end of file
+       public String toString() {
+               StringBuffer result = new StringBuffer();
+               // There is a lot of data in this bean, so we don't trace it 
all.
+               result.append(this.getClass().getName());
+               result.append("\nSequence Id    : "); result.append(sequenceID);
+               result.append("\nInternal Seq Id: "); 
result.append(internalSequenceID);
+               result.append("\nMessage Number : "); 
result.append(messageNumber);
+               result.append("\nMessage Type   : "); 
result.append(messageType);
+               result.append("\nMessage Key    : "); 
result.append(messageContextRefKey);
+               result.append("\nSend           : "); result.append(send);
+               result.append("\nResend         : "); result.append(reSend);
+               result.append("\nSent count     : "); result.append(sentCount);
+               result.append("\nTime to send   : "); result.append(timeToSend);
+               return result.toString();
+       }
+}

Modified: 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/storage/beans/SequencePropertyBean.java
URL: 
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/storage/beans/SequencePropertyBean.java?view=diff&rev=483955&r1=483954&r2=483955
==============================================================================
--- 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/storage/beans/SequencePropertyBean.java
 (original)
+++ 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/storage/beans/SequencePropertyBean.java
 Fri Dec  8 03:46:23 2006
@@ -80,4 +80,13 @@
        public void setValue(String value) {
                this.value = value;
        }
-}
\ No newline at end of file
+       
+       public String toString() {
+               StringBuffer result = new StringBuffer();
+               result.append(this.getClass().getName());
+               result.append("\nSeq Key :"); 
result.append(sequencePropertyKey);
+               result.append("\nName    :"); result.append(name);
+               result.append("\nValue   :"); result.append(value);
+               return result.toString();
+       }
+}

Modified: 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/AcknowledgementManager.java
URL: 
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/AcknowledgementManager.java?view=diff&rev=483955&r1=483954&r2=483955
==============================================================================
--- 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/AcknowledgementManager.java
 (original)
+++ 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/AcknowledgementManager.java
 Fri Dec  8 03:46:23 2006
@@ -233,6 +233,7 @@
                
ackMsgCtx.setProperty(Sandesha2Constants.APPLICATION_PROCESSING_DONE, "true");
 
                RMMsgContext ackRMMsgCtx = 
MsgInitializer.initializeMessage(ackMsgCtx);
+               ackRMMsgCtx.setFlow(MessageContext.OUT_FLOW);
                
ackRMMsgCtx.setRMNamespaceValue(referenceRMMessage.getRMNamespaceValue());
 
                ackMsgCtx.setMessageID(SandeshaUtil.getUUID());



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

Reply via email to