You are viewing a plain text version of this content. The canonical link for it is here.
Posted to sandesha-dev@ws.apache.org by ch...@apache.org on 2006/09/07 14:00:11 UTC
svn commit: r441059 - in
/webservices/sandesha/trunk/java/src/org/apache/sandesha2:
util/MessageRetransmissionAdjuster.java workers/SenderWorker.java
Author: chamikara
Date: Thu Sep 7 05:00:10 2006
New Revision: 441059
URL: http://svn.apache.org/viewvc?view=rev&rev=441059
Log:
Patch from Andrew.
Modified:
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/MessageRetransmissionAdjuster.java
webservices/sandesha/trunk/java/src/org/apache/sandesha2/workers/SenderWorker.java
Modified: webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/MessageRetransmissionAdjuster.java
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/MessageRetransmissionAdjuster.java?view=diff&rev=441059&r1=441058&r2=441059
==============================================================================
--- webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/MessageRetransmissionAdjuster.java (original)
+++ webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/MessageRetransmissionAdjuster.java Thu Sep 7 05:00:10 2006
@@ -28,8 +28,6 @@
import org.apache.sandesha2.client.SandeshaClientConstants;
import org.apache.sandesha2.client.SandeshaListener;
import org.apache.sandesha2.client.SequenceReport;
-import org.apache.sandesha2.i18n.SandeshaMessageHelper;
-import org.apache.sandesha2.i18n.SandeshaMessageKeys;
import org.apache.sandesha2.storage.StorageManager;
import org.apache.sandesha2.storage.beans.SenderBean;
@@ -42,22 +40,17 @@
private static final Log log = LogFactory.getLog(MessageRetransmissionAdjuster.class);
- public boolean adjustRetransmittion(SenderBean retransmitterBean, ConfigurationContext configContext,
+ public static boolean adjustRetransmittion(RMMsgContext rmMsgCtx, SenderBean retransmitterBean, ConfigurationContext configContext,
StorageManager storageManager) throws SandeshaException {
- String storedKey = (String) retransmitterBean.getMessageContextRefKey();
-
- if (storedKey == null)
- throw new SandeshaException(SandeshaMessageHelper.getMessage(SandeshaMessageKeys.storedKeyNotPresent));
-
- MessageContext messageContext = storageManager.retrieveMessageContext(storedKey, configContext);
- RMMsgContext rmMsgCtx = MsgInitializer.initializeMessage(messageContext);
+ if (log.isDebugEnabled())
+ log.debug("Enter: MessageRetransmissionAdjuster::adjustRetransmittion");
String internalSequenceID = retransmitterBean.getInternalSequenceID();
String sequenceID = retransmitterBean.getSequenceID();
// operation is the lowest level Sandesha2 could be attached.
- SandeshaPropertyBean propertyBean = SandeshaUtil.getPropertyBean(messageContext.getAxisOperation());
+ SandeshaPropertyBean propertyBean = SandeshaUtil.getPropertyBean(rmMsgCtx.getMessageContext().getAxisOperation());
retransmitterBean.setSentCount(retransmitterBean.getSentCount() + 1);
adjustNextRetransmissionTime(retransmitterBean, propertyBean);
@@ -78,10 +71,12 @@
// Only messages of outgoing sequences get retransmitted. So named
// following method according to that.
- finalizeTimedOutSequence(internalSequenceID, sequenceID, messageContext, storageManager);
+ finalizeTimedOutSequence(internalSequenceID, sequenceID, rmMsgCtx.getMessageContext(), storageManager);
continueSending = false;
}
+ if (log.isDebugEnabled())
+ log.debug("Exit: MessageRetransmissionAdjuster::adjustRetransmittion, " + continueSending);
return continueSending;
}
@@ -94,7 +89,7 @@
* @param policyBean
* @return
*/
- private SenderBean adjustNextRetransmissionTime(SenderBean retransmitterBean, SandeshaPropertyBean propertyBean) {
+ private static SenderBean adjustNextRetransmissionTime(SenderBean retransmitterBean, SandeshaPropertyBean propertyBean) {
// long lastSentTime = retransmitterBean.getTimeToSend();
@@ -117,11 +112,11 @@
return retransmitterBean;
}
- private void stopRetransmission(SenderBean bean) {
+ private static void stopRetransmission(SenderBean bean) {
bean.setSend(false);
}
- private long generateNextExponentialBackedoffDifference(int count, long initialInterval) {
+ private static long generateNextExponentialBackedoffDifference(int count, long initialInterval) {
long interval = initialInterval;
for (int i = 1; i < count; i++) {
interval = interval * 2;
@@ -130,7 +125,7 @@
return interval;
}
- private void finalizeTimedOutSequence(String internalSequenceID, String sequenceID, MessageContext messageContext,
+ private static void finalizeTimedOutSequence(String internalSequenceID, String sequenceID, MessageContext messageContext,
StorageManager storageManager) throws SandeshaException {
ConfigurationContext configurationContext = messageContext.getConfigurationContext();
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=441059&r1=441058&r2=441059
==============================================================================
--- webservices/sandesha/trunk/java/src/org/apache/sandesha2/workers/SenderWorker.java (original)
+++ webservices/sandesha/trunk/java/src/org/apache/sandesha2/workers/SenderWorker.java Thu Sep 7 05:00:10 2006
@@ -35,9 +35,9 @@
public class SenderWorker extends SandeshaWorker implements Runnable {
- ConfigurationContext configurationContext = null;
- String messageId = null;
- Log log = LogFactory.getLog(SenderWorker.class);
+ private ConfigurationContext configurationContext = null;
+ private String messageId = null;
+ private static final Log log = LogFactory.getLog(SenderWorker.class);
public SenderWorker (ConfigurationContext configurationContext, String messageId) {
this.configurationContext = configurationContext;
@@ -59,8 +59,9 @@
MessageContext msgCtx = storageManager.retrieveMessageContext(key, configurationContext);
msgCtx.setProperty(Sandesha2Constants.WITHIN_TRANSACTION, Sandesha2Constants.VALUE_TRUE);
- MessageRetransmissionAdjuster retransmitterAdjuster = new MessageRetransmissionAdjuster();
- boolean continueSending = retransmitterAdjuster.adjustRetransmittion(senderBean, configurationContext,
+ RMMsgContext rmMsgCtx = MsgInitializer.initializeMessage(msgCtx);
+
+ boolean continueSending = MessageRetransmissionAdjuster.adjustRetransmittion(rmMsgCtx, senderBean, configurationContext,
storageManager);
if (!continueSending) {
return;
@@ -86,8 +87,6 @@
log.debug(SandeshaMessageHelper.getMessage(SandeshaMessageKeys.sendHasUnavailableMsgEntry));
return;
}
-
- RMMsgContext rmMsgCtx = MsgInitializer.initializeMessage(msgCtx);
// operation is the lowest level Sandesha2 should be attached
ArrayList msgsNotToSend = SandeshaUtil.getPropertyBean(msgCtx.getAxisOperation()).getMsgTypesToDrop();
---------------------------------------------------------------------
To unsubscribe, e-mail: sandesha-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: sandesha-dev-help@ws.apache.org