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]