You are viewing a plain text version of this content. The canonical link for it is here.
Posted to fx-dev@ws.apache.org by ch...@apache.org on 2005/09/21 11:35:38 UTC

svn commit: r290667 - in /webservices/sandesha/trunk: ./ config/ samples/interop/ src/org/apache/sandesha2/ src/org/apache/sandesha2/handlers/ src/org/apache/sandesha2/msgprocessors/ src/org/apache/sandesha2/msgreceivers/ src/org/apache/sandesha2/stora...

Author: chamikara
Date: Wed Sep 21 02:34:02 2005
New Revision: 290667

URL: http://svn.apache.org/viewcvs?rev=290667&view=rev
Log:
Changed storage classes to store in ConfigurationContext (instead of static objects).

Added:
    webservices/sandesha/trunk/samples/interop/services.xml
    webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/IOMRMPart.java
Removed:
    webservices/sandesha/trunk/samples/interop/service.xml
    webservices/sandesha/trunk/src/org/apache/sandesha2/storage/persistent/
Modified:
    webservices/sandesha/trunk/config/module.xml
    webservices/sandesha/trunk/maven.xml
    webservices/sandesha/trunk/src/org/apache/sandesha2/Constants.java
    webservices/sandesha/trunk/src/org/apache/sandesha2/InOrderInvoker.java
    webservices/sandesha/trunk/src/org/apache/sandesha2/RMException.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/SandeshaModule.java
    webservices/sandesha/trunk/src/org/apache/sandesha2/SequenceMenager.java
    webservices/sandesha/trunk/src/org/apache/sandesha2/handlers/ServerOutHandler.java
    webservices/sandesha/trunk/src/org/apache/sandesha2/msgprocessors/ApplicationMsgProcessor.java
    webservices/sandesha/trunk/src/org/apache/sandesha2/msgreceivers/RMMessageReceiver.java
    webservices/sandesha/trunk/src/org/apache/sandesha2/storage/AbstractBeanMgrFactory.java
    webservices/sandesha/trunk/src/org/apache/sandesha2/storage/beanmanagers/CreateSeqBeanMgr.java
    webservices/sandesha/trunk/src/org/apache/sandesha2/storage/beanmanagers/NextMsgBeanMgr.java
    webservices/sandesha/trunk/src/org/apache/sandesha2/storage/beanmanagers/RetransmitterBeanMgr.java
    webservices/sandesha/trunk/src/org/apache/sandesha2/storage/beanmanagers/SequencePropertyBeanMgr.java
    webservices/sandesha/trunk/src/org/apache/sandesha2/storage/beanmanagers/StorageMapBeanMgr.java
    webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemBeanMgrFactory.java
    webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemCreateSeqBeanMgr.java
    webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemNextMsgBeanMgr.java
    webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemRetransmitterBeanMgr.java
    webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemSequencePropretyBeanMgr.java
    webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemStorageMapBeanMgr.java
    webservices/sandesha/trunk/src/org/apache/sandesha2/util/SandeshaUtil.java
    webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/AckRequested.java
    webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/CreateSequence.java
    webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/CreateSequenceResponse.java
    webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/Sequence.java
    webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/SequenceAcknowledgement.java
    webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/TerminateSequence.java

Modified: webservices/sandesha/trunk/config/module.xml
URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/config/module.xml?rev=290667&r1=290666&r2=290667&view=diff
==============================================================================
--- webservices/sandesha/trunk/config/module.xml (original)
+++ webservices/sandesha/trunk/config/module.xml Wed Sep 21 02:34:02 2005
@@ -13,18 +13,19 @@
     </outflow>
 
 
-
-    <operation name="CreateSequence" mep="http://www.w3.org/2004/08/wsdl/in-out">
-        <messageReceiver class="org.apache.sandesha2.msgreceivers.RMMessageReceiver"/>
-        <parameter name="wsamapping" locked="xsd:false">http://schemas.xmlsoap.org/ws/2005/02/rm/CreateSequence</parameter>
-    </operation> 
-    
     <operation name="TerminateSequence" mep="http://www.w3.org/2004/08/wsdl/in-only">
         <messageReceiver class="org.apache.sandesha2.msgreceivers.RMMessageReceiver"/>
         <parameter name="wsamapping" locked="xsd:false">http://schemas.xmlsoap.org/ws/2005/02/rm/TerminateSequence</parameter>
     </operation>
+    
+    <operation name="CreateSequence" mep="http://www.w3.org/2004/08/wsdl/in-out">
+        <messageReceiver class="org.apache.sandesha2.msgreceivers.RMMessageReceiver"/>
+        <parameter name="wsamapping" locked="xsd:false">http://schemas.xmlsoap.org/ws/2005/02/rm/CreateSequence</parameter>
+    </operation> 
 
 <!--
+http://schemas.xmlsoap.org/ws/2005/02/rm/TerminateSequence
+http://schemas.xmlsoap.org/ws/2005/02/rm/TerminateSequence
     <operation name="CreateSequence" mep="http://www.w3.org/2004/08/wsdl/in-out">
         <parameter name="wsamapping" >http://schemas.xmlsoap.org/ws/2005/02/rm/CreateSequence</parameter>
         <messageReceiver class="org.apache.sandesha2.msgreceivers.RMMessageReceiver"/>

Modified: webservices/sandesha/trunk/maven.xml
URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/maven.xml?rev=290667&r1=290666&r2=290667&view=diff
==============================================================================
--- webservices/sandesha/trunk/maven.xml (original)
+++ webservices/sandesha/trunk/maven.xml Wed Sep 21 02:34:02 2005
@@ -26,7 +26,7 @@
         <ant:property name="service.jar.name" value="InteropService.jar"/>
         <ant:mkdir dir="${basedir}/target/dist" />
         <ant:mkdir dir="${basedir}/target/samples/classes/META-INF" />
-        <ant:copy file="${dir.samples}/interop/service.xml" todir="${basedir}/target/samples/classes/META-INF" /> 
+        <ant:copy file="${dir.samples}/interop/services.xml" todir="${basedir}/target/samples/classes/META-INF" /> 
         <ant:jar jarfile="${basedir}/target/dist/${service.jar.name}" basedir="${maven.build.dir}/samples/classes" />
     </goal>
 

