Author: mlovett
Date: Thu Dec 7 07:14:01 2006
New Revision: 483479
URL: http://svn.apache.org/viewvc?view=rev&rev=483479
Log:
Fix a bug where we store the token for an outbound sequence under the key that
the inbound sequence should use
Modified:
webservices/sandesha/trunk/java/src/org/apache/sandesha2/client/SandeshaClient.java
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/AcknowledgementProcessor.java
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/CloseSequenceProcessor.java
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/CreateSeqMsgProcessor.java
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/CreateSeqResponseMsgProcessor.java
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/RMMsgCreator.java
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/SequenceManager.java
Modified:
webservices/sandesha/trunk/java/src/org/apache/sandesha2/client/SandeshaClient.java
URL:
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/client/SandeshaClient.java?view=diff&rev=483479&r1=483478&r2=483479
==============================================================================
---
webservices/sandesha/trunk/java/src/org/apache/sandesha2/client/SandeshaClient.java
(original)
+++
webservices/sandesha/trunk/java/src/org/apache/sandesha2/client/SandeshaClient.java
Thu Dec 7 07:14:01 2006
@@ -1023,7 +1023,7 @@
report.addCompletedMessage(lng);
}
- SequencePropertyBean tokenBean =
seqPropMgr.retrieve(outSequenceID,
Sandesha2Constants.SequenceProperties.SECURITY_TOKEN);
+ SequencePropertyBean tokenBean =
seqPropMgr.retrieve(internalSequenceID,
Sandesha2Constants.SequenceProperties.SECURITY_TOKEN);
if(tokenBean != null) report.setSecureSequence(true);
}
Modified:
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/AcknowledgementProcessor.java
URL:
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/AcknowledgementProcessor.java?view=diff&rev=483479&r1=483478&r2=483479
==============================================================================
---
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/AcknowledgementProcessor.java
(original)
+++
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/AcknowledgementProcessor.java
Thu Dec 7 07:14:01 2006
@@ -120,7 +120,9 @@
}
// Check that the sender of this Ack holds the correct token
- SequencePropertyBean tokenBean =
seqPropMgr.retrieve(outSequenceId,
Sandesha2Constants.SequenceProperties.SECURITY_TOKEN);
+ String sequencePropertyKey =
SandeshaUtil.getSequenceProperty(outSequenceId,
+
Sandesha2Constants.SequenceProperties.INTERNAL_SEQUENCE_ID, storageManager);
+ SequencePropertyBean tokenBean =
seqPropMgr.retrieve(sequencePropertyKey,
Sandesha2Constants.SequenceProperties.SECURITY_TOKEN);
if(tokenBean != null) {
SecurityManager secManager =
SandeshaUtil.getSecurityManager(configCtx);
SecurityToken token =
secManager.recoverSecurityToken(tokenBean.getValue());
@@ -141,19 +143,11 @@
throw fault;
}
- String internalSequenceId =
SandeshaUtil.getSequenceProperty(outSequenceId,
-
Sandesha2Constants.SequenceProperties.INTERNAL_SEQUENCE_ID, storageManager);
- if(log.isDebugEnabled()) log.debug("Got ack for RM Sequence: "
+ outSequenceId + ", internal id: " + internalSequenceId);
-
- //here we cannot get the property key using the usual
SandeshaUtil.getSequencePropertyKey function,
- //because this can be a applicationMessage, which piggybacks
the acknowledgement.
- String sequencePropertyKey = internalSequenceId;
-
SenderBean input = new SenderBean();
input.setSend(true);
input.setReSend(true);
input.setMessageType(Sandesha2Constants.MessageTypes.APPLICATION);
- input.setInternalSequenceID(internalSequenceId);
+ input.setInternalSequenceID(sequencePropertyKey);
Collection retransmitterEntriesOfSequence =
retransmitterMgr.find(input);
ArrayList ackedMessagesList = new ArrayList();
@@ -256,7 +250,7 @@
// CreateSeqBeanMgr createSeqBeanMgr =
storageManager.getCreateSeqBeanMgr();
// CreateSeqBean createSeqBean =
createSeqBeanMgr.retrieve(msgId);
//
-
TerminateManager.addTerminateSequenceMessage(rmMsgCtx, internalSequenceId,
outSequenceId, sequencePropertyKey,
+
TerminateManager.addTerminateSequenceMessage(rmMsgCtx, sequencePropertyKey,
outSequenceId, sequencePropertyKey,
storageManager);
}
}
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=483479&r1=483478&r2=483479
==============================================================================
---
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/CloseSequenceProcessor.java
(original)
+++
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/CloseSequenceProcessor.java
Thu Dec 7 07:14:01 2006
@@ -79,7 +79,7 @@
SequencePropertyBeanMgr sequencePropMgr =
storageManager.getSequencePropertyBeanMgr();
// Check that the sender of this CloseSequence holds the
correct token
- SequencePropertyBean tokenBean =
sequencePropMgr.retrieve(sequenceId,
Sandesha2Constants.SequenceProperties.SECURITY_TOKEN);
+ SequencePropertyBean tokenBean =
sequencePropMgr.retrieve(sequencePropertyKey,
Sandesha2Constants.SequenceProperties.SECURITY_TOKEN);
if(tokenBean != null) {
SecurityManager secManager =
SandeshaUtil.getSecurityManager(msgCtx.getConfigurationContext());
OMElement body = msgCtx.getEnvelope().getBody();
Modified:
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/CreateSeqMsgProcessor.java
URL:
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/CreateSeqMsgProcessor.java?view=diff&rev=483479&r1=483478&r2=483479
==============================================================================
---
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/CreateSeqMsgProcessor.java
(original)
+++
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/CreateSeqMsgProcessor.java
Thu Dec 7 07:14:01 2006
@@ -198,7 +198,7 @@
if(token != null) {
String tokenData =
secManager.getTokenRecoveryData(token);
SequencePropertyBean tokenBean
= new SequencePropertyBean(
-
offeredSequenceID,
+
outgoingSideSequencePropertyKey,
Sandesha2Constants.SequenceProperties.SECURITY_TOKEN,
tokenData);
seqPropMgr.insert(tokenBean);
Modified:
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/CreateSeqResponseMsgProcessor.java
URL:
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/CreateSeqResponseMsgProcessor.java?view=diff&rev=483479&r1=483478&r2=483479
==============================================================================
---
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/CreateSeqResponseMsgProcessor.java
(original)
+++
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/CreateSeqResponseMsgProcessor.java
Thu Dec 7 07:14:01 2006
@@ -149,7 +149,7 @@
// Store the security token under the new sequence id
if(tokenData != null) {
- SequencePropertyBean newToken = new
SequencePropertyBean(newOutSequenceId,
+ SequencePropertyBean newToken = new
SequencePropertyBean(sequencePropertyKey,
Sandesha2Constants.SequenceProperties.SECURITY_TOKEN, tokenData);
sequencePropMgr.insert(newToken);
}
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=483479&r1=483478&r2=483479
==============================================================================
---
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/RMMsgCreator.java
(original)
+++
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/RMMsgCreator.java
Thu Dec 7 07:14:01 2006
@@ -204,7 +204,7 @@
// save it in the properties so that the caller can store the
token within the create sequence
// bean.
SecurityManager secMgr =
SandeshaUtil.getSecurityManager(context);
- SecurityToken token =
secMgr.getSecurityToken(createSeqmsgContext);
+ SecurityToken token =
secMgr.getSecurityToken(applicationMsgContext);
if(token != null) {
OMElement str =
secMgr.createSecurityTokenReference(token, createSeqmsgContext);
createSequencePart.setSecurityTokenReference(str);
Modified:
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/SequenceManager.java
URL:
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/SequenceManager.java?view=diff&rev=483479&r1=483478&r2=483479
==============================================================================
---
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/SequenceManager.java
(original)
+++
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/SequenceManager.java
Thu Dec 7 07:14:01 2006
@@ -51,6 +51,10 @@
private static Log log = LogFactory.getLog(SequenceManager.class);
+ /**
+ * Set up a new outbound sequence, triggered by the arrival of a create
sequence message. As this
+ * is an inbound sequence, the sequencePropertyKey is the sequenceId.
+ */
public static String setupNewSequence(RMMsgContext createSequenceMsg,
StorageManager storageManager, SecurityManager securityManager, SecurityToken
token)
throws AxisFault {
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]