diff options
| author | Keith Wall <kwall@apache.org> | 2014-03-25 10:07:21 +0000 |
|---|---|---|
| committer | Keith Wall <kwall@apache.org> | 2014-03-25 10:07:21 +0000 |
| commit | fcc3f654b60b7dd2180afe73e8809545725b41af (patch) | |
| tree | ef5f631412fdbfd5a6ff4232782e90692e3767c1 /qpid/java/broker-plugins/jdbc-store/src/main | |
| parent | b0e9d446fd5edc23267e2aa924a703749bdb95df (diff) | |
| download | qpid-python-fcc3f654b60b7dd2180afe73e8809545725b41af.tar.gz | |
Introduction of separate lifecycle methods on stores for open/close/recover.
Change Upgraders responsibility to create the amqp standard exchanges when
upgrading from earlier store versions.
git-svn-id: https://svn.apache.org/repos/asf/qpid/branches/java-broker-bdb-ha2@1581288 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/java/broker-plugins/jdbc-store/src/main')
| -rw-r--r-- | qpid/java/broker-plugins/jdbc-store/src/main/java/org/apache/qpid/server/store/jdbc/JDBCMessageStore.java | 27 |
1 files changed, 15 insertions, 12 deletions
diff --git a/qpid/java/broker-plugins/jdbc-store/src/main/java/org/apache/qpid/server/store/jdbc/JDBCMessageStore.java b/qpid/java/broker-plugins/jdbc-store/src/main/java/org/apache/qpid/server/store/jdbc/JDBCMessageStore.java index 2c2b701c61..55c8d3ef79 100644 --- a/qpid/java/broker-plugins/jdbc-store/src/main/java/org/apache/qpid/server/store/jdbc/JDBCMessageStore.java +++ b/qpid/java/broker-plugins/jdbc-store/src/main/java/org/apache/qpid/server/store/jdbc/JDBCMessageStore.java @@ -31,7 +31,6 @@ import java.util.Map; import java.util.concurrent.CopyOnWriteArrayList; import org.apache.log4j.Logger; -import org.apache.qpid.server.model.VirtualHost; import org.apache.qpid.server.plugin.JDBCConnectionProviderFactory; import org.apache.qpid.server.store.AbstractJDBCMessageStore; import org.apache.qpid.server.store.MessageStore; @@ -259,18 +258,24 @@ public class JDBCMessageStore extends AbstractJDBCMessageStore implements Messag @Override protected void doClose() { - while(!_transactions.isEmpty()) - { - RecordedJDBCTransaction txn = _transactions.get(0); - txn.abortTran(); - } try { - _connectionProvider.close(); + while(!_transactions.isEmpty()) + { + RecordedJDBCTransaction txn = _transactions.get(0); + txn.abortTran(); + } } - catch (SQLException e) + finally { - throw new StoreException("Unable to close connection provider ", e); + try + { + _connectionProvider.close(); + } + catch (SQLException e) + { + throw new StoreException("Unable to close connection provider ", e); + } } } @@ -281,11 +286,9 @@ public class JDBCMessageStore extends AbstractJDBCMessageStore implements Messag } - protected void implementationSpecificConfiguration(String name, - VirtualHost virtualHost) + protected void implementationSpecificConfiguration(String name, Map<String, Object> storeSettings) throws ClassNotFoundException, SQLException { - Map<String, Object> storeSettings = isConfigStoreOnly() ? virtualHost.getConfigurationStoreSettings() : virtualHost.getMessageStoreSettings(); String connectionURL = String.valueOf(storeSettings.get(CONNECTION_URL)); Object poolAttribute = storeSettings.get(CONNECTION_POOL); |
