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/06/19 10:54:04 UTC
svn commit: r415263 - in
/webservices/sandesha/trunk/java/src/org/apache/sandesha2/workers:
InOrderInvoker.java Sender.java
Author: chamikara
Date: Mon Jun 19 01:54:04 2006
New Revision: 415263
URL: http://svn.apache.org/viewvc?rev=415263&view=rev
Log:
Applied the patch from Andrew
Modified:
webservices/sandesha/trunk/java/src/org/apache/sandesha2/workers/InOrderInvoker.java
webservices/sandesha/trunk/java/src/org/apache/sandesha2/workers/Sender.java
Modified: webservices/sandesha/trunk/java/src/org/apache/sandesha2/workers/InOrderInvoker.java
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/workers/InOrderInvoker.java?rev=415263&r1=415262&r2=415263&view=diff
==============================================================================
--- webservices/sandesha/trunk/java/src/org/apache/sandesha2/workers/InOrderInvoker.java (original)
+++ webservices/sandesha/trunk/java/src/org/apache/sandesha2/workers/InOrderInvoker.java Mon Jun 19 01:54:04 2006
@@ -20,7 +20,6 @@
import java.util.ArrayList;
import java.util.Iterator;
-import org.apache.axis2.AxisFault;
import org.apache.axis2.addressing.AddressingConstants;
import org.apache.axis2.context.ConfigurationContext;
import org.apache.axis2.context.MessageContext;
@@ -59,25 +58,48 @@
private static final Log log = LogFactory.getLog(InOrderInvoker.class);
public synchronized void stopInvokerForTheSequence(String sequenceID) {
+ if (log.isDebugEnabled())
+ log.debug("Enter: InOrderInvoker::stopInvokerForTheSequence, "+sequenceID);
+
workingSequences.remove(sequenceID);
if (workingSequences.size()==0) {
runInvoker = false;
}
+
+ if (log.isDebugEnabled())
+ log.debug("Exit: InOrderInvoker::stopInvokerForTheSequence");
}
public synchronized void stopInvoking () {
+ if (log.isDebugEnabled())
+ log.debug("Enter: InOrderInvoker::stopInvoking");
+
runInvoker = false;
+
+ if (log.isDebugEnabled())
+ log.debug("Exit: InOrderInvoker::stopInvoking");
}
public synchronized boolean isInvokerStarted() {
+ if (log.isDebugEnabled())
+ {
+ log.debug("Enter: InOrderInvoker::isInvokerStarted");
+ log.debug("Exit: InOrderInvoker::isInvokerStarted, " + runInvoker);
+ }
return runInvoker;
}
public void setConfugurationContext(ConfigurationContext context) {
+ if (log.isDebugEnabled())
+ log.debug("Enter: InOrderInvoker::setConfugurationContext");
this.context = context;
+ if (log.isDebugEnabled())
+ log.debug("Exit: InOrderInvoker::setConfugurationContext");
}
public synchronized void runInvokerForTheSequence(ConfigurationContext context, String sequenceID) {
+ if (log.isDebugEnabled())
+ log.debug("Enter: InOrderInvoker::runInvokerForTheSequence");
if (!workingSequences.contains(sequenceID))
workingSequences.add(sequenceID);
@@ -87,10 +109,14 @@
runInvoker = true; //so that isSenderStarted()=true.
super.start();
}
+ if (log.isDebugEnabled())
+ log.debug("Exit: InOrderInvoker::runInvokerForTheSequence");
}
public void run() {
-
+ if (log.isDebugEnabled())
+ log.debug("Enter: InOrderInvoker::run");
+
while (isInvokerStarted()) {
try {
@@ -115,12 +141,14 @@
transaction = storageManager.getTransaction();
//Getting the incomingSequenceIdList
- SequencePropertyBean allSequencesBean = (SequencePropertyBean) sequencePropMgr
+ SequencePropertyBean allSequencesBean = sequencePropMgr
.retrieve(
Sandesha2Constants.SequenceProperties.ALL_SEQUENCES,
Sandesha2Constants.SequenceProperties.INCOMING_SEQUENCE_LIST);
if (allSequencesBean == null) {
+ if (log.isDebugEnabled())
+ log.debug("AllSequencesBean not found");
continue;
}
ArrayList allSequencesList = SandeshaUtil.getArrayListFromString (allSequencesBean.getValue());
@@ -150,6 +178,8 @@
long nextMsgno = nextMsgBean.getNextMsgNoToProcess();
if (nextMsgno <= 0) {
+ if (log.isDebugEnabled())
+ log.debug("Invalid Next Message Number " + nextMsgno);
String message = "Invalid message number as the Next Message Number.";
throw new SandeshaException(message);
}
@@ -185,14 +215,20 @@
AxisEngine engine = new AxisEngine (context);
if (postFailureInvocation) {
makeMessageReadyForReinjection (msgToInvoke);
+ if (log.isDebugEnabled())
+ log.debug("Receiving message, key=" + key +", msgCtx=" + msgToInvoke.getEnvelope().getHeader());
engine.receive(msgToInvoke);
} else {
+ if (log.isDebugEnabled())
+ log.debug("Resuming message, key=" + key +", msgCtx=" + msgToInvoke.getEnvelope().getHeader());
engine.resume(msgToInvoke);
}
invoked = true;
} catch (Exception e) {
+ if (log.isDebugEnabled())
+ log.debug("Exception :", e);
throw new SandeshaException(e);
} finally {
transaction = storageManager.getTransaction();
@@ -252,6 +288,8 @@
}
}
}
+ if (log.isDebugEnabled())
+ log.debug("Exit: InOrderInvoker::run");
}
private void makeMessageReadyForReinjection (MessageContext messageContext) {
@@ -261,4 +299,4 @@
messageContext.getOptions().setAction(null);
messageContext.setProperty(Sandesha2Constants.REINJECTED_MESSAGE,Sandesha2Constants.VALUE_TRUE);
}
-}
\ No newline at end of file
+}
Modified: webservices/sandesha/trunk/java/src/org/apache/sandesha2/workers/Sender.java
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/workers/Sender.java?rev=415263&r1=415262&r2=415263&view=diff
==============================================================================
--- webservices/sandesha/trunk/java/src/org/apache/sandesha2/workers/Sender.java (original)
+++ webservices/sandesha/trunk/java/src/org/apache/sandesha2/workers/Sender.java Mon Jun 19 01:54:04 2006
@@ -62,21 +62,36 @@
private static final Log log = LogFactory.getLog(Sender.class);
public synchronized void stopSenderForTheSequence(String sequenceID) {
+ if (log.isDebugEnabled())
+ log.debug("Enter: Sender::stopSenderForTheSequence, " + sequenceID);
workingSequences.remove(sequenceID);
if (workingSequences.size() == 0) {
runSender = false;
}
+ if (log.isDebugEnabled())
+ log.debug("Exit: Sender::stopSenderForTheSequence");
}
public synchronized void stopSending () {
+ if (log.isDebugEnabled())
+ log.debug("Enter: Sender::stopSending");
runSender = false;
+ if (log.isDebugEnabled())
+ log.debug("Exit: Sender::stopSending");
}
public synchronized boolean isSenderStarted() {
+ if (log.isDebugEnabled())
+ {
+ log.debug("Enter: Sender::isSenderStarted");
+ log.debug("Exit: Sender::isSenderStarted, " + runSender);
+ }
return runSender;
}
public void run() {
+ if (log.isDebugEnabled())
+ log.debug("Enter: Sender::run");
StorageManager storageManager = null;
@@ -84,7 +99,7 @@
storageManager = SandeshaUtil.getSandeshaStorageManager(context,context.getAxisConfiguration());
} catch (SandeshaException e2) {
// TODO Auto-generated catch block
- log.debug("ERROR: Could not start sender");
+ log.debug("ERROR: Could not start sender", e2);
e2.printStackTrace();
return;
}
@@ -115,10 +130,12 @@
SenderBeanMgr mgr = storageManager.getRetransmitterBeanMgr();
SenderBean senderBean = mgr.getNextMsgToSend();
if (senderBean==null) {
+ if (log.isDebugEnabled())
+ log.debug("SenderBean not found");
continue;
}
- String key = (String) senderBean.getMessageContextRefKey();
+ String key = senderBean.getMessageContextRefKey();
MessageContext msgCtx = storageManager.retrieveMessageContext(key, context);
msgCtx.setProperty(Sandesha2Constants.WITHIN_TRANSACTION,Sandesha2Constants.VALUE_TRUE);
@@ -189,6 +206,8 @@
//But this has a performance reduction.
msgCtx.getEnvelope().build();
+ if (log.isDebugEnabled())
+ log.debug("Invoking using transportSender " + transportSender + ", msgCtx=" + msgCtx.getEnvelope().getHeader());
//TODO change this to cater for security.
transportSender.invoke(msgCtx);
successfullySent = true;
@@ -263,10 +282,14 @@
}
}
}
+ if (log.isDebugEnabled())
+ log.debug("Exit: Sender::run");
}
public synchronized void runSenderForTheSequence(
ConfigurationContext context, String sequenceID) {
+ if (log.isDebugEnabled())
+ log.debug("Enter: Sender::runSenderForTheSequence, " + sequenceID);
if (sequenceID != null && !workingSequences.contains(sequenceID))
workingSequences.add(sequenceID);
@@ -276,6 +299,8 @@
runSender = true; // so that isSenderStarted()=true.
super.start();
}
+ if (log.isDebugEnabled())
+ log.debug("Exit: Sender::runSenderForTheSequence");
}
private void updateMessage(MessageContext msgCtx1) throws SandeshaException {
@@ -284,6 +309,8 @@
private void checkForSyncResponses(MessageContext msgCtx)
throws SandeshaException {
+ if (log.isDebugEnabled())
+ log.debug("Enter: Sender::checkForSyncResponses, " + msgCtx.getEnvelope().getHeader());
try {
@@ -355,17 +382,23 @@
} catch (Exception e) {
String message = "No valid Sync response...";
- log.debug(message);
+ log.debug(message, e);
throw new SandeshaException(message, e);
}
+ if (log.isDebugEnabled())
+ log.debug("Exit: Sender::checkForSyncResponses");
}
private boolean isAckPiggybackableMsgType(int messageType) {
- boolean piggybackable = true;
-
+ if (log.isDebugEnabled())
+ log.debug("Enter: Sender::isAckPiggybackableMsgType, " + messageType);
+ boolean piggybackable = true;
+
if (messageType==Sandesha2Constants.MessageTypes.ACK)
piggybackable = false;
+ if (log.isDebugEnabled())
+ log.debug("Exit: Sender::isAckPiggybackableMsgType, " + piggybackable);
return piggybackable;
}
@@ -377,11 +410,18 @@
}
private boolean isFaultEnvelope (SOAPEnvelope envelope) throws SandeshaException {
+ if (log.isDebugEnabled())
+ log.debug("Enter: Sender::isFaultEnvelope, " + envelope.getBody().getFault());
SOAPFault fault = envelope.getBody().getFault();
- if (fault!=null)
+ if (fault!=null) {
+ if (log.isDebugEnabled())
+ log.debug("Exit: Sender::isFaultEnvelope, TRUE");
return true;
- else
- return false;
+ }
+
+ if (log.isDebugEnabled())
+ log.debug("Exit: Sender::isFaultEnvelope, FALSE");
+ return false;
}
-}
\ No newline at end of file
+}
---------------------------------------------------------------------
To unsubscribe, e-mail: sandesha-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: sandesha-dev-help@ws.apache.org