From da8070494a06d0b6c37127eb0a3439e394bddd31 Mon Sep 17 00:00:00 2001 From: Keith Wall Date: Fri, 30 Mar 2012 08:55:05 +0000 Subject: QPID-3916: Change message store interface to extend DurableConfigurationStore and change VirtualHost contructor Applied patch from Andrew MacBean and myself. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1307317 13f79535-47bb-0310-9956-ffa450edef68 --- .../server/store/berkeleydb/BDBMessageStore.java | 33 +++++++--------------- .../berkeleydb/entry/PreparedTransaction.java | 12 ++++---- .../tuple/PreparedTransactionBinding.java | 16 +++++------ 3 files changed, 24 insertions(+), 37 deletions(-) (limited to 'qpid/java/bdbstore/src/main') diff --git a/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/BDBMessageStore.java b/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/BDBMessageStore.java index 589f63f562..402df299fc 100644 --- a/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/BDBMessageStore.java +++ b/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/BDBMessageStore.java @@ -59,8 +59,10 @@ import org.apache.qpid.server.store.MessageStore; import org.apache.qpid.server.store.MessageStoreRecoveryHandler; import org.apache.qpid.server.store.MessageStoreRecoveryHandler.StoredMessageRecoveryHandler; import org.apache.qpid.server.store.StorableMessageMetaData; +import org.apache.qpid.server.store.StoreFuture; import org.apache.qpid.server.store.StoredMemoryMessage; import org.apache.qpid.server.store.StoredMessage; +import org.apache.qpid.server.store.Transaction; import org.apache.qpid.server.store.TransactionLogRecoveryHandler; import org.apache.qpid.server.store.TransactionLogRecoveryHandler.QueueEntryRecoveryHandler; import org.apache.qpid.server.store.TransactionLogResource; @@ -107,7 +109,7 @@ import com.sleepycat.je.TransactionConfig; * dequeue messages to queues. Generate message identifiers. */ @SuppressWarnings({"unchecked"}) -public class BDBMessageStore implements MessageStore, DurableConfigurationStore +public class BDBMessageStore implements MessageStore { private static final Logger _log = Logger.getLogger(BDBMessageStore.class); @@ -217,8 +219,8 @@ public class BDBMessageStore implements MessageStore, DurableConfigurationStore public void configureMessageStore(String name, MessageStoreRecoveryHandler recoveryHandler, - Configuration storeConfiguration, - LogSubject logSubject) throws Exception + TransactionLogRecoveryHandler tlogRecoveryHandler, + Configuration storeConfiguration, LogSubject logSubject) throws Exception { CurrentActor.get().message(logSubject, MessageStoreMessages.CREATED(this.getClass().getName())); @@ -231,29 +233,14 @@ public class BDBMessageStore implements MessageStore, DurableConfigurationStore } recoverMessages(recoveryHandler); - } - public void configureTransactionLog(String name, TransactionLogRecoveryHandler recoveryHandler, - Configuration storeConfiguration, LogSubject logSubject) throws Exception - { CurrentActor.get().message(logSubject, TransactionLogMessages.CREATED(this.getClass().getName())); - - if(!_configured) - { - _logSubject = logSubject; - configure(name,storeConfiguration); - _configured = true; - stateTransition(State.CONFIGURING, State.CONFIGURED); - } - - recoverQueueEntries(recoveryHandler); - - - + recoverQueueEntries(tlogRecoveryHandler); } - public org.apache.qpid.server.store.MessageStore.Transaction newTransaction() + + public org.apache.qpid.server.store.Transaction newTransaction() { return new BDBTransaction(); } @@ -2222,7 +2209,7 @@ public class BDBMessageStore implements MessageStore, DurableConfigurationStore BDBMessageStore.this.commit(txn,true); } - return IMMEDIATE_FUTURE; + return StoreFuture.IMMEDIATE_FUTURE; } public void remove() @@ -2238,7 +2225,7 @@ public class BDBMessageStore implements MessageStore, DurableConfigurationStore } } - private class BDBTransaction implements Transaction + private class BDBTransaction implements org.apache.qpid.server.store.Transaction { private com.sleepycat.je.Transaction _txn; diff --git a/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/entry/PreparedTransaction.java b/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/entry/PreparedTransaction.java index 11ae8b89eb..eb5c4677ff 100644 --- a/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/entry/PreparedTransaction.java +++ b/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/entry/PreparedTransaction.java @@ -21,25 +21,25 @@ package org.apache.qpid.server.store.berkeleydb.entry; -import org.apache.qpid.server.store.MessageStore; +import org.apache.qpid.server.store.Transaction; public class PreparedTransaction { - private final MessageStore.Transaction.Record[] _enqueues; - private final MessageStore.Transaction.Record[] _dequeues; + private final Transaction.Record[] _enqueues; + private final Transaction.Record[] _dequeues; - public PreparedTransaction(MessageStore.Transaction.Record[] enqueues, MessageStore.Transaction.Record[] dequeues) + public PreparedTransaction(Transaction.Record[] enqueues, Transaction.Record[] dequeues) { _enqueues = enqueues; _dequeues = dequeues; } - public MessageStore.Transaction.Record[] getEnqueues() + public Transaction.Record[] getEnqueues() { return _enqueues; } - public MessageStore.Transaction.Record[] getDequeues() + public Transaction.Record[] getDequeues() { return _dequeues; } diff --git a/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/tuple/PreparedTransactionBinding.java b/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/tuple/PreparedTransactionBinding.java index d85bcd361e..33bf269880 100644 --- a/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/tuple/PreparedTransactionBinding.java +++ b/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/tuple/PreparedTransactionBinding.java @@ -25,8 +25,8 @@ import com.sleepycat.bind.tuple.TupleBinding; import com.sleepycat.bind.tuple.TupleInput; import com.sleepycat.bind.tuple.TupleOutput; import org.apache.qpid.server.message.EnqueableMessage; -import org.apache.qpid.server.store.MessageStore; import org.apache.qpid.server.store.StoredMessage; +import org.apache.qpid.server.store.Transaction; import org.apache.qpid.server.store.TransactionLogResource; import org.apache.qpid.server.store.berkeleydb.entry.PreparedTransaction; @@ -35,16 +35,16 @@ public class PreparedTransactionBinding extends TupleBinding