summaryrefslogtreecommitdiff
path: root/java/broker-plugins/jdbc-provider-bone
diff options
context:
space:
mode:
authorKeith Wall <kwall@apache.org>2014-04-01 10:35:33 +0000
committerKeith Wall <kwall@apache.org>2014-04-01 10:35:33 +0000
commit403b8c70717d8a16744cd836f015d39df2fa9733 (patch)
treeede7d62283d670cfc2891f080a5544b4a50d8c29 /java/broker-plugins/jdbc-provider-bone
parent02683439f40fc2161afcb45c2cacd22e1ce83004 (diff)
downloadqpid-python-403b8c70717d8a16744cd836f015d39df2fa9733.tar.gz
QPID-5653, QPID-5624: Remove support for virtual host xml and make message and configuration stores stateless.
This commit will temporarily break the UI git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1583597 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java/broker-plugins/jdbc-provider-bone')
-rw-r--r--java/broker-plugins/jdbc-provider-bone/src/main/java/org/apache/qpid/server/store/jdbc/bonecp/BoneCPConnectionProvider.java50
-rw-r--r--java/broker-plugins/jdbc-provider-bone/src/main/java/org/apache/qpid/server/store/jdbc/bonecp/BoneCPConnectionProviderFactory.java8
2 files changed, 19 insertions, 39 deletions
diff --git a/java/broker-plugins/jdbc-provider-bone/src/main/java/org/apache/qpid/server/store/jdbc/bonecp/BoneCPConnectionProvider.java b/java/broker-plugins/jdbc-provider-bone/src/main/java/org/apache/qpid/server/store/jdbc/bonecp/BoneCPConnectionProvider.java
index 1cde6f130d..2b45aad5e5 100644
--- a/java/broker-plugins/jdbc-provider-bone/src/main/java/org/apache/qpid/server/store/jdbc/bonecp/BoneCPConnectionProvider.java
+++ b/java/broker-plugins/jdbc-provider-bone/src/main/java/org/apache/qpid/server/store/jdbc/bonecp/BoneCPConnectionProvider.java
@@ -20,58 +20,38 @@
*/
package org.apache.qpid.server.store.jdbc.bonecp;
-import com.jolbox.bonecp.BoneCP;
-import com.jolbox.bonecp.BoneCPConfig;
import java.sql.Connection;
import java.sql.SQLException;
-import org.apache.commons.configuration.Configuration;
-import org.apache.qpid.server.model.VirtualHost;
+import java.util.Map;
+
import org.apache.qpid.server.store.jdbc.ConnectionProvider;
+import org.apache.qpid.server.util.MapValueConverter;
+
+import com.jolbox.bonecp.BoneCP;
+import com.jolbox.bonecp.BoneCPConfig;
public class BoneCPConnectionProvider implements ConnectionProvider
{
+ public static final String PARTITION_COUNT = "partitionCount";
+ public static final String MAX_CONNECTIONS_PER_PARTITION = "maxConnectionsPerPartition";
+ public static final String MIN_CONNECTIONS_PER_PARTITION = "minConnectionsPerPartition";
+
public static final int DEFAULT_MIN_CONNECTIONS_PER_PARTITION = 5;
public static final int DEFAULT_MAX_CONNECTIONS_PER_PARTITION = 10;
public static final int DEFAULT_PARTITION_COUNT = 4;
+
private final BoneCP _connectionPool;
- public BoneCPConnectionProvider(String connectionUrl, VirtualHost virtualHost) throws SQLException
+ public BoneCPConnectionProvider(String connectionUrl, Map<String, Object> storeSettings) throws SQLException
{
BoneCPConfig config = new BoneCPConfig();
config.setJdbcUrl(connectionUrl);
-
-
- config.setMinConnectionsPerPartition(getIntegerAttribute(virtualHost, "minConnectionsPerPartition", DEFAULT_MIN_CONNECTIONS_PER_PARTITION));
- config.setMaxConnectionsPerPartition(getIntegerAttribute(virtualHost, "maxConnectionsPerPartition", DEFAULT_MAX_CONNECTIONS_PER_PARTITION));
- config.setPartitionCount(getIntegerAttribute(virtualHost, "partitionCount",DEFAULT_PARTITION_COUNT));
+ config.setMinConnectionsPerPartition(MapValueConverter.getIntegerAttribute(MIN_CONNECTIONS_PER_PARTITION, storeSettings, DEFAULT_MIN_CONNECTIONS_PER_PARTITION));
+ config.setMaxConnectionsPerPartition(MapValueConverter.getIntegerAttribute(MAX_CONNECTIONS_PER_PARTITION, storeSettings, DEFAULT_MAX_CONNECTIONS_PER_PARTITION));
+ config.setPartitionCount(MapValueConverter.getIntegerAttribute(PARTITION_COUNT, storeSettings, DEFAULT_PARTITION_COUNT));
_connectionPool = new BoneCP(config);
}
- private int getIntegerAttribute(VirtualHost virtualHost, String attributeName, int defaultVal)
- {
- Object attrValue = virtualHost.getAttribute(attributeName);
- if(attrValue != null)
- {
- if(attrValue instanceof Number)
- {
- return ((Number) attrValue).intValue();
- }
- else if(attrValue instanceof String)
- {
- try
- {
- return Integer.parseInt((String)attrValue);
- }
- catch (NumberFormatException e)
- {
- return defaultVal;
- }
- }
-
- }
- return defaultVal;
- }
-
@Override
public Connection getConnection() throws SQLException
{
diff --git a/java/broker-plugins/jdbc-provider-bone/src/main/java/org/apache/qpid/server/store/jdbc/bonecp/BoneCPConnectionProviderFactory.java b/java/broker-plugins/jdbc-provider-bone/src/main/java/org/apache/qpid/server/store/jdbc/bonecp/BoneCPConnectionProviderFactory.java
index 73876eceb4..58206b270c 100644
--- a/java/broker-plugins/jdbc-provider-bone/src/main/java/org/apache/qpid/server/store/jdbc/bonecp/BoneCPConnectionProviderFactory.java
+++ b/java/broker-plugins/jdbc-provider-bone/src/main/java/org/apache/qpid/server/store/jdbc/bonecp/BoneCPConnectionProviderFactory.java
@@ -21,8 +21,8 @@
package org.apache.qpid.server.store.jdbc.bonecp;
import java.sql.SQLException;
-import org.apache.commons.configuration.Configuration;
-import org.apache.qpid.server.model.VirtualHost;
+import java.util.Map;
+
import org.apache.qpid.server.plugin.JDBCConnectionProviderFactory;
import org.apache.qpid.server.store.jdbc.ConnectionProvider;
@@ -35,9 +35,9 @@ public class BoneCPConnectionProviderFactory implements JDBCConnectionProviderFa
}
@Override
- public ConnectionProvider getConnectionProvider(String connectionUrl, VirtualHost virtualHost)
+ public ConnectionProvider getConnectionProvider(String connectionUrl, Map<String, Object> storeSettings)
throws SQLException
{
- return new BoneCPConnectionProvider(connectionUrl, virtualHost);
+ return new BoneCPConnectionProvider(connectionUrl, storeSettings);
}
}