Added: 
webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemoryStorageMapBeanMgr.java
URL: 
http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemoryStorageMapBeanMgr.java?rev=330193&view=auto
==============================================================================
--- 
webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemoryStorageMapBeanMgr.java
 (added)
+++ 
webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemoryStorageMapBeanMgr.java
 Tue Nov  1 21:56:42 2005
@@ -0,0 +1,109 @@
+/*

+ * Copyright 2004,2005 The Apache Software Foundation.

+ *

+ * Licensed under the Apache License, Version 2.0 (the "License");

+ * you may not use this file except in compliance with the License.

+ * You may obtain a copy of the License at

+ *

+ *      http://www.apache.org/licenses/LICENSE-2.0

+ *

+ * Unless required by applicable law or agreed to in writing, software

+ * distributed under the License is distributed on an "AS IS" BASIS,

+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

+ * See the License for the specific language governing permissions and

+ * limitations under the License.

+ * 

+ */

+package org.apache.sandesha2.storage.inmemory;

+

+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.SandeshaException;

+import org.apache.sandesha2.storage.beanmanagers.StorageMapBeanMgr;

+import org.apache.sandesha2.storage.beans.CreateSeqBean;

+import org.apache.sandesha2.storage.beans.StorageMapBean;

+

+/**

+ * @author Chamikara Jayalath <[EMAIL PROTECTED]>

+ * @author Sanka Samaranayake <[EMAIL PROTECTED]>

+ */

