Author: gatfora
Date: Fri Feb 23 05:14:29 2007
New Revision: 510936
URL: http://svn.apache.org/viewvc?view=rev&rev=510936
Log:
Reduce the number of RMDBean lookups, and pass where found already. Make the
getting of the SandeshaPolicyBean consistent.
Modified:
webservices/sandesha/trunk/java/src/org/apache/sandesha2/SandeshaModule.java
webservices/sandesha/trunk/java/src/org/apache/sandesha2/handlers/SandeshaInHandler.java
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/AckRequestedProcessor.java
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/CloseSequenceProcessor.java
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/SequenceProcessor.java
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/TerminateSeqMsgProcessor.java
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/AcknowledgementManager.java
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/RMMsgCreator.java
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/SandeshaUtil.java
Modified:
webservices/sandesha/trunk/java/src/org/apache/sandesha2/SandeshaModule.java
URL:
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/SandeshaModule.java?view=diff&rev=510936&r1=510935&r2=510936
==============================================================================
---
webservices/sandesha/trunk/java/src/org/apache/sandesha2/SandeshaModule.java
(original)
+++
webservices/sandesha/trunk/java/src/org/apache/sandesha2/SandeshaModule.java
Fri Feb 23 05:14:29 2007
@@ -136,9 +136,6 @@
if(log.isDebugEnabled()) log.debug("Entry:
SandeshaModule::engageNotify, " + axisDescription);
SandeshaPolicyBean parentPropertyBean =
SandeshaUtil.getPropertyBean(axisDescription.getParent());
- if (parentPropertyBean==null)
- throw new AxisFault (SandeshaMessageHelper.getMessage(
-
SandeshaMessageKeys.defaultPropertyBeanNotSet));
SandeshaPolicyBean axisDescPropertyBean =
PropertyManager.loadPropertiesFromAxisDescription(axisDescription,parentPropertyBean);
Modified:
webservices/sandesha/trunk/java/src/org/apache/sandesha2/handlers/SandeshaInHandler.java
URL:
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/handlers/SandeshaInHandler.java?view=diff&rev=510936&r1=510935&r2=510936
==============================================================================
---
webservices/sandesha/trunk/java/src/org/apache/sandesha2/handlers/SandeshaInHandler.java
(original)
+++
webservices/sandesha/trunk/java/src/org/apache/sandesha2/handlers/SandeshaInHandler.java
Fri Feb 23 05:14:29 2007
@@ -187,10 +187,6 @@
RMMsgContext rmMsgContext =
MsgInitializer.initializeMessage(msgContext);
SandeshaPolicyBean policyBean =
SandeshaUtil.getPropertyBean(msgContext.getAxisOperation());
- if (policyBean==null) {
- String message =
SandeshaMessageHelper.getMessage(SandeshaMessageKeys.policyBeanNotFound);
- throw new SandeshaException (message);
- }
boolean inOrder= policyBean.isInOrder();
@@ -218,7 +214,7 @@
Object responseWritten =
msgContext.getOperationContext().getProperty(Constants.RESPONSE_WRITTEN);
if (responseWritten==null ||
!Constants.VALUE_TRUE.equals(responseWritten)) {
- RMMsgContext ackRMMsgContext =
AcknowledgementManager.generateAckMessage(rmMsgContext , sequenceId,
storageManager, false, true);
+ RMMsgContext ackRMMsgContext =
AcknowledgementManager.generateAckMessage(rmMsgContext, rmdBean, sequenceId,
storageManager, true);
msgContext.getOperationContext().setProperty(org.apache.axis2.Constants.RESPONSE_WRITTEN,
Constants.VALUE_TRUE);
AcknowledgementManager.sendAckNow(ackRMMsgContext);
}
Modified:
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/AckRequestedProcessor.java
URL:
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/AckRequestedProcessor.java?view=diff&rev=510936&r1=510935&r2=510936
==============================================================================
---
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/AckRequestedProcessor.java
(original)
+++
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/AckRequestedProcessor.java
Fri Feb 23 05:14:29 2007
@@ -174,7 +174,7 @@
ackMsgCtx.setTo(acksTo);
ackMsgCtx.setReplyTo(msgContext.getTo());
- RMMsgCreator.addAckMessage(ackRMMsgCtx,rmdBean, sequenceId,
storageManager);
+ RMMsgCreator.addAckMessage(ackRMMsgCtx,rmdBean, sequenceId,
rmdBean);
ackRMMsgCtx.getMessageContext().setServerSide(true);
if (acksTo.hasAnonymousAddress()) {
Modified:
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/CloseSequenceProcessor.java
URL:
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/CloseSequenceProcessor.java?view=diff&rev=510936&r1=510935&r2=510936
==============================================================================
---
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/CloseSequenceProcessor.java
(original)
+++
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/CloseSequenceProcessor.java
Fri Feb 23 05:14:29 2007
@@ -101,7 +101,7 @@
rmdBean.setClosed(true);
storageManager.getRMDBeanMgr().update(rmdBean);
- RMMsgContext ackRMMsgCtx =
AcknowledgementManager.generateAckMessage(rmMsgCtx , sequenceId,
storageManager, false, true);
+ RMMsgContext ackRMMsgCtx =
AcknowledgementManager.generateAckMessage(rmMsgCtx, rmdBean, sequenceId,
storageManager, true);
MessageContext ackMsgCtx = ackRMMsgCtx.getMessageContext();
Modified:
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/SequenceProcessor.java
URL:
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/SequenceProcessor.java?view=diff&rev=510936&r1=510935&r2=510936
==============================================================================
---
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/SequenceProcessor.java
(original)
+++
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/SequenceProcessor.java
Fri Feb 23 05:14:29 2007
@@ -248,7 +248,7 @@
EndpointReference acksTo = new EndpointReference
(bean.getAcksToEPR());
// Send an Ack if needed.
- sendAckIfNeeded(sequenceId, rmMsgCtx, storageManager,
true, acksTo.hasAnonymousAddress());
+ sendAckIfNeeded(bean, sequenceId, rmMsgCtx,
storageManager, true, acksTo.hasAnonymousAddress());
result = InvocationResponse.ABORT;
if (log.isDebugEnabled())
@@ -316,24 +316,20 @@
if (acksTo.hasAnonymousAddress() && backchannelFree) {
Object responseWritten =
msgCtx.getOperationContext().getProperty(Constants.RESPONSE_WRITTEN);
if (responseWritten==null ||
!Constants.VALUE_TRUE.equals(responseWritten)) {
- RMMsgContext ackRMMsgContext =
AcknowledgementManager.generateAckMessage(rmMsgCtx , sequenceId,
storageManager,false,true);
+ RMMsgContext ackRMMsgContext =
AcknowledgementManager.generateAckMessage(rmMsgCtx, bean, sequenceId,
storageManager,true);
msgCtx.getOperationContext().setProperty(org.apache.axis2.Constants.RESPONSE_WRITTEN,
Constants.VALUE_TRUE);
AcknowledgementManager.sendAckNow(ackRMMsgContext);
}
} else { //Scenario 2 and Scenario 3
- SandeshaPolicyBean policyBean =
SandeshaUtil.getPropertyBean (msgCtx.getAxisOperation());
- if (policyBean==null) {
- String message =
SandeshaMessageHelper.getMessage(SandeshaMessageKeys.policyBeanNotFound);
- throw new SandeshaException (message);
- }
// having a negative value for timeToSend
will make this behave as having an infinite ack interval.
long timeToSend = -1;
if (!acksTo.hasAnonymousAddress()) {
+ SandeshaPolicyBean policyBean =
SandeshaUtil.getPropertyBean (msgCtx.getAxisOperation());
long ackInterval =
policyBean.getAcknowledgementInterval();
timeToSend = System.currentTimeMillis() +
ackInterval;
}
- RMMsgContext ackRMMsgContext =
AcknowledgementManager.generateAckMessage(rmMsgCtx, sequenceId,
storageManager,false,true);
+ RMMsgContext ackRMMsgContext =
AcknowledgementManager.generateAckMessage(rmMsgCtx, bean, sequenceId,
storageManager,true);
AcknowledgementManager.removeAckBeanEntries(sequenceId,
storageManager);
AcknowledgementManager.addAckBeanEntry(ackRMMsgContext,
sequenceId, timeToSend, storageManager);
@@ -378,7 +374,7 @@
}
- private static void sendAckIfNeeded(String sequenceId, RMMsgContext
rmMsgCtx,
+ private void sendAckIfNeeded(RMDBean rmdBean, String sequenceId,
RMMsgContext rmMsgCtx,
StorageManager storageManager, boolean serverSide,
boolean anonymousAcksTo)
throws AxisFault {
@@ -386,8 +382,7 @@
log.debug("Enter: SequenceProcessor::sendAckIfNeeded "
+ sequenceId);
RMMsgContext ackRMMsgCtx =
AcknowledgementManager.generateAckMessage(
- rmMsgCtx , sequenceId, storageManager,
- false, serverSide);
+ rmMsgCtx, rmdBean, sequenceId,
storageManager, serverSide);
if (anonymousAcksTo) {
rmMsgCtx.getMessageContext().getOperationContext().
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=510936&r1=510935&r2=510936
==============================================================================
---
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/TerminateSeqMsgProcessor.java
(original)
+++
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/TerminateSeqMsgProcessor.java
Fri Feb 23 05:14:29 2007
@@ -312,8 +312,8 @@
RMMsgContext terminateSeqResponseRMMsg =
RMMsgCreator.createTerminateSeqResponseMsg(terminateSeqRMMsg, rmdBean);
MessageContext outMessage =
terminateSeqResponseRMMsg.getMessageContext();
- RMMsgContext ackRMMessage =
AcknowledgementManager.generateAckMessage(terminateSeqRMMsg,
- sequenceId, storageManager, false, true);
+ RMMsgContext ackRMMessage =
AcknowledgementManager.generateAckMessage(terminateSeqRMMsg, rmdBean,
+ sequenceId, storageManager, true);
Iterator iter =
ackRMMessage.getMessageParts(Sandesha2Constants.MessageParts.SEQ_ACKNOWLEDGEMENT);
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=510936&r1=510935&r2=510936
==============================================================================
---
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/AcknowledgementManager.java
(original)
+++
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/AcknowledgementManager.java
Fri Feb 23 05:14:29 2007
@@ -84,10 +84,10 @@
RMSBean rmsBean =
SandeshaUtil.getRMSBeanFromSequenceId(storageManager, outboundSequenceId);
String outboundInternalSeq =
rmsBean.getInternalSequenceID();
String inboundSequenceId =
SandeshaUtil.getServerSideIncomingSeqIdFromInternalSeqId(outboundInternalSeq);
-
- if
(SandeshaUtil.getRMDBeanFromSequenceId(storageManager, inboundSequenceId) !=
null) {
+ RMDBean rmdBean =
SandeshaUtil.getRMDBeanFromSequenceId(storageManager, inboundSequenceId);
+ if (rmdBean != null) {
if(log.isDebugEnabled())
log.debug("Piggybacking ack for " + inboundSequenceId);
-
RMMsgCreator.addAckMessage(rmMessageContext, rmsBean, inboundSequenceId,
storageManager);
+
RMMsgCreator.addAckMessage(rmMessageContext, rmsBean, inboundSequenceId,
rmdBean);
}
}
if(log.isDebugEnabled()) log.debug("Exit:
AcknowledgementManager::piggybackAcksIfPresent, anon");
@@ -179,20 +179,18 @@
public static RMMsgContext generateAckMessage(
RMMsgContext referenceRMMessage,
+ RMDBean rmdBean,
String sequenceId,
StorageManager storageManager,
- boolean makeResponse,
boolean serverSide
) throws AxisFault {
if (log.isDebugEnabled())
- log.debug("Enter:
AcknowledgementManager::generateAckMessage");
+ log.debug("Enter:
AcknowledgementManager::generateAckMessage " + rmdBean);
MessageContext referenceMsg =
referenceRMMessage.getMessageContext();
- RMDBean rmdBean =
SandeshaUtil.getRMDBeanFromSequenceId(storageManager, sequenceId);
-
EndpointReference acksTo = new
EndpointReference(rmdBean.getAcksToEPR());
if (acksTo.getAddress() == null)
@@ -204,9 +202,6 @@
referenceMsg.getAxisService());
MessageContext ackMsgCtx =
SandeshaUtil.createNewRelatedMessageContext(referenceRMMessage, ackOperation);
- if (makeResponse) {
-
ackMsgCtx.setOperationContext(referenceMsg.getOperationContext());
- }
ackMsgCtx.setProperty(Sandesha2Constants.APPLICATION_PROCESSING_DONE, "true");
@@ -229,7 +224,7 @@
ackMsgCtx.setServerSide(serverSide);
// adding the SequenceAcknowledgement part.
- RMMsgCreator.addAckMessage(ackRMMsgCtx, rmdBean ,sequenceId,
storageManager);
+ RMMsgCreator.addAckMessage(ackRMMsgCtx, rmdBean ,sequenceId,
rmdBean);
if (log.isDebugEnabled())
log.debug("Exit:
AcknowledgementManager::generateAckMessage");
Modified:
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/RMMsgCreator.java
URL:
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/RMMsgCreator.java?view=diff&rev=510936&r1=510935&r2=510936
==============================================================================
---
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/RMMsgCreator.java
(original)
+++
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/RMMsgCreator.java
Fri Feb 23 05:14:29 2007
@@ -399,7 +399,7 @@
* @throws SandeshaException
*/
public static void addAckMessage(RMMsgContext applicationMsg,
RMSequenceBean rmBean,
- String sequenceId, StorageManager storageManager)
+ String sequenceId, RMDBean rmdBean)
throws SandeshaException {
if(log.isDebugEnabled())
log.debug("Entry: RMMsgCreator::addAckMessage " +
sequenceId);
@@ -412,8 +412,6 @@
Identifier id = new Identifier(rmNamespaceValue);
id.setIndentifer(sequenceId);
sequenceAck.setIdentifier(id);
-
- RMDBean rmdBean =
SandeshaUtil.getRMDBeanFromSequenceId(storageManager, sequenceId);
ArrayList ackRangeArrayList =
SandeshaUtil.getAckRangeArrayList(rmdBean.getServerCompletedMessages(),
rmNamespaceValue);
sequenceAck.setAckRanges(ackRangeArrayList);
Modified:
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/SandeshaUtil.java
URL:
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/SandeshaUtil.java?view=diff&rev=510936&r1=510935&r2=510936
==============================================================================
---
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/SandeshaUtil.java
(original)
+++
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/SandeshaUtil.java
Fri Feb 23 05:14:29 2007
@@ -617,6 +617,11 @@
SandeshaMessageKeys.propertyBeanNotSet));
SandeshaPolicyBean propertyBean = (SandeshaPolicyBean)
parameter.getValue();
+ if (propertyBean==null) {
+ String message =
SandeshaMessageHelper.getMessage(SandeshaMessageKeys.policyBeanNotFound);
+ throw new SandeshaException (message);
+ }
+
return propertyBean;
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]