Author: chamikara
Date: Sun Aug 28 05:56:25 2005
New Revision: 263873

URL: http://svn.apache.org/viewcvs?rev=263873&view=rev
Log:
CreateSequenceResponse is working now. (but need some corrections)

Added:
    webservices/sandesha/trunk/test/org/
    webservices/sandesha/trunk/test/org/apache/
    webservices/sandesha/trunk/test/org/apache/sandesha2/
    webservices/sandesha/trunk/test/org/apache/sandesha2/SimpleServerImpl.java
Modified:
    webservices/sandesha/trunk/samples/interop/service.xml
    
webservices/sandesha/trunk/samples/interop/src/org/apache/sandesha2/samples/RMInteropService.java
    webservices/sandesha/trunk/src/org/apache/sandesha2/MsgInitializer.java
    webservices/sandesha/trunk/src/org/apache/sandesha2/RMMsgContext.java
    webservices/sandesha/trunk/src/org/apache/sandesha2/RMMsgCreator.java
    
webservices/sandesha/trunk/src/org/apache/sandesha2/handlers/ServerInHandler.java
    
webservices/sandesha/trunk/src/org/apache/sandesha2/msgprocessors/CreateSeqMsgProcessor.java
    
webservices/sandesha/trunk/src/org/apache/sandesha2/msgreceivers/RMMessageReceiver.java
    webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/RMElements.java

Modified: webservices/sandesha/trunk/samples/interop/service.xml
URL: 
http://svn.apache.org/viewcvs/webservices/sandesha/trunk/samples/interop/service.xml?rev=263873&r1=263872&r2=263873&view=diff
==============================================================================
--- webservices/sandesha/trunk/samples/interop/service.xml (original)
+++ webservices/sandesha/trunk/samples/interop/service.xml Sun Aug 28 05:56:25 
2005
@@ -6,7 +6,12 @@
     </description>

 

     <module ref="sandesha" />

-    <operation name="ping" />

-    <operation name="echoString" />

+<!--

+    <operation name="ping" />  

+    <operation name="echoString" /> -->

+

+       <operation name="ping">

+               <messageReceiver 
class="org.apache.sandesha2.msgreceivers.RMMessageReceiver" />

+       </operation> 

     

 </service>

Modified: 
webservices/sandesha/trunk/samples/interop/src/org/apache/sandesha2/samples/RMInteropService.java
URL: 
http://svn.apache.org/viewcvs/webservices/sandesha/trunk/samples/interop/src/org/apache/sandesha2/samples/RMInteropService.java?rev=263873&r1=263872&r2=263873&view=diff
==============================================================================
--- 
webservices/sandesha/trunk/samples/interop/src/org/apache/sandesha2/samples/RMInteropService.java
 (original)
+++ 
webservices/sandesha/trunk/samples/interop/src/org/apache/sandesha2/samples/RMInteropService.java
 Sun Aug 28 05:56:25 2005
@@ -20,6 +20,11 @@
 import java.util.HashMap;

 import java.util.Map;

 

+import org.apache.axis2.om.OMAbstractFactory;

+import org.apache.axis2.om.OMElement;

+import org.apache.axis2.om.OMFactory;

+import org.apache.axis2.om.OMNamespace;

