[jboss-cvs] JBossAS SVN: r109098 - projects/jboss-jca/trunk/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/mcp.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Wed Nov 3 15:25:04 EDT 2010
Author: jesper.pedersen
Date: 2010-11-03 15:25:04 -0400 (Wed, 03 Nov 2010)
New Revision: 109098
Modified:
projects/jboss-jca/trunk/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/mcp/ManagedConnectionPoolFactory.java
Log:
Use the class defnition instead of its fully qualified class name
Modified: projects/jboss-jca/trunk/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/mcp/ManagedConnectionPoolFactory.java
===================================================================
--- projects/jboss-jca/trunk/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/mcp/ManagedConnectionPoolFactory.java 2010-11-03 19:01:22 UTC (rev 109097)
+++ projects/jboss-jca/trunk/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/mcp/ManagedConnectionPoolFactory.java 2010-11-03 19:25:04 UTC (rev 109098)
@@ -44,8 +44,8 @@
private static final String DEFAULT_IMPLEMENTATION =
"org.jboss.jca.core.connectionmanager.pool.mcp.SemaphoreArrayListManagedConnectionPool";
- /** Actual implementation */
- private static String defaultImplementation;
+ /** Default class definition */
+ private static Class<?> defaultImplementation;
static
{
@@ -53,12 +53,23 @@
if (clz != null && !clz.trim().equals(""))
{
- defaultImplementation = clz.trim();
+ clz = clz.trim();
}
else
{
- defaultImplementation = DEFAULT_IMPLEMENTATION;
+ clz = DEFAULT_IMPLEMENTATION;
}
+
+ try
+ {
+ defaultImplementation = Class.forName(clz,
+ true,
+ ManagedConnectionPoolFactory.class.getClassLoader());
+ }
+ catch (Throwable t)
+ {
+ throw new RuntimeException("Unable to load default managed connection pool implementation: " + clz);
+ }
}
/**
@@ -87,7 +98,9 @@
Logger log)
throws Throwable
{
- return create(defaultImplementation, mcf, clf, subject, cri, pc, p, spc, log);
+ ManagedConnectionPool mcp = (ManagedConnectionPool)defaultImplementation.newInstance();
+
+ return init(mcp, mcf, clf, subject, cri, pc, p, spc, log);
}
/**
@@ -117,6 +130,27 @@
ManagedConnectionPool mcp = (ManagedConnectionPool)clz.newInstance();
+ return init(mcp, mcf, clf, subject, cri, pc, p, spc, log);
+ }
+
+ /**
+ * Initialize
+ * @param mcp The managed connection pool
+ * @param mcf the managed connection factory
+ * @param clf the connection listener factory
+ * @param subject the subject
+ * @param cri the connection request info
+ * @param pc the pool configuration
+ * @param p The pool
+ * @param spc The subpool context
+ * @param log The logger for the managed connection pool
+ * @return The initialized managed connection pool
+ */
+ private ManagedConnectionPool init(ManagedConnectionPool mcp,
+ ManagedConnectionFactory mcf, ConnectionListenerFactory clf, Subject subject,
+ ConnectionRequestInfo cri, PoolConfiguration pc, Pool p, SubPoolContext spc,
+ Logger log)
+ {
mcp.initialize(mcf, clf, subject, cri, pc, p, spc, log);
return mcp;
More information about the jboss-cvs-commits
mailing list