Author: chamikara
Date: Mon Oct  2 06:25:55 2006
New Revision: 452030

URL: http://svn.apache.org/viewvc?view=rev&rev=452030
Log:
Some bug fixes. These caused failures in different locations - specially in 
WSRX 1.1.

Modified:
    
webservices/sandesha/trunk/java/src/org/apache/sandesha2/Sandesha2Constants.java
    
webservices/sandesha/trunk/java/src/org/apache/sandesha2/client/SandeshaClient.java
    
webservices/sandesha/trunk/java/src/org/apache/sandesha2/handlers/SandeshaInHandler.java
    
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/CreateSeqMsgProcessor.java
    
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/TerminateSeqMsgProcessor.java
    
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/TerminateSeqResponseMsgProcessor.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
    
webservices/sandesha/trunk/java/src/org/apache/sandesha2/workers/SenderWorker.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=452030&r1=452029&r2=452030
==============================================================================
--- 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/Sandesha2Constants.java
 (original)
+++ 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/Sandesha2Constants.java
 Mon Oct  2 06:25:55 2006
@@ -535,6 +535,10 @@
        

        String WSRM_ANONYMOUS_URI_PREFIX = 
"http://docs.oasis-open.org/ws-rx/wsrm/200608/anonymous";;

        

+       String RM_IN_OUT_OPERATION_NAME = "RMInOutOperation";

+       

+       String RM_IN_ONLY_OPERATION = "RMInOnlyOperation";