+

 /**

  * @author 

  * 

@@ -28,19 +33,25 @@
 

     private static Map sequences = new HashMap();

 

-    public String echoString(String text, String sequence) {

+    public OMElement echoString(OMElement in) {

+        System.out.println("EchoString was called");

+        in.getFirstChild().detach();

+

+        OMFactory fac = OMAbstractFactory.getOMFactory();

+        OMNamespace omNs = fac.createOMNamespace("http://tempuri.org/";, 
"echoString");

+        OMElement method = fac.createOMElement("echoStringResponse", omNs);

 

-        if (sequences.get(sequence) != null) {

-            text = (String) sequences.get(sequence) + text;

-            sequences.put(sequence, new String(text));

-        } else {

-            sequences.put(sequence, (new String(text)));

+        OMElement value = fac.createOMElement("Text", omNs);

+        //TODO umcomment

+        //value.addChild(fac.createText(value, "Echo Text"));

+        method.addChild(value);

 

-        }

-        return text;

+        return method;

     }

 

-    public void ping(String text) {

+

+    public void ping(OMElement in) {

         //Just accept the message and do some processing

+       System.out.println("Ping was called");

     }

 }


Modified: 
webservices/sandesha/trunk/src/org/apache/sandesha2/MsgInitializer.java
URL: 
http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/MsgInitializer.java?rev=263873&r1=263872&r2=263873&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/MsgInitializer.java 
(original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/MsgInitializer.java Sun 
Aug 28 05:56:25 2005
@@ -17,6 +17,7 @@
 

 package org.apache.sandesha2;

 

+import org.apache.axis2.addressing.om.AddressingHeaders;

 import org.apache.axis2.context.MessageContext;

 import org.apache.sandesha2.wsrm.RMElements;

 

@@ -28,7 +29,7 @@
 public class MsgInitializer {

 

        public static RMMsgContext initializeMessage (MessageContext ctx) {

-               RMMsgContext rmMsgCtx = new RMMsgContext ();

+               RMMsgContext rmMsgCtx = new RMMsgContext (ctx);

                populateRMMsgContext(ctx,rmMsgCtx);

                return rmMsgCtx;

        }

@@ -38,6 +39,7 @@
                

                RMElements elements = new RMElements ();

                elements.fromSOAPEnvelope(msgCtx.getEnvelope());

+               

                
rmMsgContext.setMessagePart(Constants.MESSAGE_PART_CREATE_SEQ,elements.getCreateSequence());

                
rmMsgContext.setMessagePart(Constants.MESSAGE_PART_CREATE_SEQ_RESPONSE,elements.getCreateSequenceResponse());

                rmMsgContext.setMessagePart(Constants.MESSAGE_PART_SEQUENCE 
,elements.getSequence());


Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/RMMsgContext.java
URL: 
http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/RMMsgContext.java?rev=263873&r1=263872&r2=263873&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/RMMsgContext.java 
(original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/RMMsgContext.java Sun 
Aug 28 05:56:25 2005
@@ -18,8 +18,15 @@
 package org.apache.sandesha2;

 

 import java.util.HashMap;

+

+import javax.xml.stream.XMLOutputFactory;

+import javax.xml.stream.XMLStreamWriter;

+

+import org.apache.axis2.addressing.EndpointReference;

+import org.apache.axis2.addressing.miheaders.RelatesTo;

 import org.apache.axis2.addressing.om.AddressingHeaders;

 import org.apache.axis2.context.MessageContext;

+import org.apache.axis2.soap.SOAPEnvelope;

 import org.apache.sandesha2.wsrm.CreateSequence;

 import org.apache.sandesha2.wsrm.IOMRMElement;

 import org.apache.sandesha2.wsrm.TerminateSequence;

@@ -41,7 +48,7 @@
        public RMMsgContext (MessageContext ctx){

                this ();

                this.msgContext = ctx;

-               MsgInitializer.populateRMMsgContext(ctx,this);

+               //MsgInitializer.populateRMMsgContext(ctx,this);

        }

        

        public int getMessageType (){

@@ -61,5 +68,45 @@
        public IOMRMElement getMessagePart (int partId) {

                return (IOMRMElement) rmMessageParts.get(new Integer (partId));

        }

+       

+       public EndpointReference getFrom () {

+               return msgContext.getFrom();

+       }

+       

+       public EndpointReference getTo (){

+               return msgContext.getTo();

+       }

+       

+       public EndpointReference getReplyTo (){

+               return msgContext.getReplyTo();

+       }

+       

+       public RelatesTo getRelatesTo () {

+               return msgContext.getRelatesTo();

+       }

+       

+       public String getMessageId (){

+               return msgContext.getMessageID();

+       }

+       

+       public SOAPEnvelope getSOAPEnvelope () {

+               return msgContext.getEnvelope();

+       }

+       public void test (){

+               String opearaitonName = 
msgContext.getOperationContext().getAxisOperation().getName().getLocalPart();

+               System.out.println ("Operation is:" + opearaitonName);

+       }

+       

+       public void serializeSOAPEnvelop () {

+               try {

+                       SOAPEnvelope envelop = msgContext.getEnvelope();

+                       XMLStreamWriter writer = 
XMLOutputFactory.newInstance().createXMLStreamWriter(System.out);

+                       envelop.serialize(writer);

+               }catch (Exception ex){

+                       ex.printStackTrace();

+               }

+       }

+       

+       

        

 }


Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/RMMsgCreator.java
URL: 
http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/RMMsgCreator.java?rev=263873&r1=263872&r2=263873&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/RMMsgCreator.java 
(original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/RMMsgCreator.java Sun 
Aug 28 05:56:25 2005
@@ -17,9 +17,63 @@
 

 package org.apache.sandesha2;

 

+import javax.xml.stream.XMLOutputFactory;

+import javax.xml.stream.XMLStreamWriter;

+

+import org.apache.axis2.AxisFault;

+import org.apache.axis2.addressing.EndpointReference;

+import org.apache.axis2.addressing.om.AddressingHeaders;

+import org.apache.axis2.context.MessageContext;

+import org.apache.axis2.om.OMAbstractFactory;

+import org.apache.axis2.soap.SOAPEnvelope;

+import org.apache.sandesha2.wsrm.Accept;

+import org.apache.sandesha2.wsrm.AcksTo;

+import org.apache.sandesha2.wsrm.CreateSequence;

+import org.apache.sandesha2.wsrm.CreateSequenceResponse;

+import org.apache.sandesha2.wsrm.IOMRMElement;

+import org.apache.sandesha2.wsrm.Identifier;

+

 /**

  * @author

  */

 public class RMMsgCreator {

 

+       public static RMMsgContext createCreateSeqResponseMsg (RMMsgContext 
createSeqMessage, MessageContext outMessage) throws AxisFault {

+               

+               IOMRMElement messagePart = 

+                       
createSeqMessage.getMessagePart(Constants.MESSAGE_PART_CREATE_SEQ);

+               CreateSequence cs = (CreateSequence) messagePart;

+               

+               CreateSequenceResponse response = new CreateSequenceResponse();

+               

+               Identifier identifier = new Identifier();

+               // TODO : set the an appropriate id 

+               identifier.setIndentifer("temp-id-of-sandesha");

+               response.setIdentifier(identifier);

+               Accept accept = new Accept();

+               EndpointReference acksToEPR = createSeqMessage.getTo();  

+               AcksTo acksTo = new AcksTo(acksToEPR);

+               accept.setAcksTo(acksTo);

+               response.setAccept(accept);

+               

+               SOAPEnvelope envelope = createSeqMessage.getSOAPEnvelope();

+               envelope.getBody().getFirstChild().detach();

+               

+               response.toSOAPEnvelope(envelope);

+        EndpointReference fromEPR= new 
EndpointReference("http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous";);

+

+        outMessage.setFrom(fromEPR);

+        
outMessage.setWSAAction("http://schemas.xmlsoap.org/ws/2005/02/rm/CreateSequenceResponse";);

+        

+        /*try {

+                       XMLStreamWriter writer = 
XMLOutputFactory.newInstance().createXMLStreamWriter(System.out);

+                       envelope.serialize(writer);

+               }catch (Exception ex){

+                       ex.printStackTrace();

+               }*/

+               

+        outMessage.setEnvelope(envelope);

+        RMMsgContext createSeqResponse = new RMMsgContext(outMessage);

+               return createSeqResponse;

+       }

 }


