Author: mlovett
Date: Wed Jan 17 07:48:13 2007
New Revision: 497051
URL: http://svn.apache.org/viewvc?view=rev&rev=497051
Log:
Remove unnecessary store-and-restore of the message context when polling
Modified:
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/MakeConnectionProcessor.java
webservices/sandesha/trunk/java/src/org/apache/sandesha2/workers/SenderWorker.java
Modified:
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/MakeConnectionProcessor.java
URL:
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/MakeConnectionProcessor.java?view=diff&rev=497051&r1=497050&r2=497051
==============================================================================
---
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/MakeConnectionProcessor.java
(original)
+++
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/MakeConnectionProcessor.java
Wed Jan 17 07:48:13 2007
@@ -118,16 +118,13 @@
context.addMessageContext(returnMessage);
returnMessage.setOperationContext(context);
- // Store the response again
- storageManager.updateMessageContext(messageStorageKey,
returnMessage);
-
//running the MakeConnection through a SenderWorker.
//This will allow Sandesha2 to consider both of following
senarios equally.
// 1. A message being sent by the Sender thread.
// 2. A message being sent as a reply to an MakeConnection.
- SenderWorker worker = new SenderWorker
(configurationContext,senderBean);
-
worker.setTransportOut(rmMsgCtx.getMessageContext().getTransportOut());
-
+ SenderWorker worker = new SenderWorker (configurationContext,
senderBean);
+ worker.setMessage(returnRMMsg);
+
worker.run();
return false;
}
@@ -148,5 +145,6 @@
private void setTransportProperties (MessageContext returnMessage,
RMMsgContext makeConnectionMessage) {
returnMessage.setProperty(MessageContext.TRANSPORT_OUT,makeConnectionMessage.getProperty(MessageContext.TRANSPORT_OUT));
returnMessage.setProperty(Constants.OUT_TRANSPORT_INFO,makeConnectionMessage.getProperty(Constants.OUT_TRANSPORT_INFO));
+
returnMessage.setTransportOut(makeConnectionMessage.getMessageContext().getTransportOut());
}
}
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=497051&r1=497050&r2=497051
==============================================================================
---
webservices/sandesha/trunk/java/src/org/apache/sandesha2/workers/SenderWorker.java
(original)
+++
webservices/sandesha/trunk/java/src/org/apache/sandesha2/workers/SenderWorker.java
Wed Jan 17 07:48:13 2007
@@ -43,15 +43,15 @@
private ConfigurationContext configurationContext = null;
private SenderBean senderBean = null;
- private TransportOutDescription transportOut = null;
+ private RMMsgContext messageToSend = null;
public SenderWorker (ConfigurationContext configurationContext,
SenderBean senderBean) {
this.configurationContext = configurationContext;
this.senderBean = senderBean;
}
- public void setTransportOut (TransportOutDescription transportOut) {
- this.transportOut = transportOut;
+ public void setMessage(RMMsgContext msg) {
+ this.messageToSend = msg;
}
public void run () {
@@ -68,14 +68,21 @@
transaction = storageManager.getTransaction();
String key = senderBean.getMessageContextRefKey();
- MessageContext msgCtx =
storageManager.retrieveMessageContext(key, configurationContext);
+ MessageContext msgCtx = null;
+ RMMsgContext rmMsgCtx = null;
+ if(messageToSend != null) {
+ msgCtx = messageToSend.getMessageContext();
+ rmMsgCtx = messageToSend;
+ } else {
+ msgCtx =
storageManager.retrieveMessageContext(key, configurationContext);
- if (msgCtx == null) {
- // This sender bean has already been processed
- return;
- }
+ if (msgCtx == null) {
+ // This sender bean has already been
processed
+ return;
+ }
- RMMsgContext rmMsgCtx =
MsgInitializer.initializeMessage(msgCtx);
+ rmMsgCtx =
MsgInitializer.initializeMessage(msgCtx);
+ }
boolean continueSending =
MessageRetransmissionAdjuster.adjustRetransmittion(rmMsgCtx, senderBean,
configurationContext,
storageManager);
@@ -152,13 +159,6 @@
}
// sending the message
-
- //if a different TransportOutDesc hs already been set,
it will be used instead
- //of the one from te MessageContext.
-
- if (transportOut!=null)
- msgCtx.setTransportOut(transportOut);
-
boolean successfullySent = false;
// have to commit the transaction before sending. This
may
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]