Added: webservices/sandesha/trunk/samples/interop/services.xml
URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/samples/interop/services.xml?rev=290667&view=auto
==============================================================================
--- webservices/sandesha/trunk/samples/interop/services.xml (added)
+++ webservices/sandesha/trunk/samples/interop/services.xml Wed Sep 21 02:34:02 2005
@@ -0,0 +1,22 @@
+<service name="InteropService">
+    <parameter name="ServiceClass" locked="xsd:false">org.apache.sandesha2.samples.RMInteropService</parameter>
+
+   <description>
+        This is a testing service , to test the system is working or not
+    </description>
+
+    <module ref="sandesha" />
+
+    <operation name="ping">  
+        <messageReceiver class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver" />
+    </operation>
+
+    <operation name="echoString" />
+
+<!--
+    <operation name="ping">
+		<messageReceiver class="org.apache.sandesha2.msgreceivers.RMMessageReceiver" />
+	</operation> 
+-->
+    
+</service>
\ No newline at end of file

Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/Constants.java
URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/Constants.java?rev=290667&r1=290666&r2=290667&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/Constants.java (original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/Constants.java Wed Sep 21 02:34:02 2005
@@ -34,6 +34,7 @@
 
 		String ACTION_SEQ_ACK = "http://schemas.xmlsoap.org/ws/2005/02/rm/SequenceAcknowledgement";
 		
+		String ACTION_CREATE_SEQ = "http://schemas.xmlsoap.org/ws/2005/02/rm/CreateSequenceResponse";
 		
 		String NS_URI_CREATE_SEQ_RESPONSE = "http://schemas.xmlsoap.org/ws/2005/02/rm/CreateSequenceResponse";
 		
@@ -153,13 +154,15 @@
 	
 	String SEQ_PROPERTY_ACKS_TO = "acksToProperty";
 	
+	String SEQ_PROPERTY_OUT_SEQUENCE_ID = "OutSequenceId";
+	
 	
 	//SOAP versions
 	int SOAP_1_1 = 1;
 	
 	int SOAP_1_2 = 2;
 	
-	int DEFAULT_SOAP_VERSION = SOAP_1_2;
+	int DEFAULT_SOAP_VERSION = SOAP_1_1;
 
 	
 	//message context properties
@@ -181,5 +184,15 @@
 	
 	String DEFAULT_INVOCATION_TYPE = EXACTLY_ONCE;
 	
+	
+	String CREATE_SEQUECE_BEAN_MAP = "CreateSequenceBeanMap";
+	
+	String RETRANSMITTER_BEAN_MAP = "RetransmitterBeanMap";
+	
+	String SEQUENCE_PROPERTY_BEAN_MAP = "SequencePropertyBeanMap";
+	
+	String STORAGE_MAP_BEAN_MAP = "StorageMapBeanMap";
+	
+	String NEXT_MESSAGE_BEAN_MAP = "NextMsgBeanMap";
 
 }

Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/InOrderInvoker.java
URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/InOrderInvoker.java?rev=290667&r1=290666&r2=290667&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/InOrderInvoker.java (original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/InOrderInvoker.java Wed Sep 21 02:34:02 2005
@@ -24,6 +24,7 @@
 
 
 import org.apache.axis2.AxisFault;
+import org.apache.axis2.context.ConfigurationContext;
 import org.apache.axis2.context.MessageContext;
 import org.apache.axis2.engine.AxisEngine;
 import org.apache.sandesha2.msgprocessors.MsgProcessorException;
@@ -43,6 +44,7 @@
 
 public class InOrderInvoker extends Thread {
 	boolean stopInvoker = false;
+	ConfigurationContext context = null;
 	
 	public synchronized void stopWork() {
 		stopInvoker = true;
@@ -52,16 +54,18 @@
 		return stopInvoker;
 	}
 	
+	public void setConfugurationContext (ConfigurationContext context) {
+		this.context = context;
+	}
+	
 	public void run (){
 		
 		while (!isStopped()) {
 			
 			System.out.print ("|");
-			NextMsgBeanMgr nextMsgMgr = AbstractBeanMgrFactory.getBeanMgrFactory(Constants.DEFAULT_STORAGE_TYPE).
-					getNextMsgBeanMgr();
+			NextMsgBeanMgr nextMsgMgr = AbstractBeanMgrFactory.getInstance(context).getNextMsgBeanMgr();
 			
-			StorageMapBeanMgr storageMapMgr = AbstractBeanMgrFactory.getBeanMgrFactory(Constants.DEFAULT_STORAGE_TYPE).
-					getStorageMapBeanMgr();
+			StorageMapBeanMgr storageMapMgr = AbstractBeanMgrFactory.getInstance(context).getStorageMapBeanMgr();
 			
 			Collection coll = nextMsgMgr.retrieveAll ();
 			

Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/RMException.java
URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/RMException.java?rev=290667&r1=290666&r2=290667&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/RMException.java (original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/RMException.java Wed Sep 21 02:34:02 2005
@@ -14,4 +14,7 @@
  */
 public class RMException extends Exception {
 
+	public RMException (String message) {
+		super (message);
+	}
 }

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=290667&r1=290666&r2=290667&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/RMMsgContext.java (original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/RMMsgContext.java Wed Sep 21 02:34:02 2005
@@ -18,6 +18,7 @@
 package org.apache.sandesha2;
 
 import java.util.HashMap;
+import java.util.Iterator;
 
 import javax.xml.stream.XMLOutputFactory;
 import javax.xml.stream.XMLStreamWriter;
@@ -26,12 +27,16 @@
 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.AbstractContext;
 import org.apache.axis2.context.MessageContext;
 import org.apache.axis2.soap.SOAPEnvelope;
+import org.apache.sandesha2.util.SandeshaUtil;
 import org.apache.sandesha2.wsrm.CreateSequence;
 import org.apache.sandesha2.wsrm.IOMRMElement;
+import org.apache.sandesha2.wsrm.IOMRMPart;
 import org.apache.sandesha2.wsrm.TerminateSequence;
 import org.apache.wsdl.WSDLConstants;
+import org.ietf.jgss.MessageProp;
 
 /**
  * @author Chamikara
@@ -50,12 +55,27 @@
 		messageType = Constants.MESSAGE_TYPE_UNKNOWN;
 	}
 	
-	public RMMsgContext (MessageContext ctx){
+	public RMMsgContext (MessageContext ctx) {
 		this ();
 		this.msgContext = ctx;
+
 		//MsgInitializer.populateRMMsgContext(ctx,this);
 	}
 	
+	public void addSOAPEnvelope () throws AxisFault {
+		if (msgContext.getEnvelope()==null) {
+			msgContext.setEnvelope(SOAPAbstractFactory.getSOAPFactory(Constants.DEFAULT_SOAP_VERSION).getDefaultEnvelope());
+		}	
+		
+		SOAPEnvelope envelope = msgContext.getEnvelope();
+		Iterator keys = rmMessageParts.keySet().iterator();
+		while (keys.hasNext()) {
+			Object key = keys.next();
+			IOMRMPart rmPart = (IOMRMPart) rmMessageParts.get(key);
+			rmPart.toSOAPEnvelope(envelope);
+		}	
+	}
+	
 	public int getMessageType (){
 		return messageType;
 	}
@@ -65,7 +85,7 @@
 			this.messageType = msgType;
 	}
 	
-	public void setMessagePart (int partId, IOMRMElement part){
+	public void setMessagePart (int partId, IOMRMPart part){
 		if (partId>=0 && partId<=Constants.MAX_MSG_PART_ID)
 			rmMessageParts.put(new Integer (partId),part);
 	}
@@ -125,6 +145,10 @@
 		msgContext.setTo(epr);
 	}
 	
+	public void setReplyTo (EndpointReference epr) {
+		msgContext.setReplyTo(epr);
+	}
+	
 	public void setMessageId (String messageId){
 		msgContext.setMessageID(messageId);
 	}
@@ -154,6 +178,13 @@
 		
 		msgContext.setProperty(key,val);
 		return true;
+	}
+	
+	public AbstractContext getContext () {
+	   if (msgContext==null)
+	   	return null;
+	   
+	   return msgContext.getSystemContext();
 	}
 	
 	

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=290667&r1=290666&r2=290667&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/RMMsgCreator.java (original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/RMMsgCreator.java Wed Sep 21 02:34:02 2005
@@ -24,12 +24,14 @@
 import org.apache.axis2.addressing.EndpointReference;
 import org.apache.axis2.addressing.MessageInformationHeaders;
 import org.apache.axis2.addressing.om.AddressingHeaders;
+import org.apache.axis2.context.ConfigurationContext;
 import org.apache.axis2.context.MessageContext;
 import org.apache.axis2.om.OMAbstractFactory;
 import org.apache.axis2.om.impl.MIMEOutputUtils;
 import org.apache.axis2.soap.SOAPEnvelope;
 import org.apache.axis2.soap.SOAPFactory;
 import org.apache.axis2.wsdl.builder.wsdl4j.WSDL11MEPFinder;
+import org.apache.log4j.spi.Configurator;
 import org.apache.sandesha2.msgreceivers.RMMessageReceiver;
 import org.apache.sandesha2.storage.AbstractBeanMgrFactory;
 import org.apache.sandesha2.storage.beanmanagers.SequencePropertyBeanMgr;
@@ -43,6 +45,7 @@
 import org.apache.sandesha2.wsrm.CreateSequence;
 import org.apache.sandesha2.wsrm.CreateSequenceResponse;
 import org.apache.sandesha2.wsrm.IOMRMElement;
+import org.apache.sandesha2.wsrm.IOMRMPart;
 import org.apache.sandesha2.wsrm.Identifier;
 import org.apache.sandesha2.wsrm.Sequence;
 import org.apache.sandesha2.wsrm.SequenceAcknowledgement;
@@ -55,7 +58,37 @@
  */
 
 public class RMMsgCreator {
+	
+	public static RMMsgContext createCreateSeqMsg (RMMsgContext applicationMsg) throws AxisFault {
+		ConfigurationContext context = applicationMsg.getMessageContext().getSystemContext();
+		if (context==null)
+			throw new AxisFault ("Configuration Context is null");
+		
+		MessageContext msgContext = new MessageContext (context);
+		RMMsgContext createSeqMsg = new RMMsgContext (msgContext);
+		
+		IOMRMPart createSeqiuencePart = new CreateSequence ();
+		createSeqMsg.setMessagePart(Constants.MESSAGE_PART_CREATE_SEQ,createSeqiuencePart);
+		createSeqMsg.addSOAPEnvelope();
+		
+		createSeqMsg.setAction(Constants.WSRM.ACTION_CREATE_SEQ);
+		EndpointReference to = applicationMsg.getTo();
+		if (to==null || to.getAddress()==null || to.getAddress()==null || to.getAddress()=="")
+			throw new AxisFault ("To value of the Application Message is not set correctly");
+	
+		createSeqMsg.setTo(to);
+		
+		EndpointReference replyTo = applicationMsg.getReplyTo();
+		if (replyTo==null || replyTo.getAddress()==null || replyTo.getAddress()==null || to.getAddress()=="")
+			throw new AxisFault ("ReplyTo value of the Application Message is not set correctly");
+	
+		createSeqMsg.setTo(replyTo);
+		createSeqMsg.setReplyTo(replyTo);
+		
+		return createSeqMsg;
+	}
 
+	
 	public static RMMsgContext createCreateSeqResponseMsg (RMMsgContext createSeqMessage, MessageContext outMessage) throws AxisFault {
 		
 		IOMRMElement messagePart = 
@@ -130,13 +163,14 @@
 		id.setIndentifer(sequenceId);
 		sequenceAck.setIdentifier(id);
 
-		//SequencePropertyBean seqPropBean = new SequencePropertyBean (newSequenceId,Constants.SEQ_PROPERTY_RECEIVED_MESSAGES,acksTo);
+//		SequencePropertyBean seqPropBean = new SequencePropertyBean (newSequenceId,Constants.SEQ_PROPERTY_RECEIVED_MESSAGES,acksTo);
 //		SequencePropertyBeanMgr beanMgr = new SequencePropertyBeanMgr (Constants.DEFAULT_STORAGE_TYPE);
 //		SequencePropertyBean msgNosBean = (SequencePropertyBean) beanMgr.retrieve(sequenceId,Constants.SEQ_PROPERTY_RECEIVED_MESSAGES);
 //		String msgNoList = (String) msgNosBean.getValue();
 		
-		SequencePropertyBeanMgr seqPropMgr = AbstractBeanMgrFactory.getBeanMgrFactory(Constants.DEFAULT_STORAGE_TYPE).
-					getSequencePropretyBeanMgr();
+		ConfigurationContext ctx = applicationMsg.getMessageContext().getSystemContext();
+		SequencePropertyBeanMgr seqPropMgr = AbstractBeanMgrFactory.getInstance(ctx).
+							getSequencePropretyBeanMgr();
 		
 		SequencePropertyBean seqBean = seqPropMgr.retrieve(sequenceId,Constants.SEQ_PROPERTY_RECEIVED_MESSAGES);
 		String msgNoList = (String) seqBean.getValue();

Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/SandeshaModule.java
URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/SandeshaModule.java?rev=290667&r1=290666&r2=290667&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/SandeshaModule.java (original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/SandeshaModule.java Wed Sep 21 02:34:02 2005
@@ -35,7 +35,7 @@
     public void init(AxisConfiguration axisSystem) throws AxisFault {
        
     	//Start invoker thread
-    	
+    	//axisSystem.get
     	//inorderInvoker.start();
     	
     }

Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/SequenceMenager.java
URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/SequenceMenager.java?rev=290667&r1=290666&r2=290667&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/SequenceMenager.java (original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/SequenceMenager.java Wed Sep 21 02:34:02 2005
@@ -8,6 +8,10 @@
 
 import java.util.ArrayList;
 
+import javax.naming.Context;
+
+import org.apache.axis2.context.AbstractContext;
+import org.apache.axis2.context.ConfigurationContext;
 import org.apache.sandesha2.storage.AbstractBeanMgrFactory;
 import org.apache.sandesha2.storage.beanmanagers.NextMsgBeanMgr;
 import org.apache.sandesha2.storage.beanmanagers.SequencePropertyBeanMgr;
@@ -21,23 +25,21 @@
  */
 public class SequenceMenager {
 
-	public static void setUpNewSequence (String sequenceId) {
+	public static void setUpNewSequence (String sequenceId,ConfigurationContext context) {
 //		SequencePropertyBean seqPropBean = new SequencePropertyBean (sequenceId,Constants.SEQ_PROPERTY_RECEIVED_MESSAGES,"");
 //		SequencePropertyBeanMgr beanMgr = new SequencePropertyBeanMgr (Constants.DEFAULT_STORAGE_TYPE);
 //		beanMgr.create(seqPropBean);
 	
 		SequencePropertyBean seqPropBean = new SequencePropertyBean (sequenceId,Constants.SEQ_PROPERTY_RECEIVED_MESSAGES,"");
-		SequencePropertyBeanMgr seqPropMgr = AbstractBeanMgrFactory.getBeanMgrFactory(Constants.DEFAULT_STORAGE_TYPE).
-				getSequencePropretyBeanMgr();
+		SequencePropertyBeanMgr seqPropMgr = AbstractBeanMgrFactory.getInstance(context).getSequencePropretyBeanMgr();
 		seqPropMgr.insert(seqPropBean);
 		
-		NextMsgBeanMgr nextMsgMgr = AbstractBeanMgrFactory.getBeanMgrFactory(Constants.DEFAULT_STORAGE_TYPE).
-					getNextMsgBeanMgr();
+		NextMsgBeanMgr nextMsgMgr = AbstractBeanMgrFactory.getInstance(context).getNextMsgBeanMgr();
 		nextMsgMgr.insert(new NextMsgBean (sequenceId,1)); // 1 will be the next message to invoke
-														   //this will apply for only in-order invocations.
+														   //this will apply for only in-order invocations.	
 	}
 	
 	public void removeSequence (String sequence) {
-		
+				
 	}
 }

Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/handlers/ServerOutHandler.java
URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/handlers/ServerOutHandler.java?rev=290667&r1=290666&r2=290667&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/handlers/ServerOutHandler.java (original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/handlers/ServerOutHandler.java Wed Sep 21 02:34:02 2005
@@ -17,9 +17,16 @@
 
 package org.apache.sandesha2.handlers;
 
+import javax.xml.stream.XMLOutputFactory;
+import javax.xml.stream.XMLStreamWriter;
+
 import org.apache.axis2.AxisFault;
+import org.apache.axis2.context.AbstractContext;
+import org.apache.axis2.context.ConfigurationContext;
 import org.apache.axis2.context.MessageContext;
 import org.apache.axis2.handlers.AbstractHandler;
+import org.apache.axis2.soap.SOAPEnvelope;
+import org.apache.log4j.lf5.viewer.configure.MRUFileManager;
 import org.apache.sandesha2.Constants;
 import org.apache.sandesha2.MsgInitializer;
 import org.apache.sandesha2.MsgValidator;
@@ -28,6 +35,10 @@
 import org.apache.sandesha2.RMMsgCreator;
 import org.apache.sandesha2.msgprocessors.MsgProcessorException;
 import org.apache.sandesha2.msgreceivers.RMMessageReceiver;
+import org.apache.sandesha2.storage.AbstractBeanMgrFactory;
+import org.apache.sandesha2.storage.beanmanagers.SequencePropertyBeanMgr;
+import org.apache.sandesha2.storage.beans.SequencePropertyBean;
+import org.apache.sandesha2.wsrm.Sequence;
 import org.apache.wsdl.MessageReference;
 import org.apache.wsdl.WSDLConstants;
 
@@ -57,11 +68,65 @@
         }catch (RMException ex) {
         	throw new AxisFault ("Cant initialize the message");
         }
-		
-
-
+        
+        
 		if (requestRMMsgCtx.getMessageType()!=Constants.MESSAGE_TYPE_CREATE_SEQ)
 			RMMsgCreator.addAckMessage(rmMsgCtx);
+		
+		if (rmMsgCtx.getMessageType()==Constants.MESSAGE_TYPE_UNKNOWN) {
+			//This is a possible response message.
+			System.out.println ("GOT Possible Response Message");
+			
+			processResponseMessage(rmMsgCtx,requestRMMsgCtx);
+		}
+		
+		SOAPEnvelope env = msgCtx.getEnvelope();
+		
+		try {
+			XMLStreamWriter writer = XMLOutputFactory.newInstance().createXMLStreamWriter(System.out);
+			//env.serialize(writer);
+		}catch (Exception ex) {
+			ex.printStackTrace();
+		}
 
+	}
+	
+	private void processResponseMessage (RMMsgContext msg,RMMsgContext reqMsg) throws AxisFault {
+		if (msg==null || reqMsg==null)
+			throw new AxisFault ("Message or reques message is null");
+		
+		Sequence sequence = (Sequence) reqMsg.getMessagePart(Constants.MESSAGE_PART_SEQUENCE);
+		//check weather the seq is is available.
+		
+		if (sequence==null)
+			throw new AxisFault ("Sequence part is null");
+		
+		String incomingSeqId = sequence.getIdentifier().getIdentifier();
+		if (incomingSeqId==null || incomingSeqId=="")
+			throw new AxisFault ("Invalid seqence Id");
+		
+		AbstractContext context = msg.getContext ();
+		if (context==null)
+			throw new AxisFault ("Context is null");
+		
+		System.out.println ("INCOMING SEQUENCE ID:" + incomingSeqId);
+		SequencePropertyBeanMgr mgr = AbstractBeanMgrFactory.getInstance(context).getSequencePropretyBeanMgr();
+		
+		SequencePropertyBean bean = mgr.retrieve(incomingSeqId,Constants.SEQ_PROPERTY_OUT_SEQUENCE_ID);
+		
+		if(bean.getValue()==null) {
+			//sequence id is not present
+			//add a create sequence
+			
+			RMMsgContext createSeqMessage = RMMsgCreator.createCreateSeqMsg (reqMsg);
+			
+			
+			//add msg to retransmitter with send=false;
+		}else {
+			//Sequence id is present
+			//set sequence part
+			//add message to retransmitter table with send=true;
+		}
+		
 	}
 }

Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/msgprocessors/ApplicationMsgProcessor.java
URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/msgprocessors/ApplicationMsgProcessor.java?rev=290667&r1=290666&r2=290667&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/msgprocessors/ApplicationMsgProcessor.java (original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/msgprocessors/ApplicationMsgProcessor.java Wed Sep 21 02:34:02 2005
@@ -22,6 +22,7 @@
 import javax.xml.namespace.QName;
 
 import org.apache.axis2.AxisFault;
+import org.apache.axis2.context.ConfigurationContext;
 import org.apache.axis2.context.MessageContext;
 import org.apache.axis2.engine.AxisEngine;
 import org.apache.sandesha2.Constants;
@@ -59,8 +60,8 @@
 		//setting acked msg no range
 		Sequence sequence = (Sequence) rmMsgCtx.getMessagePart(Constants.MESSAGE_PART_SEQUENCE);
 		String sequenceId = sequence.getIdentifier().getIdentifier();
-		SequencePropertyBeanMgr seqPropMgr = AbstractBeanMgrFactory.getBeanMgrFactory(Constants.DEFAULT_STORAGE_TYPE).
-				getSequencePropretyBeanMgr();
+		ConfigurationContext configCtx = rmMsgCtx.getMessageContext().getSystemContext();
+		SequencePropertyBeanMgr seqPropMgr = AbstractBeanMgrFactory.getInstance(configCtx).getSequencePropretyBeanMgr();
 		SequencePropertyBean msgsBean = seqPropMgr.retrieve( sequenceId,Constants.SEQ_PROPERTY_RECEIVED_MESSAGES);
 
 		long msgNo = sequence.getMessageNumber().getMessageNumber();
@@ -113,15 +114,13 @@
 		
 		
 //		Pause the messages bean if not the right message to invoke.
-		NextMsgBeanMgr mgr = AbstractBeanMgrFactory.getBeanMgrFactory(Constants.DEFAULT_STORAGE_TYPE).
-					getNextMsgBeanMgr();
+		NextMsgBeanMgr mgr = AbstractBeanMgrFactory.getInstance(configCtx).getNextMsgBeanMgr();
 		NextMsgBean bean = mgr.retrieve(sequenceId);
 		
 		if (bean==null)
 			throw new MsgProcessorException  ("Error- The sequence does not exist");
 		
-		StorageMapBeanMgr storageMapMgr = AbstractBeanMgrFactory.getBeanMgrFactory(Constants.DEFAULT_STORAGE_TYPE).
-						getStorageMapBeanMgr();
+		StorageMapBeanMgr storageMapMgr = AbstractBeanMgrFactory.getInstance(configCtx).getStorageMapBeanMgr();
 		
 		long nextMsgno = bean.getNextMsgNoToProcess(); 
 		

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=290667&r1=290666&r2=290667&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/msgreceivers/RMMessageReceiver.java (original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/msgreceivers/RMMessageReceiver.java Wed Sep 21 02:34:02 2005
@@ -27,6 +27,7 @@
 import org.apache.axis2.addressing.EndpointReference;
 import org.apache.axis2.addressing.MessageInformationHeaders;
 import org.apache.axis2.addressing.miheaders.RelatesTo;
+import org.apache.axis2.context.ConfigurationContext;
 import org.apache.axis2.context.MessageContext;
 import org.apache.axis2.engine.AxisEngine;
 import org.apache.axis2.om.OMAbstractFactory;
@@ -91,7 +92,8 @@
 		if (newSequenceId==null)
 			throw new AxisFault ("Internal error - Generated sequence id is null");
 
-		SequenceMenager.setUpNewSequence(newSequenceId);
+		ConfigurationContext configCtx = inMessage.getSystemContext();
+		SequenceMenager.setUpNewSequence(newSequenceId,configCtx);
 
 		CreateSequence createSeq = (CreateSequence) createSeqMsg.getMessagePart(Constants.MESSAGE_PART_CREATE_SEQ);
 		if (createSeq==null)
@@ -105,8 +107,7 @@
 //		SequencePropertyBeanMgr beanMgr = new SequencePropertyBeanMgr (Constants.DEFAULT_STORAGE_TYPE);
 //		beanMgr.create(seqPropBean);
 		
-		SequencePropertyBeanMgr seqPropMgr = AbstractBeanMgrFactory.getBeanMgrFactory(Constants.DEFAULT_STORAGE_TYPE).
-					getSequencePropretyBeanMgr();
+		SequencePropertyBeanMgr seqPropMgr = AbstractBeanMgrFactory.getInstance(configCtx).getSequencePropretyBeanMgr();
 		seqPropMgr.insert(seqPropBean);
 		outMessage.setResponseWritten(true);
 
@@ -205,6 +206,9 @@
 			if (rmMsgCtx.getMessageType()==Constants.MESSAGE_TYPE_CREATE_SEQ) {
 				//TODO handle async create seq.
 				setCreateSequence(inMessage,outMessage);
+				ConfigurationContext configCtx = outMessage.getSystemContext();
+				AxisEngine engine = new AxisEngine (configCtx);
+				engine.send(outMessage);
 			}
 		}
 	}

Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/storage/AbstractBeanMgrFactory.java
URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/storage/AbstractBeanMgrFactory.java?rev=290667&r1=290666&r2=290667&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/storage/AbstractBeanMgrFactory.java (original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/storage/AbstractBeanMgrFactory.java Wed Sep 21 02:34:02 2005
@@ -16,6 +16,8 @@
  */
 package org.apache.sandesha2.storage;
 
+import org.apache.axis2.context.AbstractContext;
+import org.apache.axis2.context.ConfigurationContext;
 import org.apache.sandesha2.Constants;
 import org.apache.sandesha2.storage.beanmanagers.CreateSeqBeanMgr;
 import org.apache.sandesha2.storage.beanmanagers.NextMsgBeanMgr;
@@ -23,7 +25,6 @@
 import org.apache.sandesha2.storage.beanmanagers.SequencePropertyBeanMgr;
 import org.apache.sandesha2.storage.beanmanagers.StorageMapBeanMgr;
 import org.apache.sandesha2.storage.inmemory.InMemBeanMgrFactory;
-import org.apache.sandesha2.storage.persistent.PersistentBeanMgrFactory;
 
 import com.sun.corba.se.internal.core.Constant;
 
@@ -31,27 +32,56 @@
  * @author Chamikara Jayalath <ch...@wso2.com>
  * @author Sanka Samaranayake <ss...@gmail.com>
  */
-public abstract class AbstractBeanMgrFactory {
+public class AbstractBeanMgrFactory {
 
+	AbstractContext context = null;
 	
-	public abstract CreateSeqBeanMgr getCreateSeqBeanMgr();
+	private static AbstractBeanMgrFactory instance = null;
 	
-	public abstract NextMsgBeanMgr getNextMsgBeanMgr();
+	public CreateSeqBeanMgr getCreateSeqBeanMgr() {
+		return new CreateSeqBeanMgr (context);
+	}
 	
-	public abstract RetransmitterBeanMgr getRetransmitterBeanMgr();
+	public NextMsgBeanMgr getNextMsgBeanMgr() {
+		return new NextMsgBeanMgr (context);
+	}
 	
-	public abstract SequencePropertyBeanMgr getSequencePropretyBeanMgr();
+	public RetransmitterBeanMgr getRetransmitterBeanMgr() {
+		return new RetransmitterBeanMgr (context);
+	}
 	
-	public abstract StorageMapBeanMgr getStorageMapBeanMgr();
+	public SequencePropertyBeanMgr getSequencePropretyBeanMgr() {
+		return new SequencePropertyBeanMgr (context);
+	}
+	
+	public StorageMapBeanMgr getStorageMapBeanMgr() {
+		return new StorageMapBeanMgr (context);
+	}
+		
+//	public static AbstractBeanMgrFactory getBeanMgrFactory (int storageType) {
+//		switch (storageType) {
+//			case Constants.STORAGE_TYPE_PERSISTANCE:
+//				return new PersistentBeanMgrFactory();
+//			case Constants.STORAGE_TYPE_IN_MEMORY:
+//				return new  InMemBeanMgrFactory();
+//			default: 
+//				return null;
+//		}
+//	}
+	 
+	
+	private AbstractBeanMgrFactory (AbstractContext context) {
+		this.context = context;
+	}
+	
+	public void init (ConfigurationContext context) {
+		this.context = context;
+	}
+	
+	public static AbstractBeanMgrFactory getInstance (AbstractContext context) {
+		if (instance==null)
+			instance = new AbstractBeanMgrFactory (context);
 		
-	public static AbstractBeanMgrFactory getBeanMgrFactory (int storageType) {
-		switch (storageType) {
-			case Constants.STORAGE_TYPE_PERSISTANCE:
-				return new PersistentBeanMgrFactory();
-			case Constants.STORAGE_TYPE_IN_MEMORY:
-				return new  InMemBeanMgrFactory();
-			default: 
-				return null;
-		}
+		return instance;
 	}
 }

Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/storage/beanmanagers/CreateSeqBeanMgr.java
URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/storage/beanmanagers/CreateSeqBeanMgr.java?rev=290667&r1=290666&r2=290667&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/storage/beanmanagers/CreateSeqBeanMgr.java (original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/storage/beanmanagers/CreateSeqBeanMgr.java Wed Sep 21 02:34:02 2005
@@ -17,19 +17,76 @@
 package org.apache.sandesha2.storage.beanmanagers;
 
 import java.sql.ResultSet;
+import java.util.ArrayList;
 import java.util.Collection;
+import java.util.Hashtable;
+import java.util.Iterator;
 
+import org.apache.axis2.context.AbstractContext;
+import org.apache.axis2.context.ConfigurationContext;
+import org.apache.sandesha2.Constants;
+import org.apache.sandesha2.RMException;
 import org.apache.sandesha2.storage.beans.CreateSeqBean;
 
 /**
  * @author Chamikara Jayalath <ch...@wso2.com>
  * @author Sanka Samaranayake <ss...@gmail.com>
  */
-public interface CreateSeqBeanMgr {
-	public boolean insert(CreateSeqBean bean);
-	public boolean delete(String msgId);
-	public CreateSeqBean retrieve(String msgId);
-	public boolean update(CreateSeqBean bean);
-	public Collection find(CreateSeqBean bean);
-	public ResultSet find(String query);
+
+public class CreateSeqBeanMgr {
+	
+	private Hashtable table = null;
+
+	/**
+	 * 
+	 */
+	public CreateSeqBeanMgr(AbstractContext context) {
+		Object obj = context.getProperty(Constants.CREATE_SEQUECE_BEAN_MAP);
+		if (obj!=null) {
+			table = (Hashtable) obj;
+		}else {
+			table = new Hashtable ();
+			context.setProperty(Constants.CREATE_SEQUECE_BEAN_MAP,table);
+		}
+	}
+
+	public boolean insert(CreateSeqBean bean)  {
+		table.put(bean.getCreateSeqMsgId(), bean);
+		return true;
+	}
+
+	public boolean delete(String msgId)  {
+		return table.remove(msgId) != null;
+	}
+
+	public CreateSeqBean retrieve(String msgId) {
+		return (CreateSeqBean) table.get(msgId);
+	}
+
+	public boolean update(CreateSeqBean bean){
+		return table.put(bean.getCreateSeqMsgId(), bean) != null;
+	}
+
+	public Collection find(CreateSeqBean bean) {
+		ArrayList beans = new ArrayList();		
+		Iterator iterator = table.values().iterator();
+		
+		CreateSeqBean temp;		
+		while (iterator.hasNext()) {
+			temp = (CreateSeqBean) iterator.next();
+			if ( (bean.getCreateSeqMsgId() != null 
+						&& bean.getCreateSeqMsgId().equals(temp.getCreateSeqMsgId()))
+						&& (bean.getSequenceId() != null 
+						&& bean.getSequenceId().equals(bean.getSequenceId()))) {
+				beans.add(temp);
+				
+			}
+		}
+		return beans;
+	}
+
+	public ResultSet find(String query) {
+		throw new UnsupportedOperationException("selectRS() is not supported");
+	}
+
 }

Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/storage/beanmanagers/NextMsgBeanMgr.java
URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/storage/beanmanagers/NextMsgBeanMgr.java?rev=290667&r1=290666&r2=290667&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/storage/beanmanagers/NextMsgBeanMgr.java (original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/storage/beanmanagers/NextMsgBeanMgr.java Wed Sep 21 02:34:02 2005
@@ -17,20 +17,85 @@
 package org.apache.sandesha2.storage.beanmanagers;
 
 import java.sql.ResultSet;
+import java.util.ArrayList;
 import java.util.Collection;
+import java.util.Hashtable;
+import java.util.Iterator;
 
+import org.apache.axis2.context.AbstractContext;
+import org.apache.axis2.context.ConfigurationContext;
+import org.apache.sandesha2.Constants;
+import org.apache.sandesha2.RMException;
 import org.apache.sandesha2.storage.beans.NextMsgBean;
 
+
 /**
  * @author Chamikara Jayalath <ch...@wso2.com>
  * @author Sanka Samaranayake <ss...@gmail.com>
  */
-public interface NextMsgBeanMgr {
-	public boolean delete(String sequenceId);
-	public NextMsgBean retrieve(String sequenceId);
-	public boolean insert(NextMsgBean bean);
-	public ResultSet find(String query);
-	public Collection find(NextMsgBean bean);
-	public boolean update(NextMsgBean bean);
-	public Collection retrieveAll ();
+public class NextMsgBeanMgr {
+
+	private Hashtable table = null;
+	
+	/**
+	 * 
+	 */
+	public NextMsgBeanMgr(AbstractContext context) {
+		Object obj = context.getProperty(Constants.STORAGE_MAP_BEAN_MAP);
+	
+		if (obj!=null) {
+			table = (Hashtable) obj;
+		}else {
+			table = new Hashtable ();
+			context.setProperty(Constants.STORAGE_MAP_BEAN_MAP,table);
+		}
+	}
+
+	public boolean delete(String sequenceId)  {
+		return table.remove(sequenceId) != null;
+	}
+
+	public NextMsgBean retrieve(String sequenceId)  {
+		return (NextMsgBean) table.get(sequenceId);
+	}
+
+	public boolean insert(NextMsgBean bean) {	
+		table.put(bean.getSequenceId(), bean);
+		return true;
+	}
+
+	public ResultSet find(String query){
+		throw new UnsupportedOperationException("selectRS() is not supported");
+	}
+
+	public Collection find(NextMsgBean bean)  {
+		ArrayList beans = new ArrayList();
+		Iterator iterator = table.values().iterator();
+		
+		NextMsgBean temp;
+		while (iterator.hasNext()) {
+			temp = (NextMsgBean) iterator.next();
+			
+			if ((bean.getSequenceId() != null 
+					&& bean.getSequenceId().equals(temp.getSequenceId()))
+					/*&& (bean.getNextMsgNoToProcess() != null
+					&& bean.getNextMsgNoToProcess().equals(temp.getNextMsgNoToProcess()))*/
+					&& (bean.getNextMsgNoToProcess() > 0)
+			) {
+				
+				beans.add(temp);			
+			}
+			
+		}
+		return beans;
+	}
+
+	public boolean update(NextMsgBean bean)  {
+		return table.put(bean.getSequenceId(), bean) != null ;
+	}
+	
+	
+	public Collection retrieveAll() {
+		return table.values();
+	}
 }

Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/storage/beanmanagers/RetransmitterBeanMgr.java
URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/storage/beanmanagers/RetransmitterBeanMgr.java?rev=290667&r1=290666&r2=290667&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/storage/beanmanagers/RetransmitterBeanMgr.java (original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/storage/beanmanagers/RetransmitterBeanMgr.java Wed Sep 21 02:34:02 2005
@@ -17,21 +17,79 @@
 package org.apache.sandesha2.storage.beanmanagers;
 
 import java.sql.ResultSet;
+import java.util.ArrayList;
 import java.util.Collection;
+import java.util.Hashtable;
+import java.util.Iterator;
 
+import org.apache.axis2.context.AbstractContext;
+import org.apache.axis2.context.ConfigurationContext;
+import org.apache.sandesha2.Constants;
+import org.apache.sandesha2.RMException;
 import org.apache.sandesha2.storage.beans.RetransmitterBean;
 
 /**
  * @author Chamikara Jayalath <ch...@wso2.com>
  * @author Sanka Samaranayake <ss...@gmail.com>
  */
-public interface RetransmitterBeanMgr {
-	public boolean delete(String MessageId);
-	public RetransmitterBean retrieve(String MessageId);
-	public boolean insert(RetransmitterBean bean);
-	public ResultSet find(String query);
-	public Collection find(RetransmitterBean bean);
-	public boolean update(RetransmitterBean bean);
+public class RetransmitterBeanMgr {
+	private Hashtable table = null;
 	
+	/**
+	 * 
+	 */
+	public RetransmitterBeanMgr(AbstractContext context)  {
+		Object obj = context.getProperty(Constants.RETRANSMITTER_BEAN_MAP);
+		if (obj!=null) {
+			table = (Hashtable) obj;
+		}else {
+			table = new Hashtable ();
+			context.setProperty(Constants.RETRANSMITTER_BEAN_MAP,table);
+		}
+	}
+
+	public boolean delete(String MessageId) {	
+		return table.remove(MessageId) != null;
+	}
+	
+	public RetransmitterBean retrieve(String MessageId){
+		return (RetransmitterBean) table.get(MessageId);
+	}
+
+	public boolean insert(RetransmitterBean bean) {
+		table.put(bean.getMessageId(), bean);
+		return true;
+	}
+
+	public ResultSet find(String query)  {
+		throw new UnsupportedOperationException("selectRS() is not supported");
+	}
+
+	public Collection find(RetransmitterBean bean)  {
+		ArrayList beans = new ArrayList();
+		Iterator iterator = table.values().iterator();
+		
+		RetransmitterBean temp;
+		while (iterator.hasNext()) {
+			temp = (RetransmitterBean) iterator.next();
+			if (!(bean.getMessageId() != null 
+					&& bean.getMessageId().equals(temp.getMessageId()))
+					&& (bean.getCreateSeqMsgId() != null
+					&& bean.getCreateSeqMsgId().equals(temp.getCreateSeqMsgId()))
+					&& (bean.getKey() != null 
+					&& bean.getKey().equals(temp.getKey()))
+					&& (bean.getLastSentTime() != -1 
+					&& bean.getLastSentTime() == temp.getLastSentTime())){
+				
+				beans.add(temp);				
+			}
+		}
+		
+		return beans;
+	}
+
+	public boolean update(RetransmitterBean bean) {
+		return table.put(bean.getMessageId(), bean) != null;
+	}
 
 }

Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/storage/beanmanagers/SequencePropertyBeanMgr.java
URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/storage/beanmanagers/SequencePropertyBeanMgr.java?rev=290667&r1=290666&r2=290667&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/storage/beanmanagers/SequencePropertyBeanMgr.java (original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/storage/beanmanagers/SequencePropertyBeanMgr.java Wed Sep 21 02:34:02 2005
@@ -17,20 +17,82 @@
 package org.apache.sandesha2.storage.beanmanagers;
 
 import java.sql.ResultSet;
+import java.util.ArrayList;
 import java.util.Collection;
+import java.util.Hashtable;
+import java.util.Iterator;
 
+import org.apache.axis2.context.AbstractContext;
+import org.apache.axis2.context.ConfigurationContext;
+import org.apache.sandesha2.Constants;
+import org.apache.sandesha2.RMException;
 import org.apache.sandesha2.storage.beans.SequencePropertyBean;
 
 /**
  * @author Chamikara Jayalath <ch...@wso2.com>
  * @author Sanka Samaranayake <ss...@gmail.com>
  */
-public interface SequencePropertyBeanMgr {
-	public boolean delete(String sequenceId, String name);
-	public SequencePropertyBean retrieve(String sequenceId, String name);
-	public boolean insert(SequencePropertyBean bean);
-	public ResultSet find(String query);
-	public Collection find(SequencePropertyBean bean); 
-	public boolean update(SequencePropertyBean bean);
+public class SequencePropertyBeanMgr {
+	private Hashtable table = null;
+
+	/**
+	 * 
+	 */
+	public SequencePropertyBeanMgr(AbstractContext context) {
+		Object obj = context.getProperty(Constants.SEQUENCE_PROPERTY_BEAN_MAP);
+		if (obj!=null) {
+			table = (Hashtable) obj;
+		}else {
+			table = new Hashtable ();
+			context.setProperty(Constants.SEQUENCE_PROPERTY_BEAN_MAP,table);
+		}
+	}
+
+	public boolean delete(String sequenceId, String name) {
+		return table.remove(sequenceId +":" + name) != null;
+	}
+
+	public SequencePropertyBean retrieve(String sequenceId, String name){
+		return (SequencePropertyBean) table.get(sequenceId + ":" + name);
+	}
+	
+	public boolean insert(SequencePropertyBean bean) {
+		table.put(bean.getSequenceId() + ":" + bean.getName(), bean);
+		return true;
+	}
+
+	public ResultSet find(String query) {
+		throw new UnsupportedOperationException("selectRS() is not supported");
+	}
+
+	public Collection find(SequencePropertyBean bean){
+		ArrayList beans = new ArrayList();
+		Iterator iterator = table.values().iterator();
+		SequencePropertyBean temp;
+		
+		while (iterator.hasNext()) {
+			temp = (SequencePropertyBean) iterator.next();
+			
+			if ((bean.getSequenceId() != null 
+					&& bean.getSequenceId().equals(temp.getSequenceId()))
+					&& (bean.getName() != null 
+					&& bean.getName().equals(temp.getName()))
+					&& (bean.getValue() != null 
+					&& bean.getValue().equals(temp.getValue()))) {
+				
+				beans.add(temp);				
+			}
+		}
+		return beans;
+	}
+
+	public boolean update(SequencePropertyBean bean) {
+		return table.put(getId(bean), bean) != null;
+		
+	}
 	
+	private String getId(SequencePropertyBean bean) {
+		return bean.getSequenceId() + ":" + bean.getName();
+	}
+
 }

Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/storage/beanmanagers/StorageMapBeanMgr.java
URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/storage/beanmanagers/StorageMapBeanMgr.java?rev=290667&r1=290666&r2=290667&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/storage/beanmanagers/StorageMapBeanMgr.java (original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/storage/beanmanagers/StorageMapBeanMgr.java Wed Sep 21 02:34:02 2005
@@ -17,21 +17,91 @@
 package org.apache.sandesha2.storage.beanmanagers;
 
 import java.sql.ResultSet;
+import java.util.ArrayList;
 import java.util.Collection;
+import java.util.Hashtable;
+import java.util.Iterator;
 
+import org.apache.axis2.context.AbstractContext;
+import org.apache.axis2.context.ConfigurationContext;
+import org.apache.sandesha2.Constants;
+import org.apache.sandesha2.RMException;
 import org.apache.sandesha2.storage.beans.CreateSeqBean;
 import org.apache.sandesha2.storage.beans.StorageMapBean;
 
-
 /**
  * @author Chamikara Jayalath <ch...@wso2.com>
  * @author Sanka Samaranayake <ss...@gmail.com>
  */
-public interface StorageMapBeanMgr {
-	public boolean insert(StorageMapBean bean);
-	public boolean delete(String key);
-	public StorageMapBean retrieve(String key);
-	public ResultSet find(String query);
-	public Collection find(StorageMapBean bean);
-	public boolean update(StorageMapBean bean);
+public class StorageMapBeanMgr {
+	private Hashtable table = null;
+	
+	
+	/**
+	 * 
+	 */
+	public StorageMapBeanMgr(AbstractContext context) {
+		Object obj = context.getProperty(Constants.STORAGE_MAP_BEAN_MAP);
+		if (obj!=null) {
+			table = (Hashtable) obj;
+		}else {
+			table = new Hashtable ();
+			context.setProperty(Constants.STORAGE_MAP_BEAN_MAP,table);
+		}
+	}
+
+	public boolean insert(StorageMapBean bean){
+		table.put(bean.getKey(), bean);
+		return true;
+	}
+	
+	public boolean delete(String key) {
+		return table.remove(key) != null; 
+	}
+
+	public StorageMapBean retrieve(String key) {
+		return (StorageMapBean) table.get(key);
+	}
+
+	public ResultSet find(String query) {
+		throw new UnsupportedOperationException("selectRS() is not implemented");
+	}
+	
+	public Collection find(StorageMapBean bean) {
+		ArrayList beans = new ArrayList();
+		Iterator iterator = table.values().iterator();
+		
+		StorageMapBean temp = new StorageMapBean();
+		while (iterator.hasNext()) {
+			temp = (StorageMapBean) iterator.next();
+			boolean select = true;
+			/*if ((temp.getKey() != null 
+					&& bean.getKey().equals(temp.getKey()))
+					&& (bean.getMsgNo() != -1 
+					&& bean.getMsgNo() == temp.getMsgNo())
+					&& (bean.getSequenceId() != null 
+					&& bean.getSequenceId().equals(temp.getSequenceId()))) {
+				*/
+
+			//}
+			
+			if (bean.getKey()!=null && !bean.getKey().equals(temp.getKey()))
+				select=false;
+			
+			if (bean.getMsgNo()!=0 && bean.getMsgNo()!=temp.getMsgNo())
+				select=false;
+			
+			if (bean.getSequenceId()!=null && !bean.getSequenceId().equals(temp.getSequenceId()))
+				select=false;
+			
+			if (select)
+				beans.add(temp);
+		}
+		return beans;
+	}
+	
+	public boolean update(StorageMapBean bean){
+		return table.put(bean.getKey(), bean) != null;
+	}
+
 }

Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemBeanMgrFactory.java
URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemBeanMgrFactory.java?rev=290667&r1=290666&r2=290667&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemBeanMgrFactory.java (original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemBeanMgrFactory.java Wed Sep 21 02:34:02 2005
@@ -27,8 +27,8 @@
  * @author Chamikara Jayalath <ch...@wso2.com>
  * @author Sanka Samaranayake <ss...@gmail.com>
  */
-public class InMemBeanMgrFactory extends AbstractBeanMgrFactory {
-
+public class InMemBeanMgrFactory /*extends AbstractBeanMgrFactory*/ {
+/*
 	public CreateSeqBeanMgr getCreateSeqBeanMgr() {
 		return new InMemCreateSeqBeanMgr();
 	}
@@ -48,5 +48,5 @@
 	public StorageMapBeanMgr getStorageMapBeanMgr() {
 		return new InMemStorageMapBeanMgr();
 	}
-
+ */
 }

Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemCreateSeqBeanMgr.java
URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemCreateSeqBeanMgr.java?rev=290667&r1=290666&r2=290667&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemCreateSeqBeanMgr.java (original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemCreateSeqBeanMgr.java Wed Sep 21 02:34:02 2005
@@ -30,13 +30,12 @@
  * @author Sanka Samaranayake <ss...@gmail.com>
  */
 
-public class InMemCreateSeqBeanMgr implements CreateSeqBeanMgr {
+public class InMemCreateSeqBeanMgr /*implements CreateSeqBeanMgr */ {
 	
+	/*
 	private static Hashtable table = new Hashtable();
 
-	/**
-	 * 
-	 */
+
 	public InMemCreateSeqBeanMgr() {
 	}
 
@@ -78,5 +77,6 @@
 	public ResultSet find(String query) {
 		throw new UnsupportedOperationException("selectRS() is not supported");
 	}
+	*/
 
 }

Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemNextMsgBeanMgr.java
URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemNextMsgBeanMgr.java?rev=290667&r1=290666&r2=290667&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemNextMsgBeanMgr.java (original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemNextMsgBeanMgr.java Wed Sep 21 02:34:02 2005
@@ -30,12 +30,10 @@
  * @author Chamikara Jayalath <ch...@wso2.com>
  * @author Sanka Samaranayake <ss...@gmail.com>
  */
-public class InMemNextMsgBeanMgr implements NextMsgBeanMgr {
-
+public class InMemNextMsgBeanMgr /*implements NextMsgBeanMgr*/ {
+/*
 	private static Hashtable table = new Hashtable();
-	/**
-	 * 
-	 */
+
 	public InMemNextMsgBeanMgr() {
 	}
 
@@ -66,8 +64,7 @@
 			
 			if ((bean.getSequenceId() != null 
 					&& bean.getSequenceId().equals(temp.getSequenceId()))
-					/*&& (bean.getNextMsgNoToProcess() != null
-					&& bean.getNextMsgNoToProcess().equals(temp.getNextMsgNoToProcess()))*/
+					
 					&& (bean.getNextMsgNoToProcess() > 0)
 			) {
 				
@@ -86,4 +83,5 @@
 	public Collection retrieveAll() {
 		return table.values();
 	}
+	*/
 }

Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemRetransmitterBeanMgr.java
URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemRetransmitterBeanMgr.java?rev=290667&r1=290666&r2=290667&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemRetransmitterBeanMgr.java (original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemRetransmitterBeanMgr.java Wed Sep 21 02:34:02 2005
@@ -29,12 +29,12 @@
  * @author Chamikara Jayalath <ch...@wso2.com>
  * @author Sanka Samaranayake <ss...@gmail.com>
  */
-public class InMemRetransmitterBeanMgr implements RetransmitterBeanMgr {
+public class InMemRetransmitterBeanMgr /*implements RetransmitterBeanMgr*/ {
+	
+	/*
 	private static Hashtable table = new Hashtable();
 	
-	/**
-	 * 
-	 */
+
 	public InMemRetransmitterBeanMgr() {
 	}
 
@@ -81,5 +81,7 @@
 	public boolean update(RetransmitterBean bean) {
 		return table.put(bean.getMessageId(), bean) != null;
 	}
+	
+	*/
 
 }

Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemSequencePropretyBeanMgr.java
URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemSequencePropretyBeanMgr.java?rev=290667&r1=290666&r2=290667&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemSequencePropretyBeanMgr.java (original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemSequencePropretyBeanMgr.java Wed Sep 21 02:34:02 2005
@@ -29,12 +29,10 @@
  * @author Chamikara Jayalath <ch...@wso2.com>
  * @author Sanka Samaranayake <ss...@gmail.com>
  */
-public class InMemSequencePropretyBeanMgr implements SequencePropertyBeanMgr {
+public class InMemSequencePropretyBeanMgr /*implements SequencePropertyBeanMgr */{
+	/*
 	private static Hashtable table = new Hashtable();
 
-	/**
-	 * 
-	 */
 	public InMemSequencePropretyBeanMgr() {
 	}
 
@@ -84,5 +82,6 @@
 	private String getId(SequencePropertyBean bean) {
 		return bean.getSequenceId() + ":" + bean.getName();
 	}
+	*/
 
 }

Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemStorageMapBeanMgr.java
URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemStorageMapBeanMgr.java?rev=290667&r1=290666&r2=290667&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemStorageMapBeanMgr.java (original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemStorageMapBeanMgr.java Wed Sep 21 02:34:02 2005
@@ -30,12 +30,12 @@
  * @author Chamikara Jayalath <ch...@wso2.com>
  * @author Sanka Samaranayake <ss...@gmail.com>
  */
-public class InMemStorageMapBeanMgr implements StorageMapBeanMgr {
+public class InMemStorageMapBeanMgr /*implements StorageMapBeanMgr */ {
+	
+	/*
 	private static Hashtable table = new Hashtable();
 	
-	/**
-	 * 
-	 */
+
 	public InMemStorageMapBeanMgr() {
 	}
 
@@ -64,13 +64,6 @@
 		while (iterator.hasNext()) {
 			temp = (StorageMapBean) iterator.next();
 			boolean select = true;
-			/*if ((temp.getKey() != null 
-					&& bean.getKey().equals(temp.getKey()))
-					&& (bean.getMsgNo() != -1 
-					&& bean.getMsgNo() == temp.getMsgNo())
-					&& (bean.getSequenceId() != null 
-					&& bean.getSequenceId().equals(temp.getSequenceId()))) {
-				*/
 
 			//}
 			
@@ -92,5 +85,6 @@
 	public boolean update(StorageMapBean bean) {
 		return table.put(bean.getKey(), bean) != null;
 	}
+	*/
 
 }

Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/util/SandeshaUtil.java
URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/util/SandeshaUtil.java?rev=290667&r1=290666&r2=290667&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/util/SandeshaUtil.java (original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/util/SandeshaUtil.java Wed Sep 21 02:34:02 2005
@@ -23,6 +23,7 @@
 
 import org.apache.axis2.context.MessageContext;
 import org.apache.axis2.om.impl.MIMEOutputUtils;
+import org.apache.axis2.util.UUIDGenerator;
 import org.apache.sandesha2.wsrm.AcknowledgementRange;
 
 /**
@@ -35,8 +36,8 @@
 	private static Hashtable storedMsgContexts = new Hashtable ();
 	
 	public static String getUUID () {
-		String newSequenceID = "uuid:" + MIMEOutputUtils.getRandomStringOf18Characters();
-		return newSequenceID;
+		String uuid = "uuid:" + UUIDGenerator.getUUID();
+		return uuid;
 	}
 	
 	public static AcknowledgementRange[] getAckRangeArray (String msgNoStr) {

Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/AckRequested.java
URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/AckRequested.java?rev=290667&r1=290666&r2=290667&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/AckRequested.java (original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/AckRequested.java Wed Sep 21 02:34:02 2005
@@ -34,7 +34,7 @@
  * @author sanka
  */
 
-public class AckRequested implements IOMRMElement {
+public class AckRequested implements IOMRMPart {
 	private OMElement ackRequestedElement;
 	private Identifier identifier;
 	private MessageNumber messageNumber;
@@ -118,6 +118,11 @@
 	
 	public MessageNumber getMessageNumber(){
 		return messageNumber;
+	}
+	
+	public void toSOAPEnvelope(SOAPEnvelope envelope) {
+		SOAPHeader header = envelope.getHeader();
+		toOMElement(header);
 	}
 
 

Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/CreateSequence.java
URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/CreateSequence.java?rev=290667&r1=290666&r2=290667&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/CreateSequence.java (original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/CreateSequence.java Wed Sep 21 02:34:02 2005
@@ -37,7 +37,7 @@
  */
 
 
-public class CreateSequence implements IOMRMElement {
+public class CreateSequence implements IOMRMPart {
 	private OMElement createSequenceElement;
 	
 	private AcksTo acksTo=null;
@@ -125,5 +125,11 @@
 	public SequenceOffer getSequenceOffer(){
 		return sequenceOffer;
 	}
+	
+	
 
+	public void toSOAPEnvelope(SOAPEnvelope envelope) {
+		SOAPBody body = envelope.getBody();
+		toOMElement(body);
+	}
 }

Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/CreateSequenceResponse.java
URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/CreateSequenceResponse.java?rev=290667&r1=290666&r2=290667&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/CreateSequenceResponse.java (original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/CreateSequenceResponse.java Wed Sep 21 02:34:02 2005
@@ -33,7 +33,7 @@
  * @author sanka
  */
 
-public class CreateSequenceResponse implements IOMRMElement {
+public class CreateSequenceResponse implements IOMRMPart {
 	private OMElement createSequenceResponseElement;
 	private Identifier identifier;
 	private Accept accept;
@@ -137,5 +137,10 @@
 
 	public void setExpires(Expires expires) {
 		this.expires = expires;
+	}
+	
+	public void toSOAPEnvelope(SOAPEnvelope envelope) {
+		SOAPBody body = envelope.getBody();
+		toOMElement(body);
 	}
 }

Added: webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/IOMRMPart.java
URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/IOMRMPart.java?rev=290667&view=auto
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/IOMRMPart.java (added)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/IOMRMPart.java Wed Sep 21 02:34:02 2005
@@ -0,0 +1,19 @@
+/*
+ * Created on Sep 21, 2005
+ *
+ * TODO To change the template for this generated file go to
+ * Window - Preferences - Java - Code Style - Code Templates
+ */
+package org.apache.sandesha2.wsrm;
+
+import org.apache.axis2.soap.SOAPEnvelope;
+
+/**
+ * @author chamikara
+ *
+ * TODO To change the template for this generated type comment go to
+ * Window - Preferences - Java - Code Style - Code Templates
+ */
+public interface IOMRMPart extends IOMRMElement {
+	public void toSOAPEnvelope (SOAPEnvelope envelope);
+}

Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/Sequence.java
URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/Sequence.java?rev=290667&r1=290666&r2=290667&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/Sequence.java (original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/Sequence.java Wed Sep 21 02:34:02 2005
@@ -38,7 +38,7 @@
  */
 
 
-public class Sequence implements IOMRMElement {
+public class Sequence implements IOMRMPart {
 
 	private OMElement sequenceElement;
 	
@@ -139,6 +139,11 @@
 	}
 	public void setMessageNumber(MessageNumber messageNumber){
 		this.messageNumber = messageNumber;
+	}
+	
+	public void toSOAPEnvelope(SOAPEnvelope envelope) {
+		SOAPHeader header = envelope.getHeader();
+		toOMElement(header);
 	}
 	
 

Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/SequenceAcknowledgement.java
URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/SequenceAcknowledgement.java?rev=290667&r1=290666&r2=290667&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/SequenceAcknowledgement.java (original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/SequenceAcknowledgement.java Wed Sep 21 02:34:02 2005
@@ -41,7 +41,7 @@
  * @author sanka
  */
 
-public class SequenceAcknowledgement implements IOMRMElement {
+public class SequenceAcknowledgement implements IOMRMPart {
 	private OMElement sequenceAcknowledgementElement;
 	private Identifier identifier;
 	private List acknowledgementRangeList;
@@ -175,6 +175,11 @@
 	
 	public void addChildElement(OMElement element){
 		acknowledgementRangeList.add(element);
+	}
+	
+	public void toSOAPEnvelope(SOAPEnvelope envelope) {
+		SOAPHeader header = envelope.getHeader();
+		toOMElement(header);
 	}
 
 }

Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/TerminateSequence.java
URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/TerminateSequence.java?rev=290667&r1=290666&r2=290667&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/TerminateSequence.java (original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/TerminateSequence.java Wed Sep 21 02:34:02 2005
@@ -33,7 +33,7 @@
  * @author sanka
  */
 
-public class TerminateSequence implements IOMRMElement {
+public class TerminateSequence implements IOMRMPart {
     
 	private OMElement terminateSequenceElement;
 	private Identifier identifier;
@@ -100,4 +100,8 @@
 		this.identifier = identifier;
 	}
 
+	public void toSOAPEnvelope(SOAPEnvelope envelope) {
+		SOAPBody body = envelope.getBody();
+		toOMElement(body);
+	}
 }



---------------------------------------------------------------------
To unsubscribe, e-mail: sandesha-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: sandesha-dev-help@ws.apache.org