Author: chamikara
Date: Fri Oct 13 04:59:02 2006
New Revision: 463656
URL: http://svn.apache.org/viewvc?view=rev&rev=463656
Log:
Some corrections to the SequencePropertyKey selection logic.
Modified:
webservices/sandesha/trunk/java/src/org/apache/sandesha2/Sandesha2Constants.java
webservices/sandesha/trunk/java/src/org/apache/sandesha2/i18n/SandeshaMessageKeys.java
webservices/sandesha/trunk/java/src/org/apache/sandesha2/i18n/resource.properties
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/ApplicationMsgProcessor.java
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/TerminateSeqMsgProcessor.java
webservices/sandesha/trunk/java/src/org/apache/sandesha2/polling/PollingManager.java
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/SandeshaUtil.java
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/TerminateManager.java
Modified:
webservices/sandesha/trunk/java/src/org/apache/sandesha2/Sandesha2Constants.java
URL:
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/Sandesha2Constants.java?view=diff&rev=463656&r1=463655&r2=463656
==============================================================================
---
webservices/sandesha/trunk/java/src/org/apache/sandesha2/Sandesha2Constants.java
(original)
+++
webservices/sandesha/trunk/java/src/org/apache/sandesha2/Sandesha2Constants.java
Fri Oct 13 04:59:02 2006
@@ -548,9 +548,10 @@
};
public interface MessageContextProperties{
- public String INTERNAL_SEQUENCE_ID =
"Sandesha2InternalSequenceId";
+ String INTERNAL_SEQUENCE_ID = "Sandesha2InternalSequenceId";
String SEQUENCE_ID = "WSRMSequenceId";
String MESSAGE_NUMBER = "WSRMMessageNumber";
+ String SEQUENCE_PROPERTY_KEY = "SequencePropertyKey";
}
public interface Assertions {
Modified:
webservices/sandesha/trunk/java/src/org/apache/sandesha2/i18n/SandeshaMessageKeys.java
URL:
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/i18n/SandeshaMessageKeys.java?view=diff&rev=463656&r1=463655&r2=463656
==============================================================================
---
webservices/sandesha/trunk/java/src/org/apache/sandesha2/i18n/SandeshaMessageKeys.java
(original)
+++
webservices/sandesha/trunk/java/src/org/apache/sandesha2/i18n/SandeshaMessageKeys.java
Fri Oct 13 04:59:02 2006
@@ -43,6 +43,7 @@
public static final String
transportOutNotPresent="transportOutNotPresent";
public static final String storedKeyNotPresent="storedKeyNotPresent";
public static final String invalidQName="invalidQName";
+ public static final String
couldNotFindPropertyKey="couldNotFindPropertyKey";
public static final String dummyCallback="dummyCallback";
public static final String cannotFindSequenceID="cannotFindSequenceID";
Modified:
webservices/sandesha/trunk/java/src/org/apache/sandesha2/i18n/resource.properties
URL:
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/i18n/resource.properties?view=diff&rev=463656&r1=463655&r2=463656
==============================================================================
---
webservices/sandesha/trunk/java/src/org/apache/sandesha2/i18n/resource.properties
(original)
+++
webservices/sandesha/trunk/java/src/org/apache/sandesha2/i18n/resource.properties
Fri Oct 13 04:59:02 2006
@@ -64,7 +64,7 @@
workAlreadyAssigned=Work ''{0}'' is already assigned to a different Worker.
Will try the next one
workNotPresent="SenderWorker has been assigned an unexisting work with the Id
''{0}''
cannotSendToTheAddress=Message cannot be sent to the address ''{0}''
-
+couldNotFindPropertyKey=Could not determine the PropertyKey of the {0} message
from the available information
dummyCallback=Sandesha2 Internal Error: dummy callback was called but this
should never happen.
dummyCallbackError=Sandesha2 Internal Error: dummy callback received an error
but this should never happen.
Modified:
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/ApplicationMsgProcessor.java
URL:
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/ApplicationMsgProcessor.java?view=diff&rev=463656&r1=463655&r2=463656
==============================================================================
---
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/ApplicationMsgProcessor.java
(original)
+++
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/ApplicationMsgProcessor.java
Fri Oct 13 04:59:02 2006
@@ -748,11 +748,12 @@
} else {
if (acksToEPR.getAddress() == null){
EndpointReference replyToEPR =
msgContext.getReplyTo();
-
if(Boolean.getBoolean((String)operationContext.getProperty(SandeshaClientConstants.USE_REPLY_TO_AS_ACKS_TO))
- && replyToEPR!=null &&
!replyToEPR.getAddress().equals("")){
+
+ if(replyToEPR!=null &&
!replyToEPR.getAddress().equals("")){
//use the replyTo
address as acksTo
if
(log.isDebugEnabled())
log.debug("Using replyTo " + replyToEPR + " EPR as AcksTo, addr=" +
acksToEPR.getAddress());
+
acksToEPR = replyToEPR;
}
else{
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=463656&r1=463655&r2=463656
==============================================================================
---
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/TerminateSeqMsgProcessor.java
(original)
+++
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/TerminateSeqMsgProcessor.java
Fri Oct 13 04:59:02 2006
@@ -417,6 +417,12 @@
if (transportTo != null) {
rmMsgCtx.setProperty(MessageContextConstants.TRANSPORT_URL, transportTo);
}
+
+
+ //setting msg context properties
+
rmMsgCtx.setProperty(Sandesha2Constants.MessageContextProperties.SEQUENCE_ID,
outSequenceID);
+
rmMsgCtx.setProperty(Sandesha2Constants.MessageContextProperties.INTERNAL_SEQUENCE_ID,
internalSeqenceID);
+
rmMsgCtx.setProperty(Sandesha2Constants.MessageContextProperties.SEQUENCE_PROPERTY_KEY
, sequenceKey);
try {
rmMsgCtx.addSOAPEnvelope();
Modified:
webservices/sandesha/trunk/java/src/org/apache/sandesha2/polling/PollingManager.java
URL:
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/polling/PollingManager.java?view=diff&rev=463656&r1=463655&r2=463656
==============================================================================
---
webservices/sandesha/trunk/java/src/org/apache/sandesha2/polling/PollingManager.java
(original)
+++
webservices/sandesha/trunk/java/src/org/apache/sandesha2/polling/PollingManager.java
Fri Oct 13 04:59:02 2006
@@ -129,6 +129,10 @@
makeConnectionRMMessage.setProperty(MessageContext.TRANSPORT_IN,null);
//storing the MakeConnection message.
String makeConnectionMsgStoreKey =
SandeshaUtil.getUUID();
+
+
makeConnectionRMMessage.setProperty(Sandesha2Constants.MessageContextProperties.SEQUENCE_PROPERTY_KEY,
+ sequencePropertyKey);
+
storageManager.storeMessageContext(makeConnectionMsgStoreKey,makeConnectionRMMessage.getMessageContext());
//add an entry for the MakeConnection message
to the sender (with ,send=true, resend=false)
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=463656&r1=463655&r2=463656
==============================================================================
---
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/SandeshaUtil.java
(original)
+++
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/SandeshaUtil.java
Fri Oct 13 04:59:02 2006
@@ -305,6 +305,10 @@
return "CloseSequenceResponse";
case Sandesha2Constants.MessageTypes.TERMINATE_SEQ_RESPONSE:
return "TerminateSequenceResponse";
+ case Sandesha2Constants.MessageTypes.FAULT_MSG:
+ return "Fault";
+ case Sandesha2Constants.MessageTypes.MAKE_CONNECTION_MSG:
+ return "MakeConnection";
case Sandesha2Constants.MessageTypes.UNKNOWN:
return "Unknown";
default:
@@ -1003,16 +1007,22 @@
*/
public static String getSequencePropertyKey (RMMsgContext rmMsgContext)
throws AxisFault {
+ String propertyKey = (String)
rmMsgContext.getProperty(Sandesha2Constants.MessageContextProperties.SEQUENCE_PROPERTY_KEY);
+ if (propertyKey!=null)
+ return propertyKey;
+
String sequenceId = (String)
rmMsgContext.getProperty(Sandesha2Constants.MessageContextProperties.SEQUENCE_ID);
String internalSequenceId = (String)
rmMsgContext.getProperty(Sandesha2Constants.MessageContextProperties.INTERNAL_SEQUENCE_ID);
- String propertyKey = null;
+
int type = rmMsgContext.getMessageType();
int flow = rmMsgContext.getMessageContext().getFLOW();
if (flow==MessageContext.OUT_FLOW) {
- if (type==Sandesha2Constants.MessageTypes.UNKNOWN)
+ if (isSequenceResponseMessageType(type))
+ propertyKey = sequenceId;
+ else
propertyKey = internalSequenceId;
} else if (flow==MessageContext.IN_FLOW) {
if (isSequenceResponseMessageType(type))
@@ -1024,6 +1034,12 @@
}
//TODO handler cases not covered from above.
+
+ if (propertyKey==null) {
+ String typeStr =
SandeshaUtil.getMessageTypeString(rmMsgContext.getMessageType());
+ String message =
SandeshaMessageHelper.getMessage(SandeshaMessageKeys.couldNotFindPropertyKey,typeStr);
+ throw new SandeshaException (message);
+ }
return propertyKey;
}
Modified:
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/TerminateManager.java
URL:
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/TerminateManager.java?view=diff&rev=463656&r1=463655&r2=463656
==============================================================================
---
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/TerminateManager.java
(original)
+++
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/TerminateManager.java
Fri Oct 13 04:59:02 2006
@@ -460,6 +460,9 @@
terminateRMMessage.setProperty(Sandesha2Constants.SET_SEND_TO_TRUE,
Sandesha2Constants.VALUE_TRUE);
+ //the propertyKey of the ackMessage will be the propertyKey for
the terminate message as well.
+
terminateRMMessage.setProperty(Sandesha2Constants.MessageContextProperties.SEQUENCE_PROPERTY_KEY,
sequencePropertyKey);
+
// / addTerminateSeqTransaction.commit();
SandeshaUtil.executeAndStore(terminateRMMessage, key);
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]