dlr 01/08/20 20:39:04
Modified: src/java/org/apache/torque Torque.java
Log:
* Pushed setting of dependency configuration and logger into their
appropriate mutator methods.
* Added convenience method for initialization via a properties file.
Revision Changes Path
1.12 +35 -12 jakarta-turbine-torque/src/java/org/apache/torque/Torque.java
Index: Torque.java
===================================================================
RCS file: /home/cvs/jakarta-turbine-torque/src/java/org/apache/torque/Torque.java,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -u -r1.11 -r1.12
--- Torque.java 2001/08/21 01:43:01 1.11
+++ Torque.java 2001/08/21 03:39:04 1.12
@@ -54,10 +54,17 @@
* <http://www.apache.org/>.
*/
+import java.io.FileInputStream;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
+import java.util.Properties;
+import org.apache.commons.collections.ExtendedProperties;
+
+import org.apache.log4j.Category;
+import org.apache.log4j.PropertyConfigurator;
+
import org.apache.torque.adapter.DB;
import org.apache.torque.adapter.DBFactory;
import org.apache.torque.map.DatabaseMap;
@@ -68,9 +75,6 @@
import org.apache.torque.pool.DBConnection;
import org.apache.torque.util.BasePeer;
-import org.apache.commons.collections.ExtendedProperties;
-import org.apache.log4j.Category;
-
/**
* The implementation of Torque.
*
@@ -78,7 +82,7 @@
* @author <a href="mailto:[EMAIL PROTECTED]">Magn�s ��r Torfason</a>
* @author <a href="mailto:[EMAIL PROTECTED]">Jason van Zyl</a>
* @author <a href="mailto:[EMAIL PROTECTED]">Rafal Krzewski</a>
- * @version $Id: Torque.java,v 1.11 2001/08/21 01:43:01 dlr Exp $
+ * @version $Id: Torque.java,v 1.12 2001/08/21 03:39:04 dlr Exp $
*/
public class Torque
{
@@ -130,14 +134,14 @@
private static Monitor monitor;
/**
- * Initializes the service.
+ * Initializes Torque.
*/
public static void init()
throws Exception
{
- dbMaps = (Map)new HashMap();
+ dbMaps = new HashMap();
- pools = (Map) new HashMap();
+ pools = new HashMap();
// Create monitor thread
monitor = new Monitor();
@@ -148,19 +152,37 @@
monitor.setDaemon(true);
monitor.start();
- DBFactory.setConfiguration(configuration);
- DBFactory.setCategory(category);
DBFactory.init();
+ }
+
+ /**
+ * Brute-force initialization of Torque via a configuration file.
+ *
+ * @param configFile The path to the configuration file.
+ */
+ public static void init(String configFile)
+ throws Exception
+ {
+ ExtendedProperties c = new ExtendedProperties(configFile);
+ c = c.subset("services.DatabaseService");
- BasePeer.setCategory(category);
+ Properties p = new Properties();
+ p.load(new FileInputStream(configFile));
+ PropertyConfigurator.configure(p);
+
+ Torque.setConfiguration(c);
+ Torque.setCategory(Category.getInstance("ALL"));
+ Torque.init();
}
/**
- * Sets the logging category.
+ * Sets the logging category for Torque and all dependencies.
*/
public static void setCategory(Category c)
{
category = c;
+ DBFactory.setCategory(c);
+ BasePeer.setCategory(c);
}
/**
@@ -172,11 +194,12 @@
}
/**
- * Sets the configuration.
+ * Sets the configuration for Torque and all dependencies.
*/
public static void setConfiguration(ExtendedProperties c)
{
configuration = c;
+ DBFactory.setConfiguration(c);
}
/**
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]