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]
