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 ga...@apache.org on 2007/06/11 14:33:06 UTC
svn commit: r546125 - in
/webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2:
msgprocessors/CreateSeqMsgProcessor.java
msgreceivers/RMMessageReceiver.java workers/SenderWorker.java
Author: gatfora
Date: Mon Jun 11 05:33:01 2007
New Revision: 546125
URL: http://svn.apache.org/viewvc?view=rev&rev=546125
Log:
Move Reliable messaging enabled check from CSProcessor to the RMMessageReceiver. Tidy up code in SenderWorker when looking up RMDBean
Modified:
webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/msgprocessors/CreateSeqMsgProcessor.java
webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/msgreceivers/RMMessageReceiver.java
webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/workers/SenderWorker.java
Modified: webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/msgprocessors/CreateSeqMsgProcessor.java
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/msgprocessors/CreateSeqMsgProcessor.java?view=diff&rev=546125&r1=546124&r2=546125
==============================================================================
--- webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/msgprocessors/CreateSeqMsgProcessor.java (original)
+++ webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/msgprocessors/CreateSeqMsgProcessor.java Mon Jun 11 05:33:01 2007
@@ -27,7 +27,6 @@
import org.apache.axis2.context.ConfigurationContext;
import org.apache.axis2.context.MessageContext;
import org.apache.axis2.context.OperationContext;
-import org.apache.axis2.description.Parameter;
import org.apache.axis2.engine.AxisEngine;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -71,17 +70,6 @@
log.debug("Enter: CreateSeqMsgProcessor::processInMessage");
try {
- if (createSeqRMMsg.getMessageContext().getAxisService() != null) {
- Parameter unreliableParam = createSeqRMMsg.getMessageContext().getAxisService().getParameter(SandeshaClientConstants.UNRELIABLE_MESSAGE);
- if (null != unreliableParam && "true".equals(unreliableParam.getValue())) {
- FaultManager.makeCreateSequenceRefusedFault(createSeqRMMsg,
- SandeshaMessageHelper.getMessage(SandeshaMessageKeys.reliableMessagingNotEnabled, createSeqRMMsg.getMessageContext().getAxisService().getName()),
- new Exception());
-
- log.debug("Exit: CreateSeqMsgProcessor::processInMessage, Service has disabled RM " + false);
- return false;
- }
- }
CreateSequence createSeqPart = (CreateSequence) createSeqRMMsg
.getMessagePart(Sandesha2Constants.MessageParts.CREATE_SEQ);
Modified: webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/msgreceivers/RMMessageReceiver.java
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/msgreceivers/RMMessageReceiver.java?view=diff&rev=546125&r1=546124&r2=546125
==============================================================================
--- webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/msgreceivers/RMMessageReceiver.java (original)
+++ webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/msgreceivers/RMMessageReceiver.java Mon Jun 11 05:33:01 2007
@@ -21,17 +21,20 @@
import org.apache.axis2.AxisFault;
import org.apache.axis2.context.ConfigurationContext;
import org.apache.axis2.context.MessageContext;
+import org.apache.axis2.description.Parameter;
import org.apache.axis2.receivers.AbstractMessageReceiver;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.sandesha2.RMMsgContext;
import org.apache.sandesha2.Sandesha2Constants;
+import org.apache.sandesha2.client.SandeshaClientConstants;
import org.apache.sandesha2.i18n.SandeshaMessageHelper;
import org.apache.sandesha2.i18n.SandeshaMessageKeys;
import org.apache.sandesha2.msgprocessors.MsgProcessor;
import org.apache.sandesha2.msgprocessors.MsgProcessorFactory;
import org.apache.sandesha2.storage.StorageManager;
import org.apache.sandesha2.storage.Transaction;
+import org.apache.sandesha2.util.FaultManager;
import org.apache.sandesha2.util.MsgInitializer;
import org.apache.sandesha2.util.SandeshaUtil;
@@ -65,6 +68,22 @@
if(msgProcessor != null) {
Transaction transaction = null;
+ if (msgCtx.getAxisService() != null) {
+ Parameter unreliableParam = msgCtx.getAxisService().getParameter(SandeshaClientConstants.UNRELIABLE_MESSAGE);
+ if (null != unreliableParam && "true".equals(unreliableParam.getValue())) {
+
+ if (rmMsgCtx.getMessageType() == Sandesha2Constants.MessageTypes.CREATE_SEQ)
+ FaultManager.makeCreateSequenceRefusedFault(rmMsgCtx,
+ SandeshaMessageHelper.getMessage(SandeshaMessageKeys.reliableMessagingNotEnabled, msgCtx.getAxisService().getName()),
+ new Exception());
+ else
+ throw new AxisFault(SandeshaMessageHelper.getMessage(SandeshaMessageKeys.reliableMessagingNotEnabled, msgCtx.getAxisService().getName()));
+
+ log.debug("Exit: RMMessageReceiver::receive, Service has disabled RM ");
+ return;
+ }
+ }
+
try {
ConfigurationContext context = msgCtx.getConfigurationContext();
StorageManager storageManager = SandeshaUtil.getSandeshaStorageManager(context, context.getAxisConfiguration());
Modified: webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/workers/SenderWorker.java
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/workers/SenderWorker.java?view=diff&rev=546125&r1=546124&r2=546125
==============================================================================
--- webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/workers/SenderWorker.java (original)
+++ webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/workers/SenderWorker.java Mon Jun 11 05:33:01 2007
@@ -35,7 +35,6 @@
import org.apache.sandesha2.storage.SandeshaStorageException;
import org.apache.sandesha2.storage.StorageManager;
import org.apache.sandesha2.storage.Transaction;
-import org.apache.sandesha2.storage.beanmanagers.RMDBeanMgr;
import org.apache.sandesha2.storage.beanmanagers.SenderBeanMgr;
import org.apache.sandesha2.storage.beans.RMDBean;
import org.apache.sandesha2.storage.beans.RMSBean;
@@ -63,11 +62,6 @@
private SenderBean senderBean = null;
private RMMsgContext messageToSend = null;
private String rmVersion = null;
- private RMDBean incomingSequenceBean = null;
-
- public void setIncomingSequenceBean(RMDBean incomingSequenceBean) {
- this.incomingSequenceBean = incomingSequenceBean;
- }
public SenderWorker (ConfigurationContext configurationContext, SenderBean senderBean, String rmVersion) {
this.configurationContext = configurationContext;
@@ -398,12 +392,13 @@
// Lock the message to enable retransmission update
senderBean = storageManager.getSenderBeanMgr().retrieve(senderBean.getMessageID());
- int messageType = senderBean.getMessageType();
// Only continue if we find a SenderBean
if (senderBean == null)
return false;
+ int messageType = senderBean.getMessageType();
+
boolean continueSending = MessageRetransmissionAdjuster.adjustRetransmittion(
rmMsgContext, senderBean, rmMsgContext.getConfigurationContext(), storageManager);
if(!continueSending) return false;
@@ -482,13 +477,7 @@
if (inboundSequenceId==null)
throw new SandeshaException ("InboundSequenceID is not set for the sequence:" + id);
- RMDBean findBean = new RMDBean ();
- findBean.setSequenceID(inboundSequenceId);
-
- if (incomingSequenceBean==null) {
- RMDBeanMgr rmdMgr = storageManager.getRMDBeanMgr();
- incomingSequenceBean = rmdMgr.findUnique(findBean);
- }
+ RMDBean incomingSequenceBean = SandeshaUtil.getRMDBeanFromSequenceId(storageManager, inboundSequenceId);
if (incomingSequenceBean!=null)
RMMsgCreator.addAckMessage(rmMsgContext, inboundSequenceId, incomingSequenceBean);
---------------------------------------------------------------------
To unsubscribe, e-mail: sandesha-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: sandesha-dev-help@ws.apache.org