+public class InMemoryStorageMapBeanMgr implements StorageMapBeanMgr {

+       private Hashtable table = null;

+

+       /**

+        *  

+        */

+       public InMemoryStorageMapBeanMgr(AbstractContext context) {

+               Object obj = 
context.getProperty(Constants.BeanMAPs.STORAGE_MAP);

+               if (obj != null) {

+                       table = (Hashtable) obj;

+               } else {

+                       table = new Hashtable();

+                       context.setProperty(Constants.BeanMAPs.STORAGE_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) {

+               if (!table.contains(bean))

+                       return false;

+               

+               return table.put(bean.getKey(), bean) != null;

+       }

+

+}
\ No newline at end of file

Added: 
webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemoryTransaction.java
URL: 
http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemoryTransaction.java?rev=330193&view=auto
==============================================================================
--- 
webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemoryTransaction.java
 (added)
+++ 
webservices/sandesha/trunk/src/org/apache/sandesha2/storage/inmemory/InMemoryTransaction.java
 Tue Nov  1 21:56:42 2005
@@ -0,0 +1,32 @@
+/*

+ * Copyright  1999-2004 The Apache Software Foundation.

+ *

+ *  Licensed under the Apache License, Version 2.0 (the "License");

+ *  you may not use this file except in compliance with the License.

+ *  You may obtain a copy of the License at

+ *

+ *      http://www.apache.org/licenses/LICENSE-2.0

+ *

+ *  Unless required by applicable law or agreed to in writing, software

+ *  distributed under the License is distributed on an "AS IS" BASIS,

+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

+ *  See the License for the specific language governing permissions and

+ *  limitations under the License.

+ *

+ */

+

+package org.apache.sandesha2.storage.inmemory;

+

+import org.apache.sandesha2.storage.Transaction;

+

+public class InMemoryTransaction implements Transaction {

+       

+       public void commit () {

+               

+       }

+       

+       public void rollback () {

+               

+       }

+       

+}


Added: 
webservices/sandesha/trunk/src/org/apache/sandesha2/storage/persistent/PersistentCreateSeqBeanMgr.java
URL: 
http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/storage/persistent/PersistentCreateSeqBeanMgr.java?rev=330193&view=auto
==============================================================================
--- 
webservices/sandesha/trunk/src/org/apache/sandesha2/storage/persistent/PersistentCreateSeqBeanMgr.java
 (added)
+++ 
webservices/sandesha/trunk/src/org/apache/sandesha2/storage/persistent/PersistentCreateSeqBeanMgr.java
 Tue Nov  1 21:56:42 2005
@@ -0,0 +1,22 @@
+/*

+ * Copyright  1999-2004 The Apache Software Foundation.

+ *

+ *  Licensed under the Apache License, Version 2.0 (the "License");

+ *  you may not use this file except in compliance with the License.

+ *  You may obtain a copy of the License at

+ *

+ *      http://www.apache.org/licenses/LICENSE-2.0

+ *

+ *  Unless required by applicable law or agreed to in writing, software

+ *  distributed under the License is distributed on an "AS IS" BASIS,

+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

+ *  See the License for the specific language governing permissions and

+ *  limitations under the License.

+ *

+ */

+

+package org.apache.sandesha2.storage.persistent;

+

+public class PersistentCreateSeqBeanMgr {

+

+}


Added: 
webservices/sandesha/trunk/src/org/apache/sandesha2/storage/persistent/PersistentNextMsgBeanMgr.java
URL: 
http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/storage/persistent/PersistentNextMsgBeanMgr.java?rev=330193&view=auto
==============================================================================
--- 
webservices/sandesha/trunk/src/org/apache/sandesha2/storage/persistent/PersistentNextMsgBeanMgr.java
 (added)
+++ 
webservices/sandesha/trunk/src/org/apache/sandesha2/storage/persistent/PersistentNextMsgBeanMgr.java
 Tue Nov  1 21:56:42 2005
@@ -0,0 +1,22 @@
+/*

+ * Copyright  1999-2004 The Apache Software Foundation.

+ *

+ *  Licensed under the Apache License, Version 2.0 (the "License");

+ *  you may not use this file except in compliance with the License.

+ *  You may obtain a copy of the License at

+ *

+ *      http://www.apache.org/licenses/LICENSE-2.0

+ *

+ *  Unless required by applicable law or agreed to in writing, software

+ *  distributed under the License is distributed on an "AS IS" BASIS,

+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

+ *  See the License for the specific language governing permissions and

+ *  limitations under the License.

+ *

+ */

+

+package org.apache.sandesha2.storage.persistent;

+

+public class PersistentNextMsgBeanMgr {

+

+}


Added: 
webservices/sandesha/trunk/src/org/apache/sandesha2/storage/persistent/PersistentRetransmitterBeanMgr.java
URL: 
http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/storage/persistent/PersistentRetransmitterBeanMgr.java?rev=330193&view=auto
==============================================================================
--- 
webservices/sandesha/trunk/src/org/apache/sandesha2/storage/persistent/PersistentRetransmitterBeanMgr.java
 (added)
+++ 
webservices/sandesha/trunk/src/org/apache/sandesha2/storage/persistent/PersistentRetransmitterBeanMgr.java
 Tue Nov  1 21:56:42 2005
@@ -0,0 +1,22 @@
+/*

+ * Copyright  1999-2004 The Apache Software Foundation.

+ *

+ *  Licensed under the Apache License, Version 2.0 (the "License");

+ *  you may not use this file except in compliance with the License.

+ *  You may obtain a copy of the License at

+ *

+ *      http://www.apache.org/licenses/LICENSE-2.0

+ *

+ *  Unless required by applicable law or agreed to in writing, software

+ *  distributed under the License is distributed on an "AS IS" BASIS,

+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

+ *  See the License for the specific language governing permissions and

+ *  limitations under the License.

+ *

+ */

+

+package org.apache.sandesha2.storage.persistent;

+

+public class PersistentRetransmitterBeanMgr {

+

+}


Added: 
webservices/sandesha/trunk/src/org/apache/sandesha2/storage/persistent/PersistentSequencePropertyBeanMgr.java
URL: 
http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/storage/persistent/PersistentSequencePropertyBeanMgr.java?rev=330193&view=auto
==============================================================================
--- 
webservices/sandesha/trunk/src/org/apache/sandesha2/storage/persistent/PersistentSequencePropertyBeanMgr.java
 (added)
+++ 
webservices/sandesha/trunk/src/org/apache/sandesha2/storage/persistent/PersistentSequencePropertyBeanMgr.java
 Tue Nov  1 21:56:42 2005
@@ -0,0 +1,22 @@
+/*

+ * Copyright  1999-2004 The Apache Software Foundation.

+ *

+ *  Licensed under the Apache License, Version 2.0 (the "License");

+ *  you may not use this file except in compliance with the License.

+ *  You may obtain a copy of the License at

+ *

+ *      http://www.apache.org/licenses/LICENSE-2.0

+ *

+ *  Unless required by applicable law or agreed to in writing, software

+ *  distributed under the License is distributed on an "AS IS" BASIS,

+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

+ *  See the License for the specific language governing permissions and

+ *  limitations under the License.

+ *

+ */

+

+package org.apache.sandesha2.storage.persistent;

+

+public class PersistentSequencePropertyBeanMgr {

+

+}


Added: 
webservices/sandesha/trunk/src/org/apache/sandesha2/storage/persistent/PersistentStorageManager.java
URL: 
http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/storage/persistent/PersistentStorageManager.java?rev=330193&view=auto
==============================================================================
--- 
webservices/sandesha/trunk/src/org/apache/sandesha2/storage/persistent/PersistentStorageManager.java
 (added)
+++ 
webservices/sandesha/trunk/src/org/apache/sandesha2/storage/persistent/PersistentStorageManager.java
 Tue Nov  1 21:56:42 2005
@@ -0,0 +1,22 @@
+/*

+ * Copyright  1999-2004 The Apache Software Foundation.

+ *

+ *  Licensed under the Apache License, Version 2.0 (the "License");

+ *  you may not use this file except in compliance with the License.

+ *  You may obtain a copy of the License at

+ *

+ *      http://www.apache.org/licenses/LICENSE-2.0

+ *

+ *  Unless required by applicable law or agreed to in writing, software

+ *  distributed under the License is distributed on an "AS IS" BASIS,

+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

+ *  See the License for the specific language governing permissions and

+ *  limitations under the License.

+ *

+ */

+

+package org.apache.sandesha2.storage.persistent;

+

+public class PersistentStorageManager {

+

+}


Added: 
webservices/sandesha/trunk/src/org/apache/sandesha2/storage/persistent/PersistentStorageMapBeanMgr.java
URL: 
http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/storage/persistent/PersistentStorageMapBeanMgr.java?rev=330193&view=auto
==============================================================================
--- 
webservices/sandesha/trunk/src/org/apache/sandesha2/storage/persistent/PersistentStorageMapBeanMgr.java
 (added)
+++ 
webservices/sandesha/trunk/src/org/apache/sandesha2/storage/persistent/PersistentStorageMapBeanMgr.java
 Tue Nov  1 21:56:42 2005
@@ -0,0 +1,22 @@
+/*

+ * Copyright  1999-2004 The Apache Software Foundation.

+ *

+ *  Licensed under the Apache License, Version 2.0 (the "License");

+ *  you may not use this file except in compliance with the License.

+ *  You may obtain a copy of the License at

+ *

+ *      http://www.apache.org/licenses/LICENSE-2.0

+ *

+ *  Unless required by applicable law or agreed to in writing, software

+ *  distributed under the License is distributed on an "AS IS" BASIS,

+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

+ *  See the License for the specific language governing permissions and

+ *  limitations under the License.

+ *

+ */

+

+package org.apache.sandesha2.storage.persistent;

+

+public class PersistentStorageMapBeanMgr {

+

+}


Added: 
webservices/sandesha/trunk/src/org/apache/sandesha2/storage/persistent/TransactionImpl.java
URL: 
http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/storage/persistent/TransactionImpl.java?rev=330193&view=auto
==============================================================================
--- 
webservices/sandesha/trunk/src/org/apache/sandesha2/storage/persistent/TransactionImpl.java
 (added)
+++ 
webservices/sandesha/trunk/src/org/apache/sandesha2/storage/persistent/TransactionImpl.java
 Tue Nov  1 21:56:42 2005
@@ -0,0 +1,22 @@
+/*

+ * Copyright  1999-2004 The Apache Software Foundation.

+ *

+ *  Licensed under the Apache License, Version 2.0 (the "License");

+ *  you may not use this file except in compliance with the License.

+ *  You may obtain a copy of the License at

+ *

+ *      http://www.apache.org/licenses/LICENSE-2.0

+ *

+ *  Unless required by applicable law or agreed to in writing, software

+ *  distributed under the License is distributed on an "AS IS" BASIS,

+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

+ *  See the License for the specific language governing permissions and

+ *  limitations under the License.

+ *

+ */

+

+package org.apache.sandesha2.storage.persistent;

+

+public class TransactionImpl {

+

+}


Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/util/FaultMgr.java
URL: 
http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/util/FaultMgr.java?rev=330193&r1=330192&r2=330193&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/util/FaultMgr.java 
(original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/util/FaultMgr.java Tue 
Nov  1 21:56:42 2005
@@ -1,3 +1,20 @@
+/*
+ * Copyright  1999-2004 The Apache Software Foundation.
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ *
+ */
+
 package org.apache.sandesha2.util;
 
 import java.math.BigInteger;
@@ -33,17 +50,19 @@
 import org.apache.sandesha2.Constants.SOAPVersion;
 import org.apache.sandesha2.Constants.SequenceProperties;
 import org.apache.sandesha2.Constants.WSRM;
-import org.apache.sandesha2.storage.AbstractBeanMgrFactory;
+import org.apache.sandesha2.storage.StorageManager;
 import org.apache.sandesha2.storage.beanmanagers.NextMsgBeanMgr;
 import org.apache.sandesha2.storage.beanmanagers.SequencePropertyBeanMgr;
 import org.apache.sandesha2.storage.beanmanagers.StorageMapBeanMgr;
 import org.apache.sandesha2.storage.beans.SequencePropertyBean;
+import org.apache.sandesha2.storage.inmemory.InMemoryNextMsgBeanMgr;
+import org.apache.sandesha2.storage.inmemory.InMemorySequencePropertyBeanMgr;
+import org.apache.sandesha2.storage.inmemory.InMemoryStorageMapBeanMgr;
 import org.apache.sandesha2.wsrm.FaultCode;
 import org.apache.sandesha2.wsrm.SequenceFault;
 
 /**
  * @author Sanka
- * @author Chamikara
  */
 
 public class FaultMgr {
@@ -127,8 +146,8 @@
     public RMMsgContext checkSequenceMsg(MessageContext msgCtx) 
             throws SandeshaException {
         
-        NextMsgBeanMgr mgr =
-            AbstractBeanMgrFactory.getInstance(msgCtx).getNextMsgBeanMgr();
+       StorageManager storageManager = 
SandeshaUtil.getSandeshaStorageManager(msgCtx.getSystemContext());
+        NextMsgBeanMgr mgr = storageManager.getNextMsgBeanMgr();
         SOAPEnvelope envelope = msgCtx.getEnvelope();
         
         OMElement element = envelope.getHeader().getFirstChildWithName(
@@ -167,12 +186,15 @@
      */
     public RMMsgContext checkSequenceAcknowledgementMsg(MessageContext msgCtx) 
             throws SandeshaException {
+       
+       StorageManager storageManager = 
SandeshaUtil.getSandeshaStorageManager(msgCtx.getSystemContext());
+       
         NextMsgBeanMgr mgr 
-            = AbstractBeanMgrFactory.getInstance(msgCtx).getNextMsgBeanMgr();
+            = storageManager.getNextMsgBeanMgr();
         StorageMapBeanMgr smgr 
-            = 
AbstractBeanMgrFactory.getInstance(msgCtx).getStorageMapBeanMgr();
+            = storageManager.getStorageMapBeanMgr();
         SequencePropertyBeanMgr propertyBeanMgr 
-            = 
AbstractBeanMgrFactory.getInstance(msgCtx).getSequencePropretyBeanMgr();
+            = storageManager.getSequencePropretyBeanMgr();
     
         SOAPEnvelope envelope = msgCtx.getEnvelope();
         // this is a SequenceAcknowledgement message

Modified: 
webservices/sandesha/trunk/src/org/apache/sandesha2/util/RMMsgCreator.java
URL: 
http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/util/RMMsgCreator.java?rev=330193&r1=330192&r2=330193&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/util/RMMsgCreator.java 
(original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/util/RMMsgCreator.java 
Tue Nov  1 21:56:42 2005
@@ -55,9 +55,10 @@
 import org.apache.sandesha2.Constants.WSA;

 import org.apache.sandesha2.Constants.WSRM;

 import org.apache.sandesha2.msgreceivers.RMMessageReceiver;

-import org.apache.sandesha2.storage.AbstractBeanMgrFactory;

+import org.apache.sandesha2.storage.StorageManager;

 import org.apache.sandesha2.storage.beanmanagers.SequencePropertyBeanMgr;

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

+import org.apache.sandesha2.storage.inmemory.InMemorySequencePropertyBeanMgr;

 import org.apache.sandesha2.wsrm.Accept;

 import org.apache.sandesha2.wsrm.AckRequested;

 import org.apache.sandesha2.wsrm.AcknowledgementRange;

@@ -94,7 +95,8 @@
                if (context == null)

                        throw new SandeshaException("Configuration Context is 
null");

 

-               SequencePropertyBeanMgr seqPropMgr = 
AbstractBeanMgrFactory.getInstance(context).getSequencePropretyBeanMgr();

+               StorageManager storageManager = 
SandeshaUtil.getSandeshaStorageManager(context);

+               SequencePropertyBeanMgr seqPropMgr = 
storageManager.getSequencePropretyBeanMgr();

                MessageContext createSeqmsgContext;

                try {

                        //creating by copying common contents. (this will not 
set contexts

@@ -366,8 +368,8 @@
 

                ConfigurationContext ctx = applicationMsg.getMessageContext()

                                .getSystemContext();

-               SequencePropertyBeanMgr seqPropMgr = AbstractBeanMgrFactory

-                               .getInstance(ctx).getSequencePropretyBeanMgr();

+               StorageManager storageManager = 
SandeshaUtil.getSandeshaStorageManager(ctx);

+               SequencePropertyBeanMgr seqPropMgr = 
storageManager.getSequencePropretyBeanMgr();

 

                SequencePropertyBean seqBean = seqPropMgr.retrieve(sequenceId,

                                Constants.SequenceProperties.RECEIVED_MESSAGES);


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=330193&r1=330192&r2=330193&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/util/SandeshaUtil.java 
(original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/util/SandeshaUtil.java 
Tue Nov  1 21:56:42 2005
@@ -18,6 +18,7 @@
 

 import java.awt.datatransfer.StringSelection;

 import java.io.InputStream;

+import java.lang.reflect.Constructor;

 import java.util.ArrayList;

 import java.util.Collection;

 import java.util.HashMap;

@@ -56,6 +57,7 @@
 import org.apache.sandesha2.RMMsgContext;

 import org.apache.sandesha2.SandeshaException;

 import org.apache.sandesha2.msgreceivers.RMMessageReceiver;

+import org.apache.sandesha2.storage.StorageManager;

 import org.apache.sandesha2.workers.InOrderInvoker;

 import org.apache.sandesha2.workers.Sender;

 import org.apache.sandesha2.wsrm.AcknowledgementRange;

@@ -68,7 +70,7 @@
 public class SandeshaUtil {

 

        private static Hashtable storedMsgContexts = new Hashtable();

-

+       private static StorageManager storageManager = null;

        private static Sender sender = new Sender();

        private static InOrderInvoker invoker = new InOrderInvoker ();

 

@@ -453,5 +455,30 @@
        public static String getServerSideInternalSeqIdFromIncomingSeqId 
(String incomingSequenceId) {

                String internalSequenceId = incomingSequenceId;

                return internalSequenceId;

+       }

+       

+       public static StorageManager getSandeshaStorageManager 
(ConfigurationContext context) throws SandeshaException {

+               String srotageManagerClassStr = Constants.STORAGE_MANAGER_IMPL;

+               

+               if (storageManager!=null)

+                       return storageManager;

+               

+               try {

+                       Class c = Class.forName(srotageManagerClassStr);

+                       Class configContextClass = 
Class.forName(context.getClass().getName());

+                       Constructor constructor = c.getConstructor(new 
Class[]{configContextClass});

+                       Object obj = constructor.newInstance(new Object[] 
{context});

+                       

+                       if (obj==null || !(obj instanceof StorageManager))

+                               throw new SandeshaException ("StorageManager 
must implement org.apache.sandeshat.storage.StorageManager");

+                       

+                       StorageManager mgr = (StorageManager) obj;

+                       storageManager = mgr;

+                       return storageManager;

+                       

+               } catch (Exception e) {

+                       System.out.println(e.getMessage());

+                       throw new SandeshaException (e.getMessage());

+               } 

        }

 }

Modified: 
webservices/sandesha/trunk/src/org/apache/sandesha2/util/SequenceManager.java
URL: 
http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/util/SequenceManager.java?rev=330193&r1=330192&r2=330193&view=diff
==============================================================================
--- 
webservices/sandesha/trunk/src/org/apache/sandesha2/util/SequenceManager.java 
(original)
+++ 
webservices/sandesha/trunk/src/org/apache/sandesha2/util/SequenceManager.java 
Tue Nov  1 21:56:42 2005
@@ -23,11 +23,13 @@
 import org.apache.sandesha2.Constants.SequenceProperties;

 import org.apache.sandesha2.Constants.WSA;

 import org.apache.sandesha2.handlers.SandeshaInHandler;

-import org.apache.sandesha2.storage.AbstractBeanMgrFactory;

+import org.apache.sandesha2.storage.StorageManager;

 import org.apache.sandesha2.storage.beanmanagers.NextMsgBeanMgr;

 import org.apache.sandesha2.storage.beanmanagers.SequencePropertyBeanMgr;

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

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

+import org.apache.sandesha2.storage.inmemory.InMemoryNextMsgBeanMgr;

+import org.apache.sandesha2.storage.inmemory.InMemorySequencePropertyBeanMgr;

 import org.apache.sandesha2.wsrm.AcksTo;

 import org.apache.sandesha2.wsrm.CreateSequence;

 

@@ -41,7 +43,7 @@
        public static String setupNewSequence(RMMsgContext createSequenceMsg) 
throws AxisFault {

                //              SequencePropertyBean seqPropBean = new 
SequencePropertyBean

                // (sequenceId,Constants.SEQ_PROPERTY_RECEIVED_MESSAGES,"");

-               //              SequencePropertyBeanMgr beanMgr = new 
SequencePropertyBeanMgr

+               //              InMemorySequencePropertyBeanMgr beanMgr = new 
InMemorySequencePropertyBeanMgr

                // (Constants.DEFAULT_STORAGE_TYPE);

                //              beanMgr.create(seqPropBean);

 

@@ -68,8 +70,15 @@
                if (acksTo == null)

                        throw new AxisFault("AcksTo is null");

 

-               SequencePropertyBeanMgr seqPropMgr = AbstractBeanMgrFactory

-                               
.getInstance(context).getSequencePropretyBeanMgr();

+               StorageManager storageManager = null;

+               

+               try {

+                       storageManager = 
SandeshaUtil.getSandeshaStorageManager(createSequenceMsg.getMessageContext().getSystemContext());

+               } catch (SandeshaException e) {

+                       e.printStackTrace();

+               }

+               

+               SequencePropertyBeanMgr seqPropMgr = 
storageManager.getSequencePropretyBeanMgr();

 

                //TODO - recheck following 

                //incoming To - reply address of response messages

@@ -88,8 +97,7 @@
                seqPropMgr.insert(replyToBean);

                seqPropMgr.insert(acksToBean);

 

-               NextMsgBeanMgr nextMsgMgr = 
AbstractBeanMgrFactory.getInstance(context)

-                               .getNextMsgBeanMgr();

+               NextMsgBeanMgr nextMsgMgr = storageManager.getNextMsgBeanMgr();

                nextMsgMgr.insert(new NextMsgBean(sequenceId, 1)); // 1 will be 
the next

                                                                                
                                   // message to invoke

                //this will apply for only in-order invocations.

@@ -104,7 +112,10 @@
        public static void setupNewClientSequence (MessageContext 
firstAplicationMsgCtx, String tempSequenceId) throws SandeshaException {

                

                AbstractContext context = 
firstAplicationMsgCtx.getSystemContext();

-               SequencePropertyBeanMgr seqPropMgr = 
AbstractBeanMgrFactory.getInstance(context).getSequencePropretyBeanMgr();

+               

+               StorageManager storageManager = 
SandeshaUtil.getSandeshaStorageManager(firstAplicationMsgCtx.getSystemContext());

+               

+               SequencePropertyBeanMgr seqPropMgr = 
storageManager.getSequencePropretyBeanMgr();

                

                

                EndpointReference toEPR = firstAplicationMsgCtx.getTo();


Modified: 
webservices/sandesha/trunk/src/org/apache/sandesha2/workers/InOrderInvoker.java
URL: 
http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/workers/InOrderInvoker.java?rev=330193&r1=330192&r2=330193&view=diff
==============================================================================
--- 
webservices/sandesha/trunk/src/org/apache/sandesha2/workers/InOrderInvoker.java 
(original)
+++ 
webservices/sandesha/trunk/src/org/apache/sandesha2/workers/InOrderInvoker.java 
Tue Nov  1 21:56:42 2005
@@ -32,13 +32,16 @@
 import org.apache.sandesha2.SandeshaException;

 import org.apache.sandesha2.Constants.MessageParts;

 import org.apache.sandesha2.Constants.SequenceProperties;

-import org.apache.sandesha2.storage.AbstractBeanMgrFactory;

+import org.apache.sandesha2.storage.StorageManager;

 import org.apache.sandesha2.storage.beanmanagers.NextMsgBeanMgr;

 import org.apache.sandesha2.storage.beanmanagers.SequencePropertyBeanMgr;

 import org.apache.sandesha2.storage.beanmanagers.StorageMapBeanMgr;

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

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

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

+import org.apache.sandesha2.storage.inmemory.InMemoryNextMsgBeanMgr;

+import org.apache.sandesha2.storage.inmemory.InMemorySequencePropertyBeanMgr;

+import org.apache.sandesha2.storage.inmemory.InMemoryStorageMapBeanMgr;

 import org.apache.sandesha2.util.MsgInitializer;

 import org.apache.sandesha2.util.SandeshaUtil;

 import org.apache.sandesha2.wsrm.Sequence;

@@ -88,14 +91,13 @@
                        

 

                        try {

-                               NextMsgBeanMgr nextMsgMgr = 
AbstractBeanMgrFactory.getInstance(

-                                               context).getNextMsgBeanMgr();

+                               

+                               StorageManager storageManager = 
SandeshaUtil.getSandeshaStorageManager(context);

+                               NextMsgBeanMgr nextMsgMgr = 
storageManager.getNextMsgBeanMgr();

 

-                               StorageMapBeanMgr storageMapMgr = 
AbstractBeanMgrFactory

-                                               
.getInstance(context).getStorageMapBeanMgr();

+                               StorageMapBeanMgr storageMapMgr = 
storageManager.getStorageMapBeanMgr();

                                

-                               SequencePropertyBeanMgr sequencePropMgr = 
AbstractBeanMgrFactory

-                                               
.getInstance(context).getSequencePropretyBeanMgr();

+                               SequencePropertyBeanMgr sequencePropMgr = 
storageManager.getSequencePropretyBeanMgr();

 

                                

                                


Modified: 
webservices/sandesha/trunk/src/org/apache/sandesha2/workers/Sender.java
URL: 
http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/workers/Sender.java?rev=330193&r1=330192&r2=330193&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/workers/Sender.java 
(original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/workers/Sender.java Tue 
Nov  1 21:56:42 2005
@@ -47,9 +47,10 @@
 import org.apache.sandesha2.Constants.MessageTypes;

 import org.apache.sandesha2.client.SandeshaMepClient;

 import org.apache.sandesha2.msgreceivers.RMMessageReceiver;

-import org.apache.sandesha2.storage.AbstractBeanMgrFactory;

+import org.apache.sandesha2.storage.StorageManager;

 import org.apache.sandesha2.storage.beanmanagers.RetransmitterBeanMgr;

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

+import org.apache.sandesha2.storage.inmemory.InMemoryRetransmitterBeanMgr;

 import org.apache.sandesha2.util.MsgInitializer;

 import org.apache.sandesha2.util.SandeshaUtil;

 import org.apache.sandesha2.wsrm.Sequence;

@@ -85,8 +86,16 @@
                                return;

                        }

 

-                       RetransmitterBeanMgr mgr = 
AbstractBeanMgrFactory.getInstance(

-                                       context).getRetransmitterBeanMgr();

+                       StorageManager storageManager = null;

+                       

+                       try {

+                               storageManager = 
SandeshaUtil.getSandeshaStorageManager(context);

+                       } catch (SandeshaException e4) {

+                               e4.printStackTrace();

+                               return;

+                       }

+                       

+                       RetransmitterBeanMgr mgr = 
storageManager.getRetransmitterBeanMgr();

                        Collection coll = mgr.findMsgsToSend();

                        Iterator iter = coll.iterator();

                        while (iter.hasNext()) {




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

Reply via email to