+       

        String [] SPEC_NS_URIS = {

                        SPEC_2005_02.NS_URI,

                        SPEC_2006_08.NS_URI


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=452030&r1=452029&r2=452030
==============================================================================
--- 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/client/SandeshaClient.java
 (original)
+++ 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/client/SandeshaClient.java
 Mon Oct  2 06:25:55 2006
@@ -1094,6 +1094,18 @@
                                
anonOutOnlyOperation.setName(ServiceClient.ANON_OUT_ONLY_OP);

                                anonOutOnlyOperation.setParent(service);

                                service.addChild(anonOutOnlyOperation);

+                               

+                               Iterator iter = service.getOperations();

+                               AxisOperation referenceOperation = null;

+                               if (iter.hasNext())

+                                       referenceOperation = (AxisOperation) 
iter.next();

+                               

+                               if (referenceOperation!=null) {

+                                       
anonOutOnlyOperation.setPhasesOutFlow(referenceOperation.getPhasesOutFlow());

+                                       
anonOutOnlyOperation.setPhasesOutFaultFlow(referenceOperation.getPhasesOutFaultFlow());

+                                       
anonOutOnlyOperation.setPhasesInFaultFlow(referenceOperation.getPhasesInFaultFlow());

+                                       
anonOutOnlyOperation.setPhasesInFaultFlow(referenceOperation.getRemainingPhasesInFlow());

+                               }

                        }

                } catch (AxisFault e) {

                        throw new SandeshaException (e);


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=452030&r1=452029&r2=452030
==============================================================================
--- 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/handlers/SandeshaInHandler.java
 (original)
+++ 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/handlers/SandeshaInHandler.java
 Mon Oct  2 06:25:55 2006
@@ -17,9 +17,12 @@
 

 package org.apache.sandesha2.handlers;

 

+import java.util.Iterator;

+

 import org.apache.axis2.AxisFault;

 import org.apache.axis2.context.ConfigurationContext;

 import org.apache.axis2.context.MessageContext;

+import org.apache.axis2.description.AxisOperation;

 import org.apache.axis2.description.AxisService;

 import org.apache.axis2.handlers.AbstractHandler;

 import org.apache.commons.logging.Log;


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=452030&r1=452029&r2=452030
==============================================================================
--- 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/CreateSeqMsgProcessor.java
 (original)
+++ 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/CreateSeqMsgProcessor.java
 Mon Oct  2 06:25:55 2006
@@ -21,6 +21,7 @@
 

 import org.apache.axiom.om.OMElement;

 import org.apache.axis2.AxisFault;

+import org.apache.axis2.Constants;

 import org.apache.axis2.addressing.EndpointReference;

 import org.apache.axis2.context.ConfigurationContext;

 import org.apache.axis2.context.MessageContext;


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=452030&r1=452029&r2=452030
==============================================================================
--- 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/TerminateSeqMsgProcessor.java
 (original)
+++ 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/TerminateSeqMsgProcessor.java
 Mon Oct  2 06:25:55 2006
@@ -296,16 +296,15 @@
                

                terminateSeqResponseRMMsg.addSOAPEnvelope();

 

-               

                terminateSeqResponseRMMsg.setFlow(MessageContext.OUT_FLOW);

                
terminateSeqResponseRMMsg.setProperty(Sandesha2Constants.APPLICATION_PROCESSING_DONE,
 "true");

 

+               EndpointReference toEPR = terminateSeqMsg.getTo();

+               

                outMessage.setResponseWritten(true);

 

                AxisEngine engine = new 
AxisEngine(terminateSeqMsg.getConfigurationContext());

 

-               EndpointReference toEPR = terminateSeqMsg.getTo();

-

                try {

                        engine.send(outMessage);

                } catch (AxisFault e) {

@@ -367,8 +366,16 @@
                try {

                        AxisOperation oldOPeration = 
msgContext.getAxisOperation();

                        AxisOperation outInAxisOp = new OutInAxisOperation(new 
QName("temp"));

+                       

+                       AxisOperation referenceInOutOperation = 
msgContext.getAxisService().getOperation(new QName 
(Sandesha2Constants.RM_IN_OUT_OPERATION_NAME));

+                       if (referenceInOutOperation==null) {

+                               String messge = "Cant find the recerence RM 
InOut operation";

+                               throw new SandeshaException (messge);

+                       }

+                       

                        // setting flows

-                       
outInAxisOp.setRemainingPhasesInFlow(oldOPeration.getRemainingPhasesInFlow());

+                       
outInAxisOp.setRemainingPhasesInFlow(referenceInOutOperation.getRemainingPhasesInFlow());

+//                     
outInAxisOp.setRemainingPhasesInFlow(oldOPeration.getRemainingPhasesInFlow());

 

                        OperationContext opcontext = 
OperationContextFactory.createOperationContext(

                                        
WSDL20_2004Constants.MEP_CONSTANT_OUT_IN, outInAxisOp);


Modified: 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/TerminateSeqResponseMsgProcessor.java
URL: 
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/TerminateSeqResponseMsgProcessor.java?view=diff&rev=452030&r1=452029&r2=452030
==============================================================================
--- 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/TerminateSeqResponseMsgProcessor.java
 (original)
+++ 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/TerminateSeqResponseMsgProcessor.java
 Mon Oct  2 06:25:55 2006
@@ -32,6 +32,7 @@
 import org.apache.sandesha2.storage.beanmanagers.SequencePropertyBeanMgr;

 import org.apache.sandesha2.storage.beans.SequencePropertyBean;

 import org.apache.sandesha2.util.SandeshaUtil;

+import org.apache.sandesha2.util.TerminateManager;

 import org.apache.sandesha2.wsrm.TerminateSequenceResponse;

 

 /**

@@ -65,6 +66,11 @@
                        secManager.checkProofOfPossession(token, body, 
msgContext);

                }

 

+               //doing the termination

+//             TODO - do termination correctly.

+//             TerminateManager.terminateSendingSide(configContext, 
sequencePropertyKey, msgCtx.isServerSide(),

+//                             storageManager);

+               

                // Stop this message travelling further through the Axis runtime

                terminateResRMMsg.pause();

 


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=452030&r1=452029&r2=452030
==============================================================================
--- 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/polling/PollingManager.java
 (original)
+++ 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/polling/PollingManager.java
 Mon Oct  2 06:25:55 2006
@@ -97,7 +97,6 @@
                                                nextMsgBean = (NextMsgBean) 
results.get(item);
                                        }
                                        
-                                       sequenceId = 
nextMsgBean.getSequenceID();
                                } else {
                                        NextMsgBean findBean = new NextMsgBean 
();
                                        findBean.setPollingMode(true);
@@ -109,6 +108,8 @@
                                //If not valid entry is found, try again later.
                                if (nextMsgBean==null)
                                        continue;
+
+                               sequenceId = nextMsgBean.getSequenceID();
                                
                                //create a MakeConnection message  
                                String referenceMsgKey = 
nextMsgBean.getReferenceMessageKey();

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=452030&r1=452029&r2=452030
==============================================================================
--- 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/SandeshaUtil.java 
(original)
+++ 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/SandeshaUtil.java 
Mon Oct  2 06:25:55 2006
@@ -520,12 +520,6 @@
 

                        MessageContext newMessageContext = new MessageContext();

                        
newMessageContext.setConfigurationContext(configContext);

-

-//                     Options referenceMsgOptions = 
referenceMessage.getOptions();

-//                     Options newOptions = null;

-//                     if (referenceMsgOptions!=null)

-//                             newOptions = new Options (referenceMsgOptions);

-//                     else

                        

                        Options newOptions = new Options ();

                        

@@ -579,10 +573,11 @@
                        AxisService service = 
newMessageContext.getAxisService();

 

                        if (service != null && operation != null) {

-                               service.addChild(operation);

+//                             Adding this operation to the service is tricky. 
 

+//                             service.addChild(operation);

+                               

                                operation.setParent(service);

                        }

-                       

 

                        OperationContext operationContext = new 
OperationContext(operation);

                        newMessageContext.setOperationContext(operationContext);

@@ -610,6 +605,8 @@
                                        
.getProperty(MessageContext.TRANSPORT_IN));

                        
newMessageContext.setProperty(MessageContext.TRANSPORT_OUT, referenceMessage

                                        
.getProperty(MessageContext.TRANSPORT_OUT));

+                       

+                       //TODO - move this to a property file.

             
newMessageContext.setProperty(RampartMessageData.KEY_RAMPART_POLICY, 
referenceMessage

                     .getProperty(RampartMessageData.KEY_RAMPART_POLICY));

             


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=452030&r1=452029&r2=452030
==============================================================================
--- 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/TerminateManager.java
 (original)
+++ 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/TerminateManager.java
 Mon Oct  2 06:25:55 2006
@@ -372,6 +372,7 @@
                if (terminated != null && terminated.getValue() != null && 
"true".equals(terminated.getValue())) {

                        String message = "Terminate was added previously.";

                        log.debug(message);

+                       return;

                }

 

                RMMsgContext terminateRMMessage = 
RMMsgCreator.createTerminateSequenceMessage(referenceMessage, outSequenceId,

@@ -387,11 +388,18 @@
                        String message = 
SandeshaMessageHelper.getMessage(SandeshaMessageKeys.toEPRNotValid, null);

                        throw new SandeshaException(message);

                }

-

+               

                terminateRMMessage.setTo(new 
EndpointReference(toEPR.getAddress()));

 

+               SequencePropertyBean replyToBean = 
seqPropMgr.retrieve(sequencePropertyKey,

+                               
Sandesha2Constants.SequenceProperties.REPLY_TO_EPR);

+               if (replyToBean!=null) {

+                       terminateRMMessage.setReplyTo(new EndpointReference 
(replyToBean.getValue()));

+               }

+               

                String addressingNamespaceURI = 
SandeshaUtil.getSequenceProperty(sequencePropertyKey,

                                
Sandesha2Constants.SequenceProperties.ADDRESSING_NAMESPACE_VALUE, 
storageManager);

+

                String anonymousURI = 
SpecSpecificConstants.getAddressingAnonymousURI(addressingNamespaceURI);

 

                String rmVersion = 
SandeshaUtil.getRMVersion(sequencePropertyKey, storageManager);


Modified: 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/workers/SenderWorker.java
URL: 
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/workers/SenderWorker.java?view=diff&rev=452030&r1=452029&r2=452030
==============================================================================
--- 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/workers/SenderWorker.java
 (original)
+++ 
webservices/sandesha/trunk/java/src/org/apache/sandesha2/workers/SenderWorker.java
 Mon Oct  2 06:25:55 2006
@@ -191,8 +191,19 @@
                                        checkForSyncResponses(msgCtx);
                        }
 
-                       if (rmMsgCtx.getMessageType() == 
Sandesha2Constants.MessageTypes.TERMINATE_SEQ) {
-                               // terminate sending side.
+                       if ((rmMsgCtx.getMessageType() == 
Sandesha2Constants.MessageTypes.TERMINATE_SEQ)
+                                       /*&&
+                                        
(Sandesha2Constants.SPEC_2005_02.NS_URI.equals(rmMsgCtx.getRMNamespaceValue()))*/)
 {
+                               
+                               //TODO - cant do below due to a bug. Since 
CreateSequenceResponsMsgProcessor does not get called
+                               //currently. To fix this fix the 'todo' in the 
processOutMessage method of the TerminateSeqMsgProcesser.
+                               
+                               //terminate message sent using the 
SandeshaClient. Since the terminate message will simply get the
+                               //InFlow of the reference message get called 
which could be zero sized (OutOnly operations).
+                               
+                               // terminate sending side if this is the WSRM 
1.0 spec. 
+                               // If the WSRM versoion is 1.1 termination will 
happen in the terminate sequence response message.
+                               
                                TerminateSequence terminateSequence = 
(TerminateSequence) rmMsgCtx
                                                
.getMessagePart(Sandesha2Constants.MessageParts.TERMINATE_SEQ);
                                String sequenceID = 
terminateSequence.getIdentifier().getIdentifier();



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to