Modified: 
webservices/sandesha/trunk/src/org/apache/sandesha2/handlers/ServerInHandler.java
URL: 
http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/handlers/ServerInHandler.java?rev=263873&r1=263872&r2=263873&view=diff
==============================================================================
--- 
webservices/sandesha/trunk/src/org/apache/sandesha2/handlers/ServerInHandler.java
 (original)
+++ 
webservices/sandesha/trunk/src/org/apache/sandesha2/handlers/ServerInHandler.java
 Sun Aug 28 05:56:25 2005
@@ -34,10 +34,16 @@
 public class ServerInHandler extends AbstractHandler {

 

        public void invoke(MessageContext msgCtx) throws AxisFault {

+               System.out.println  ("In server Handler 1");

+               

+               String opearaitonName = 
msgCtx.getOperationContext().getAxisOperation().getName().getLocalPart();

+               System.out.println ("Operation is:" + opearaitonName);

+               

                RMMsgContext rmMsgCtx = 
MsgInitializer.initializeMessage(msgCtx);

                MsgValidator.validateMessage(rmMsgCtx);

                

                MsgProcessor msgProcessor = 
MsgProcessorFactory.getMessageProcessor(rmMsgCtx.getMessageType());

+               

                try {

                        msgProcessor.processMessage(rmMsgCtx);

                }catch (MsgProcessorException mpe) {


Modified: 
webservices/sandesha/trunk/src/org/apache/sandesha2/msgprocessors/CreateSeqMsgProcessor.java
URL: 
http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/msgprocessors/CreateSeqMsgProcessor.java?rev=263873&r1=263872&r2=263873&view=diff
==============================================================================
--- 
webservices/sandesha/trunk/src/org/apache/sandesha2/msgprocessors/CreateSeqMsgProcessor.java
 (original)
+++ 
webservices/sandesha/trunk/src/org/apache/sandesha2/msgprocessors/CreateSeqMsgProcessor.java
 Sun Aug 28 05:56:25 2005
@@ -17,7 +17,9 @@
 

 package org.apache.sandesha2.msgprocessors;

 

+import org.apache.sandesha2.Constants;

 import org.apache.sandesha2.RMMsgContext;

+import org.apache.sandesha2.wsrm.CreateSequence;

 

 /**

  * @author 

@@ -27,5 +29,12 @@
 

        public void processMessage(RMMsgContext rmMsgCtx) throws 
MsgProcessorException {

                //TODO: Add create sequence message processing logic

+               CreateSequence createSeq = (CreateSequence) 
rmMsgCtx.getMessagePart(Constants.MESSAGE_PART_CREATE_SEQ);

+

+               //rmMsgCtx.test();

+               //Store AcksTo Value

+               

+               //Change the Operation (to go throught CreateSequence)

+               

        }

 }


Modified: 
webservices/sandesha/trunk/src/org/apache/sandesha2/msgreceivers/RMMessageReceiver.java
URL: 
http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/msgreceivers/RMMessageReceiver.java?rev=263873&r1=263872&r2=263873&view=diff
==============================================================================
--- 
webservices/sandesha/trunk/src/org/apache/sandesha2/msgreceivers/RMMessageReceiver.java
 (original)
+++ 
webservices/sandesha/trunk/src/org/apache/sandesha2/msgreceivers/RMMessageReceiver.java
 Sun Aug 28 05:56:25 2005
@@ -18,17 +18,59 @@
 package org.apache.sandesha2.msgreceivers;

 

 import org.apache.axis2.AxisFault;

+import org.apache.axis2.addressing.EndpointReference;

 import org.apache.axis2.context.MessageContext;

+import org.apache.axis2.om.OMAbstractFactory;

+import org.apache.axis2.om.OMElement;

+import org.apache.axis2.om.OMFactory;

+import org.apache.axis2.om.OMNamespace;

+import org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver;

 import org.apache.axis2.receivers.AbstractMessageReceiver;

+import org.apache.axis2.soap.SOAP11Constants;

+import org.apache.axis2.soap.SOAP12Constants;

+import org.apache.axis2.soap.SOAPEnvelope;

+import org.apache.axis2.soap.SOAPFactory;

+import org.apache.sandesha2.Constants;

+import org.apache.sandesha2.MsgInitializer;

+import org.apache.sandesha2.MsgValidator;

+import org.apache.sandesha2.RMMsgContext;

+import org.apache.sandesha2.RMMsgCreator;

 

 /**

- * @author 

- * 

+ * @author  

  */

 

-public class RMMessageReceiver extends AbstractMessageReceiver {

+public class RMMessageReceiver extends AbstractInOutSyncMessageReceiver {

+

+       public void invokeBusinessLogic(MessageContext inMessage, 
MessageContext outMessage) throws AxisFault {

+

+               System.out.println("RM Msg Receiver was called");

+               RMMsgContext rmMsgCtx = 
MsgInitializer.initializeMessage(inMessage);

+               MsgValidator.validateMessage(rmMsgCtx);

+

+               if (rmMsgCtx.getMessageType() == 
Constants.MESSAGE_TYPE_CREATE_SEQ) {

+                       

+                       RMMsgContext createSeqResponse = RMMsgCreator

+                                       
.createCreateSeqResponseMsg(rmMsgCtx,outMessage);

+

+                       //createSeqResponse.serializeSOAPEnvelop();

+                       outMessage.setResponseWritten(true);

+               }

 

-       public void receive(MessageContext arg0) throws AxisFault {

-               // TODO Message receiver logic.

        }

-}

+

+       private SOAPFactory getSOAPFactory(MessageContext inMessage)

+                       throws AxisFault {

+               String nsURI = inMessage.getEnvelope().getNamespace().getName();

+               if (SOAP12Constants.SOAP_ENVELOPE_NAMESPACE_URI.equals(nsURI)) {

+                       fac = OMAbstractFactory.getSOAP12Factory();

+               } else if 
(SOAP11Constants.SOAP_ENVELOPE_NAMESPACE_URI.equals(nsURI)) {

+                       fac = OMAbstractFactory.getSOAP11Factory();

+               } else {

+                       throw new AxisFault(

+                                       "Unknown SOAP Version. Current Axis 
handles only SOAP 1.1 and SOAP 1.2 messages");

+               }

+               return fac;

+       }

+

+}
\ No newline at end of file

Modified: 
webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/RMElements.java
URL: 
http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/RMElements.java?rev=263873&r1=263872&r2=263873&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/RMElements.java 
(original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/RMElements.java 
Sun Aug 28 05:56:25 2005
@@ -18,6 +18,9 @@
 

 import java.util.Iterator;

 

+import javax.xml.stream.XMLOutputFactory;

+import javax.xml.stream.XMLStreamWriter;

+

 import org.apache.axis2.om.OMElement;

 import org.apache.axis2.om.OMException;

 import org.apache.axis2.soap.SOAPEnvelope;

@@ -68,6 +71,7 @@
                createSequenceElement.fromSOAPEnvelope(envelope);

                createSequenceResponseElement.fromSOAPEnvelope(envelope);

                terminateSequenceElement.fromSOAPEnvelope(envelope);

+

                return this;

        }

 


Added: 
webservices/sandesha/trunk/test/org/apache/sandesha2/SimpleServerImpl.java
URL: 
http://svn.apache.org/viewcvs/webservices/sandesha/trunk/test/org/apache/sandesha2/SimpleServerImpl.java?rev=263873&view=auto
==============================================================================
--- webservices/sandesha/trunk/test/org/apache/sandesha2/SimpleServerImpl.java 
(added)
+++ webservices/sandesha/trunk/test/org/apache/sandesha2/SimpleServerImpl.java 
Sun Aug 28 05:56:25 2005
@@ -0,0 +1,23 @@
+/*

+ * Created on Aug 26, 2005

+ *

+ * TODO To change the template for this generated file go to

+ * Window - Preferences - Java - Code Style - Code Templates

+ */

+package org.apache.sandesha2;

+

+import java.io.IOException;

+

+import org.apache.axis2.transport.http.SimpleHTTPServer;

+

+/**

+ * @author 

+ * 

+ */

+public class SimpleServerImpl {

+

+    public static void main(String[] args) throws IOException {

+        SimpleHTTPServer sas= new SimpleHTTPServer("E:\\Program Files\\Apache 
Software Foundation\\Tomcat 5.0\\webapps\\axis2\\WEB-INF",8080);

+        sas.start();

+      }

+}




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

Reply via email to