You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by re...@locus.apache.org on 2000/11/28 06:42:18 UTC
cvs commit: jakarta-tomcat-4.0/catalina/src/share/org/apache/naming/factory ResourceFactory.java TransactionFactory.java
remm 00/11/27 21:42:17
Modified: catalina/src/share/org/apache/naming/factory
ResourceFactory.java TransactionFactory.java
Log:
- Neither ResourceFactory nor TransactionFactory contain a reference to
Tyrex factories anymore, so hopefully the conditional compilation switch will
behave correctly now.
Revision Changes Path
1.2 +20 -10 jakarta-tomcat-4.0/catalina/src/share/org/apache/naming/factory/ResourceFactory.java
Index: ResourceFactory.java
===================================================================
RCS file: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/naming/factory/ResourceFactory.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- ResourceFactory.java 2000/11/04 06:46:09 1.1
+++ ResourceFactory.java 2000/11/28 05:42:17 1.2
@@ -1,7 +1,7 @@
/*
- * $Header: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/naming/factory/ResourceFactory.java,v 1.1 2000/11/04 06:46:09 remm Exp $
- * $Revision: 1.1 $
- * $Date: 2000/11/04 06:46:09 $
+ * $Header: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/naming/factory/ResourceFactory.java,v 1.2 2000/11/28 05:42:17 remm Exp $
+ * $Revision: 1.2 $
+ * $Date: 2000/11/28 05:42:17 $
*
* ====================================================================
*
@@ -77,7 +77,7 @@
* Object factory for Resources.
*
* @author Remy Maucherat
- * @version $Revision: 1.1 $ $Date: 2000/11/04 06:46:09 $
+ * @version $Revision: 1.2 $ $Date: 2000/11/28 05:42:17 $
*/
public class ResourceFactory
@@ -106,19 +106,29 @@
*/
public Object getObjectInstance(Object obj, Name name, Context nameCtx,
Hashtable environment)
- throws NamingException {
+ throws Exception {
if (obj instanceof ResourceRef) {
Reference ref = (Reference) obj;
if (ref.getClassName().equals("javax.sql.DataSource")) {
// Checking the different known resource factories
- if ((ref.get(TyrexDataSourceFactory.DRIVER_CLASS_NAME) != null)
- && (ref.get(TyrexDataSourceFactory.DRIVER_NAME) != null)) {
- return (new TyrexDataSourceFactory())
- .getObjectInstance(obj, name, nameCtx, environment);
+ ObjectFactory factory = null;
+ String javaxSqlDataSourceFactoryClassName =
+ System.getProperty("javax.sql.DataSource.Factory",
+ Constants.TYREX_DATASOURCE_FACTORY);
+ try {
+ factory = (ObjectFactory)
+ Class.forName(javaxSqlDataSourceFactoryClassName)
+ .newInstance();
+ } catch(Throwable t) {
}
- throw new NamingException
- ("Cannot create resource instance : Missing parameters");
+ if (factory != null) {
+ return factory.getObjectInstance
+ (obj, name, nameCtx, environment);
+ } else {
+ throw new NamingException
+ ("Cannot create resource instance");
+ }
}
}
1.2 +23 -8 jakarta-tomcat-4.0/catalina/src/share/org/apache/naming/factory/TransactionFactory.java
Index: TransactionFactory.java
===================================================================
RCS file: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/naming/factory/TransactionFactory.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- TransactionFactory.java 2000/11/04 06:46:09 1.1
+++ TransactionFactory.java 2000/11/28 05:42:17 1.2
@@ -1,7 +1,7 @@
/*
- * $Header: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/naming/factory/TransactionFactory.java,v 1.1 2000/11/04 06:46:09 remm Exp $
- * $Revision: 1.1 $
- * $Date: 2000/11/04 06:46:09 $
+ * $Header: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/naming/factory/TransactionFactory.java,v 1.2 2000/11/28 05:42:17 remm Exp $
+ * $Revision: 1.2 $
+ * $Date: 2000/11/28 05:42:17 $
*
* ====================================================================
*
@@ -77,7 +77,7 @@
* Object factory for User trasactions.
*
* @author Remy Maucherat
- * @version $Revision: 1.1 $ $Date: 2000/11/04 06:46:09 $
+ * @version $Revision: 1.2 $ $Date: 2000/11/28 05:42:17 $
*/
public class TransactionFactory
@@ -106,16 +106,31 @@
*/
public Object getObjectInstance(Object obj, Name name, Context nameCtx,
Hashtable environment)
- throws NamingException {
+ throws Exception {
if (obj instanceof TransactionRef) {
Reference ref = (Reference) obj;
- return (new TyrexTransactionFactory())
- .getObjectInstance(obj, name, nameCtx, environment);
+ ObjectFactory factory = null;
+ String javaxTransactionUserTransactionFactoryClassName =
+ System.getProperty("javax.transaction.UserTransaction.Factory",
+ Constants.TYREX_TRANSACTION_FACTORY);
+ try {
+ factory = (ObjectFactory) Class.forName
+ (javaxTransactionUserTransactionFactoryClassName)
+ .newInstance();
+ } catch(Throwable t) {
+ }
+ if (factory != null) {
+ return factory.getObjectInstance
+ (obj, name, nameCtx, environment);
+ } else {
+ throw new NamingException
+ ("Cannot create resource instance");
+ }
}
-
+
return null;
-
+
}