You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@roller.apache.org by sn...@apache.org on 2007/06/04 14:31:51 UTC

svn commit: r544141 - in /roller/branches/roller_guice: apps/planet/src/java/org/apache/roller/planet/business/ apps/planet/src/java/org/apache/roller/planet/business/hibernate/ apps/planet/src/java/org/apache/roller/planet/business/jpa/ apps/planet/we...

Author: snoopdave
Date: Mon Jun  4 05:31:45 2007
New Revision: 544141

URL: http://svn.apache.org/viewvc?view=rev&rev=544141
Log:
Further refinements to Roller Guice, almost ready for show and tell

Added:
    roller/branches/roller_guice/components/core/src/java/org/apache/roller/util/DatabaseProvider.java
    roller/branches/roller_guice/components/core/src/java/org/apache/roller/util/DatabaseProviderException.java
Removed:
    roller/branches/roller_guice/apps/planet/src/java/org/apache/roller/planet/business/DatabaseProvider.java
    roller/branches/roller_guice/apps/planet/src/java/org/apache/roller/planet/business/DatabaseProviderException.java
    roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/DatabaseProvider.java
    roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/DatabaseProviderException.java
Modified:
    roller/branches/roller_guice/apps/planet/src/java/org/apache/roller/planet/business/PlanetDatabaseProvider.java
    roller/branches/roller_guice/apps/planet/src/java/org/apache/roller/planet/business/hibernate/HibernatePlanetImpl.java
    roller/branches/roller_guice/apps/planet/src/java/org/apache/roller/planet/business/hibernate/HibernatePlanetManagerImpl.java
    roller/branches/roller_guice/apps/planet/src/java/org/apache/roller/planet/business/hibernate/HibernatePropertiesManagerImpl.java
    roller/branches/roller_guice/apps/planet/src/java/org/apache/roller/planet/business/jpa/JPAPersistenceStrategy.java
    roller/branches/roller_guice/apps/planet/src/java/org/apache/roller/planet/business/jpa/PlanetModule.java
    roller/branches/roller_guice/apps/planet/web/WEB-INF/classes/planet.properties
    roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/RollerDatabaseProvider.java
    roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateAutoPingManagerImpl.java
    roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateBookmarkManagerImpl.java
    roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateConnectionProvider.java
    roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernatePingQueueManagerImpl.java
    roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernatePingTargetManagerImpl.java
    roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernatePropertiesManagerImpl.java
    roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateRefererManagerImpl.java
    roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateRollerImpl.java
    roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateThreadManagerImpl.java
    roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateUserManagerImpl.java
    roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateWeblogManagerImpl.java
    roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/RollerModule.java
    roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAAutoPingManagerImpl.java
    roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPABookmarkManagerImpl.java
    roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAPersistenceStrategy.java
    roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAPingQueueManagerImpl.java
    roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAPingTargetManagerImpl.java
    roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAPropertiesManagerImpl.java
    roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPARefererManagerImpl.java
    roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPARollerImpl.java
    roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAThreadManagerImpl.java
    roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAUserManagerImpl.java
    roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAWeblogManagerImpl.java
    roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/RollerModule.java
    roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/referrers/ReferrerQueueManagerImpl.java
    roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/runnable/ThreadManagerImpl.java
    roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/search/IndexManagerImpl.java
    roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/themes/ThemeManagerImpl.java
    roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/config/PingConfig.java
    roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/planet/business/jpa/JPARollerPlanetPersistenceStrategy.java
    roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/ui/core/RollerContext.java
    roller/branches/roller_guice/apps/weblogger/web/WEB-INF/classes/planet.properties
    roller/branches/roller_guice/apps/weblogger/web/WEB-INF/classes/roller.properties
    roller/branches/roller_guice/components/core/build.properties
    roller/branches/roller_guice/components/core/build.xml
    roller/branches/roller_guice/tools/roller-core/roller-core.jar
    roller/branches/roller_guice/tools/roller-planet/roller-planet-business.jar

Modified: roller/branches/roller_guice/apps/planet/src/java/org/apache/roller/planet/business/PlanetDatabaseProvider.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/planet/src/java/org/apache/roller/planet/business/PlanetDatabaseProvider.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/planet/src/java/org/apache/roller/planet/business/PlanetDatabaseProvider.java (original)
+++ roller/branches/roller_guice/apps/planet/src/java/org/apache/roller/planet/business/PlanetDatabaseProvider.java Mon Jun  4 05:31:45 2007
@@ -1,9 +1,30 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ *  contributor license agreements.  The ASF licenses this file to You
+ * under the Apache License, Version 2.0 (the "License"); you may not
+ * use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.  For additional information regarding
+ * copyright in this work, please see the NOTICE file in the top level
+ * directory of this distribution.
+ */
+
 package org.apache.roller.planet.business;
 
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
-import org.apache.roller.planet.business.DatabaseProvider.ConfigurationType;
 import org.apache.roller.planet.config.PlanetConfig;
+import org.apache.roller.util.DatabaseProvider;
+import org.apache.roller.util.DatabaseProvider.ConfigurationType;
+import org.apache.roller.util.DatabaseProviderException;
+
 
 /**
  * Encapsulates Roller database configuration via JDBC properties or JNDI.

Modified: roller/branches/roller_guice/apps/planet/src/java/org/apache/roller/planet/business/hibernate/HibernatePlanetImpl.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/planet/src/java/org/apache/roller/planet/business/hibernate/HibernatePlanetImpl.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/planet/src/java/org/apache/roller/planet/business/hibernate/HibernatePlanetImpl.java (original)
+++ roller/branches/roller_guice/apps/planet/src/java/org/apache/roller/planet/business/hibernate/HibernatePlanetImpl.java Mon Jun  4 05:31:45 2007
@@ -33,6 +33,7 @@
 /**
  * A Hibernate specific implementation of the Roller Planet business layer.
  */
+@com.google.inject.Singleton
 public class HibernatePlanetImpl implements Planet {   
     
     private static Log log = LogFactory.getLog(HibernatePlanetImpl.class);

Modified: roller/branches/roller_guice/apps/planet/src/java/org/apache/roller/planet/business/hibernate/HibernatePlanetManagerImpl.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/planet/src/java/org/apache/roller/planet/business/hibernate/HibernatePlanetManagerImpl.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/planet/src/java/org/apache/roller/planet/business/hibernate/HibernatePlanetManagerImpl.java (original)
+++ roller/branches/roller_guice/apps/planet/src/java/org/apache/roller/planet/business/hibernate/HibernatePlanetManagerImpl.java Mon Jun  4 05:31:45 2007
@@ -41,6 +41,7 @@
 /**
  * Hibernate implementation of the PlanetManager.
  */
+@com.google.inject.Singleton
 public class HibernatePlanetManagerImpl extends AbstractManagerImpl implements PlanetManager {
     
     private static Log log = LogFactory.getLog(HibernatePlanetManagerImpl.class);

Modified: roller/branches/roller_guice/apps/planet/src/java/org/apache/roller/planet/business/hibernate/HibernatePropertiesManagerImpl.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/planet/src/java/org/apache/roller/planet/business/hibernate/HibernatePropertiesManagerImpl.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/planet/src/java/org/apache/roller/planet/business/hibernate/HibernatePropertiesManagerImpl.java (original)
+++ roller/branches/roller_guice/apps/planet/src/java/org/apache/roller/planet/business/hibernate/HibernatePropertiesManagerImpl.java Mon Jun  4 05:31:45 2007
@@ -42,6 +42,7 @@
 /**
  * Hibernate implementation of the PropertiesManager.
  */
+@com.google.inject.Singleton
 public class HibernatePropertiesManagerImpl extends AbstractManagerImpl
         implements PropertiesManager {
     

Modified: roller/branches/roller_guice/apps/planet/src/java/org/apache/roller/planet/business/jpa/JPAPersistenceStrategy.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/planet/src/java/org/apache/roller/planet/business/jpa/JPAPersistenceStrategy.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/planet/src/java/org/apache/roller/planet/business/jpa/JPAPersistenceStrategy.java (original)
+++ roller/branches/roller_guice/apps/planet/src/java/org/apache/roller/planet/business/jpa/JPAPersistenceStrategy.java Mon Jun  4 05:31:45 2007
@@ -36,8 +36,8 @@
 import javax.persistence.PersistenceException;
 import javax.persistence.Query;
 import org.apache.roller.planet.PlanetException;
-import org.apache.roller.planet.business.DatabaseProvider;
 import org.apache.roller.planet.config.PlanetConfig;
+import org.apache.roller.util.DatabaseProvider;
 
 
 /**
@@ -64,7 +64,10 @@
      */
     @com.google.inject.Inject 
     public JPAPersistenceStrategy(DatabaseProvider dbProvider) throws PlanetException { 
-        
+       init(dbProvider);
+    }
+    
+    protected void init(DatabaseProvider dbProvider) throws PlanetException {
         // Pull in any properties defined in JMAEMF.properties config file
         Properties emfProps = loadPropertiesFromResourceName(
            "JPAEMF.properties", getContextClassLoader());

Modified: roller/branches/roller_guice/apps/planet/src/java/org/apache/roller/planet/business/jpa/PlanetModule.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/planet/src/java/org/apache/roller/planet/business/jpa/PlanetModule.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/planet/src/java/org/apache/roller/planet/business/jpa/PlanetModule.java (original)
+++ roller/branches/roller_guice/apps/planet/src/java/org/apache/roller/planet/business/jpa/PlanetModule.java Mon Jun  4 05:31:45 2007
@@ -20,11 +20,11 @@
 
 import com.google.inject.Binder;
 import com.google.inject.Module;
-import org.apache.roller.planet.business.DatabaseProvider;
 import org.apache.roller.planet.business.Planet;
 import org.apache.roller.planet.business.PlanetDatabaseProvider;
 import org.apache.roller.planet.business.PlanetManager;
 import org.apache.roller.planet.business.PropertiesManager;
+import org.apache.roller.util.DatabaseProvider;
 
 
 /**

Modified: roller/branches/roller_guice/apps/planet/web/WEB-INF/classes/planet.properties
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/planet/web/WEB-INF/classes/planet.properties?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/planet/web/WEB-INF/classes/planet.properties (original)
+++ roller/branches/roller_guice/apps/planet/web/WEB-INF/classes/planet.properties Mon Jun  4 05:31:45 2007
@@ -71,7 +71,7 @@
 # Optional properties
 
 # Pluggable backend
-guice.backend.module=org.apache.roller.planet.business.hibernate.PlanetModule
+guice.backend.module=org.apache.roller.planet.business.jpa.PlanetModule
 
 # Number of Technorati queries allowed per day
 planet.aggregator.technorati.limit=500

Modified: roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/RollerDatabaseProvider.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/RollerDatabaseProvider.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/RollerDatabaseProvider.java (original)
+++ roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/RollerDatabaseProvider.java Mon Jun  4 05:31:45 2007
@@ -1,16 +1,13 @@
 package org.apache.roller.weblogger.business;
 
-import java.sql.Connection;
-import java.util.Properties;
-import javax.naming.InitialContext;
-import javax.naming.NamingException;
-import javax.sql.DataSource;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.apache.roller.RollerException;
-import org.apache.roller.weblogger.business.DatabaseProvider.ConfigurationType;
+import org.apache.roller.util.DatabaseProvider;
+import org.apache.roller.util.DatabaseProvider.ConfigurationType;
 import org.apache.roller.weblogger.config.RollerConfig;
 
+
 /**
  * Encapsulates Roller database configuration via JDBC properties or JNDI.
  *
@@ -42,12 +39,11 @@
         if ("jdbc".equals(connectionTypeString)) {
             type = ConfigurationType.JDBC_PROPERTIES;
         }
-        jndiName =          RollerConfig.getProperty("database.jndi.name");
-        jdbcDriverClass =   RollerConfig.getProperty("database.jdbc.driverClass");
-        jdbcConnectionURL = RollerConfig.getProperty("database.jdbc.connectionURL");
-        jdbcUsername =      RollerConfig.getProperty("database.jdbc.username");
-        jdbcPassword =      RollerConfig.getProperty("database.jdbc.password");
-        
-        init(type, jndiName, jdbcDriverClass, jdbcConnectionURL, jdbcUsername, jdbcPassword);
+        init(type, 
+            RollerConfig.getProperty("database.jndi.name"),
+            RollerConfig.getProperty("database.jdbc.driverClass"),
+            RollerConfig.getProperty("database.jdbc.connectionURL"),
+            RollerConfig.getProperty("database.jdbc.username"),
+            RollerConfig.getProperty("database.jdbc.password"));
     }
 }

Modified: roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateAutoPingManagerImpl.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateAutoPingManagerImpl.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateAutoPingManagerImpl.java (original)
+++ roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateAutoPingManagerImpl.java Mon Jun  4 05:31:45 2007
@@ -45,6 +45,7 @@
  *
  * @author <a href="mailto:anil@busybuddha.org">Anil Gangolli</a>
  */
+@com.google.inject.Singleton
 public class HibernateAutoPingManagerImpl implements AutoPingManager {
     
     private Roller roller;

Modified: roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateBookmarkManagerImpl.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateBookmarkManagerImpl.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateBookmarkManagerImpl.java (original)
+++ roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateBookmarkManagerImpl.java Mon Jun  4 05:31:45 2007
@@ -41,6 +41,7 @@
 /**
  * Hibernate implementation of the BookmarkManager.
  */
+@com.google.inject.Singleton
 public class HibernateBookmarkManagerImpl implements BookmarkManager {
     
     static final long serialVersionUID = 5286654557062382772L;

Modified: roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateConnectionProvider.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateConnectionProvider.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateConnectionProvider.java (original)
+++ roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateConnectionProvider.java Mon Jun  4 05:31:45 2007
@@ -5,7 +5,7 @@
 import java.util.Properties;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
-import org.apache.roller.weblogger.business.DatabaseProvider;
+import org.apache.roller.util.DatabaseProvider;
 import org.apache.roller.weblogger.business.RollerFactory;
 import org.hibernate.HibernateException;
 import org.hibernate.connection.ConnectionProvider;

Modified: roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernatePingQueueManagerImpl.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernatePingQueueManagerImpl.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernatePingQueueManagerImpl.java (original)
+++ roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernatePingQueueManagerImpl.java Mon Jun  4 05:31:45 2007
@@ -39,6 +39,7 @@
  *
  * @author <a href="mailto:anil@busybuddha.org">Anil Gangolli</a>
  */
+@com.google.inject.Singleton
 public class HibernatePingQueueManagerImpl implements PingQueueManager {
     
     static final long serialVersionUID = -7660638707453106615L;

Modified: roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernatePingTargetManagerImpl.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernatePingTargetManagerImpl.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernatePingTargetManagerImpl.java (original)
+++ roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernatePingTargetManagerImpl.java Mon Jun  4 05:31:45 2007
@@ -47,6 +47,7 @@
  *
  * @author <a href="mailto:anil@busybuddha.org">Anil Gangolli</a>
  */
+@com.google.inject.Singleton
 public class HibernatePingTargetManagerImpl implements PingTargetManager {
     
     static final long serialVersionUID = 121008492583382718L;

Modified: roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernatePropertiesManagerImpl.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernatePropertiesManagerImpl.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernatePropertiesManagerImpl.java (original)
+++ roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernatePropertiesManagerImpl.java Mon Jun  4 05:31:45 2007
@@ -41,6 +41,7 @@
 /**
  * Hibernate implementation of the PropertiesManager.
  */ 
+@com.google.inject.Singleton
 public class HibernatePropertiesManagerImpl implements PropertiesManager {
     
     public static final long serialVersionUID = -4326713177137796936L;

Modified: roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateRefererManagerImpl.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateRefererManagerImpl.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateRefererManagerImpl.java (original)
+++ roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateRefererManagerImpl.java Mon Jun  4 05:31:45 2007
@@ -57,6 +57,7 @@
 /**
  * Hibernate implementation of the RefererManager.
  */
+@com.google.inject.Singleton
 public class HibernateRefererManagerImpl implements RefererManager {
     
     static final long serialVersionUID = -4966091850482256435L;

Modified: roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateRollerImpl.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateRollerImpl.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateRollerImpl.java (original)
+++ roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateRollerImpl.java Mon Jun  4 05:31:45 2007
@@ -41,6 +41,7 @@
 /**
  * A Hibernate specific implementation of the Roller business layer.
  */
+@com.google.inject.Singleton
 public class HibernateRollerImpl extends RollerImpl {    
     private static Log mLogger = LogFactory.getLog(HibernateRollerImpl.class);    
     

Modified: roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateThreadManagerImpl.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateThreadManagerImpl.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateThreadManagerImpl.java (original)
+++ roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateThreadManagerImpl.java Mon Jun  4 05:31:45 2007
@@ -39,6 +39,7 @@
  * This implementation extends the base ThreadManagerImpl class and provides
  * leasing abilities which are managed through the database.
  */
+@com.google.inject.Singleton
 public class HibernateThreadManagerImpl extends ThreadManagerImpl {
     
     private static Log log = LogFactory.getLog(HibernateThreadManagerImpl.class);

Modified: roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateUserManagerImpl.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateUserManagerImpl.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateUserManagerImpl.java (original)
+++ roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateUserManagerImpl.java Mon Jun  4 05:31:45 2007
@@ -66,6 +66,7 @@
 /**
  * Hibernate implementation of the UserManager.
  */    
+@com.google.inject.Singleton
 public class HibernateUserManagerImpl implements UserManager {
     
     static final long serialVersionUID = -5128460637997081121L;    

Modified: roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateWeblogManagerImpl.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateWeblogManagerImpl.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateWeblogManagerImpl.java (original)
+++ roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/HibernateWeblogManagerImpl.java Mon Jun  4 05:31:45 2007
@@ -65,6 +65,7 @@
 /**
  * Hibernate implementation of the WeblogManager.
  */
+@com.google.inject.Singleton
 public class HibernateWeblogManagerImpl implements WeblogManager {
     
     static final long serialVersionUID = -3730860865389981439L;

Modified: roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/RollerModule.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/RollerModule.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/RollerModule.java (original)
+++ roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/hibernate/RollerModule.java Mon Jun  4 05:31:45 2007
@@ -20,7 +20,7 @@
 
 import com.google.inject.Binder;
 import com.google.inject.Module;
-import org.apache.roller.weblogger.business.DatabaseProvider;
+import org.apache.roller.util.DatabaseProvider;
 import org.apache.roller.weblogger.business.BookmarkManager;
 import org.apache.roller.weblogger.business.FileManager;
 import org.apache.roller.weblogger.business.FileManagerImpl;

Modified: roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAAutoPingManagerImpl.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAAutoPingManagerImpl.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAAutoPingManagerImpl.java (original)
+++ roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAAutoPingManagerImpl.java Mon Jun  4 05:31:45 2007
@@ -43,6 +43,7 @@
  * Created on May 29, 2006, 11:29 AM
  *
  */
+@com.google.inject.Singleton
 public class JPAAutoPingManagerImpl implements AutoPingManager {
 
     private JPAPersistenceStrategy strategy;

Modified: roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPABookmarkManagerImpl.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPABookmarkManagerImpl.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPABookmarkManagerImpl.java (original)
+++ roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPABookmarkManagerImpl.java Mon Jun  4 05:31:45 2007
@@ -43,6 +43,7 @@
  * Created on May 31, 2006, 3:49 PM
  *
  */
+@com.google.inject.Singleton
 public class JPABookmarkManagerImpl implements BookmarkManager {
     
     private JPAPersistenceStrategy strategy;

Modified: roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAPersistenceStrategy.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAPersistenceStrategy.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAPersistenceStrategy.java (original)
+++ roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAPersistenceStrategy.java Mon Jun  4 05:31:45 2007
@@ -29,8 +29,8 @@
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.apache.roller.weblogger.WebloggerException;
-import org.apache.roller.weblogger.business.DatabaseProvider;
 import org.apache.roller.weblogger.config.RollerConfig;
+import org.apache.roller.util.DatabaseProvider;
 import javax.persistence.EntityManagerFactory;
 import javax.persistence.EntityManager;
 import javax.persistence.FlushModeType;
@@ -42,6 +42,7 @@
 /**
  * Responsible for the lowest-level interaction with the JPA API.
  */
+@com.google.inject.Singleton
 public class JPAPersistenceStrategy {
     private static Log logger = 
         LogFactory.getFactory().getInstance(JPAPersistenceStrategy.class);

Modified: roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAPingQueueManagerImpl.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAPingQueueManagerImpl.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAPingQueueManagerImpl.java (original)
+++ roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAPingQueueManagerImpl.java Mon Jun  4 05:31:45 2007
@@ -39,6 +39,7 @@
  * Created on May 28, 2006, 4:11 PM
  *
  */
+@com.google.inject.Singleton
 public class JPAPingQueueManagerImpl implements PingQueueManager {
 
     private static Log log = LogFactory.getLog(

Modified: roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAPingTargetManagerImpl.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAPingTargetManagerImpl.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAPingTargetManagerImpl.java (original)
+++ roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAPingTargetManagerImpl.java Mon Jun  4 05:31:45 2007
@@ -43,6 +43,7 @@
  * Created on May 29, 2006, 2:24 PM
  *
  */
+@com.google.inject.Singleton
 public class JPAPingTargetManagerImpl implements PingTargetManager {
     
     /** The logger instance for this class. */

Modified: roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAPropertiesManagerImpl.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAPropertiesManagerImpl.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAPropertiesManagerImpl.java (original)
+++ roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAPropertiesManagerImpl.java Mon Jun  4 05:31:45 2007
@@ -44,6 +44,7 @@
  * Created on May 29, 2006, 2:06 PM
  *
  */
+@com.google.inject.Singleton
 public class JPAPropertiesManagerImpl implements PropertiesManager {
     
     /** The logger instance for this class. */

Modified: roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPARefererManagerImpl.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPARefererManagerImpl.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPARefererManagerImpl.java (original)
+++ roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPARefererManagerImpl.java Mon Jun  4 05:31:45 2007
@@ -51,6 +51,7 @@
 /*
  * JPARefererManagerImpl.java
  */
+@com.google.inject.Singleton
 public class JPARefererManagerImpl implements RefererManager {
 
     private static Log log = LogFactory.getLog(

Modified: roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPARollerImpl.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPARollerImpl.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPARollerImpl.java (original)
+++ roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPARollerImpl.java Mon Jun  4 05:31:45 2007
@@ -17,18 +17,10 @@
  */
 package org.apache.roller.weblogger.business.jpa;
 
-import java.io.IOException;
-import java.io.InputStream;
-import java.security.AccessController;
-import java.security.PrivilegedAction;
-import java.util.Enumeration;
-import java.util.Properties;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
-import org.apache.roller.weblogger.business.jpa.JPAPersistenceStrategy;
 import org.apache.roller.weblogger.WebloggerException;
 import org.apache.roller.weblogger.business.BookmarkManager;
-import org.apache.roller.weblogger.business.DatabaseProvider;
 import org.apache.roller.weblogger.business.FileManager;
 import org.apache.roller.weblogger.business.PluginManager;
 import org.apache.roller.weblogger.business.PropertiesManager;
@@ -36,7 +28,6 @@
 import org.apache.roller.weblogger.business.RollerImpl;
 import org.apache.roller.weblogger.business.UserManager;
 import org.apache.roller.weblogger.business.WeblogManager;
-import org.apache.roller.weblogger.business.hibernate.HibernatePersistenceStrategy;
 import org.apache.roller.weblogger.business.runnable.ThreadManager;
 import org.apache.roller.weblogger.business.pings.AutoPingManager;
 import org.apache.roller.weblogger.business.pings.PingQueueManager;
@@ -45,8 +36,6 @@
 import org.apache.roller.weblogger.business.referrers.ReferrerQueueManager;
 import org.apache.roller.weblogger.business.search.IndexManager;
 import org.apache.roller.weblogger.business.themes.ThemeManager;
-import org.apache.roller.weblogger.config.RollerConfig;
-
 
 /**
  * A JPA specific implementation of the Roller business layer.

Modified: roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAThreadManagerImpl.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAThreadManagerImpl.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAThreadManagerImpl.java (original)
+++ roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAThreadManagerImpl.java Mon Jun  4 05:31:45 2007
@@ -38,6 +38,7 @@
  * This implementation extends the base ThreadManagerImpl class and provides
  * locking abilities which are managed through the database.
  */
+@com.google.inject.Singleton
 public class JPAThreadManagerImpl extends ThreadManagerImpl {
 
     private static final Log log = LogFactory.getLog(JPAThreadManagerImpl.class);

Modified: roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAUserManagerImpl.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAUserManagerImpl.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAUserManagerImpl.java (original)
+++ roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAUserManagerImpl.java Mon Jun  4 05:31:45 2007
@@ -52,6 +52,7 @@
  * Created on May 29, 2006, 3:15 PM
  *
  */
+@com.google.inject.Singleton
 public class JPAUserManagerImpl implements UserManager {
     
     /** The logger instance for this class. */

Modified: roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAWeblogManagerImpl.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAWeblogManagerImpl.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAWeblogManagerImpl.java (original)
+++ roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/JPAWeblogManagerImpl.java Mon Jun  4 05:31:45 2007
@@ -65,6 +65,7 @@
  * Created on May 31, 2006, 4:08 PM
  *
  */
+@com.google.inject.Singleton
 public class JPAWeblogManagerImpl implements WeblogManager {
     
     protected static Log log = LogFactory.getLog(

Modified: roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/RollerModule.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/RollerModule.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/RollerModule.java (original)
+++ roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/jpa/RollerModule.java Mon Jun  4 05:31:45 2007
@@ -20,7 +20,7 @@
 
 import com.google.inject.Binder;
 import com.google.inject.Module;
-import org.apache.roller.weblogger.business.DatabaseProvider;
+import org.apache.roller.util.DatabaseProvider;
 import org.apache.roller.weblogger.business.BookmarkManager;
 import org.apache.roller.weblogger.business.FileManager;
 import org.apache.roller.weblogger.business.FileManagerImpl;

Modified: roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/referrers/ReferrerQueueManagerImpl.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/referrers/ReferrerQueueManagerImpl.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/referrers/ReferrerQueueManagerImpl.java (original)
+++ roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/referrers/ReferrerQueueManagerImpl.java Mon Jun  4 05:31:45 2007
@@ -58,6 +58,7 @@
  *
  * @author Allen Gilliland
  */
+@com.google.inject.Singleton
 public class ReferrerQueueManagerImpl implements ReferrerQueueManager {
     
     private static Log mLogger = LogFactory.getLog(ReferrerQueueManagerImpl.class);

Modified: roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/runnable/ThreadManagerImpl.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/runnable/ThreadManagerImpl.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/runnable/ThreadManagerImpl.java (original)
+++ roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/runnable/ThreadManagerImpl.java Mon Jun  4 05:31:45 2007
@@ -34,6 +34,7 @@
 /**
  * Manage Roller's thread use.
  */
+@com.google.inject.Singleton
 public class ThreadManagerImpl implements ThreadManager {
     
     private static final Log log = LogFactory.getLog(ThreadManagerImpl.class);

Modified: roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/search/IndexManagerImpl.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/search/IndexManagerImpl.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/search/IndexManagerImpl.java (original)
+++ roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/search/IndexManagerImpl.java Mon Jun  4 05:31:45 2007
@@ -53,6 +53,7 @@
  * @author Mindaugas Idzelis (min@idzelis.com)
  * @author mraible (formatting and making indexDir configurable)
  */
+@com.google.inject.Singleton
 public class IndexManagerImpl implements IndexManager {
     //~ Static fields/initializers
     // =============================================

Modified: roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/themes/ThemeManagerImpl.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/themes/ThemeManagerImpl.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/themes/ThemeManagerImpl.java (original)
+++ roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/business/themes/ThemeManagerImpl.java Mon Jun  4 05:31:45 2007
@@ -50,6 +50,7 @@
  * This particular implementation reads theme data off the filesystem 
  * and assumes that those themes are not changable at runtime.
  */
+@com.google.inject.Singleton
 public class ThemeManagerImpl implements ThemeManager {
     
     private static Log log = LogFactory.getLog(ThemeManagerImpl.class);

Modified: roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/config/PingConfig.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/config/PingConfig.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/config/PingConfig.java (original)
+++ roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/config/PingConfig.java Mon Jun  4 05:31:45 2007
@@ -99,7 +99,12 @@
     // This is initialized once at startup, and referenced when pings are made.
     private static final Map configuredVariants = new HashMap();
     
-    
+    // Pattern used to parse common ping targets as well as ping variants.
+    // Each initial commmon ping target is specified in the format {{name}{url}}
+    // Ping variants are also specified in a nested brace format {{url}{options}}
+    private static final Pattern NESTED_BRACE_PAIR = Pattern.compile("\\{\\{(.*?)\\}\\{(.*?)\\}\\}");
+
+    /*    
     static {
         try {
             // Initialize common targets from the configuration
@@ -119,7 +124,7 @@
         } catch (WebloggerException e) {
             logger.error("ERROR configing ping managers", e);
         }
-    }
+    }*/
 
 
     // Inhibit construction
@@ -188,11 +193,6 @@
     public static boolean getSuspendPingProcessing() {
         return RollerRuntimeConfig.getBooleanProperty(PINGS_SUSPEND_PING_PROCESSING_PROP);
     }
-
-    // Pattern used to parse common ping targets as well as ping variants.
-    // Each initial commmon ping target is specified in the format {{name}{url}}
-    // Ping variants are also specified in a nested brace format {{url}{options}}
-    private static final Pattern NESTED_BRACE_PAIR = Pattern.compile("\\{\\{(.*?)\\}\\{(.*?)\\}\\}");
 
     /**
      * Initialize the common ping targets from the configuration properties. If the current list of common ping targets

Modified: roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/planet/business/jpa/JPARollerPlanetPersistenceStrategy.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/planet/business/jpa/JPARollerPlanetPersistenceStrategy.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/planet/business/jpa/JPARollerPlanetPersistenceStrategy.java (original)
+++ roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/planet/business/jpa/JPARollerPlanetPersistenceStrategy.java Mon Jun  4 05:31:45 2007
@@ -26,7 +26,7 @@
 import org.apache.commons.logging.LogFactory;
 import org.apache.roller.planet.PlanetException;
 import org.apache.roller.planet.business.jpa.JPAPersistenceStrategy;
-import org.apache.roller.weblogger.business.DatabaseProvider;
+import org.apache.roller.util.DatabaseProvider;
 import org.apache.roller.weblogger.config.RollerConfig;
 
 /**
@@ -43,6 +43,10 @@
      */
     @com.google.inject.Inject
     public JPARollerPlanetPersistenceStrategy(DatabaseProvider dbProvider) throws PlanetException { 
+        super(dbProvider);
+    }
+    
+    protected void init(DatabaseProvider dbProvider) throws PlanetException {
         
         // Pull in any properties defined in JMAEMF.properties config file
         Properties emfProps = loadPropertiesFromResourceName(

Modified: roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/ui/core/RollerContext.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/ui/core/RollerContext.java?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/ui/core/RollerContext.java (original)
+++ roller/branches/roller_guice/apps/weblogger/src/java/org/apache/roller/weblogger/ui/core/RollerContext.java Mon Jun  4 05:31:45 2007
@@ -21,7 +21,6 @@
 import java.io.File;
 import java.io.InputStream;
 import java.sql.Connection;
-import java.util.Date;
 import java.util.Properties;
 import javax.servlet.ServletContext;
 import javax.servlet.ServletContextEvent;
@@ -32,19 +31,14 @@
 import org.acegisecurity.providers.encoding.PasswordEncoder;
 import org.acegisecurity.providers.encoding.ShaPasswordEncoder;
 import org.acegisecurity.ui.webapp.AuthenticationProcessingFilterEntryPoint;
-import org.acegisecurity.userdetails.jdbc.JdbcDaoImpl;
-import org.apache.commons.lang.StringUtils;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
+import org.apache.roller.util.DatabaseProvider;
 import org.apache.roller.weblogger.WebloggerException;
-import org.apache.roller.weblogger.business.DatabaseProvider;
-import org.apache.roller.weblogger.business.runnable.RollerTask;
 import org.apache.roller.weblogger.business.utils.UpgradeDatabase;
-import org.apache.roller.weblogger.config.PingConfig;
 import org.apache.roller.weblogger.config.RollerConfig;
 import org.apache.roller.weblogger.business.Roller;
 import org.apache.roller.weblogger.business.RollerFactory;
-import org.apache.roller.weblogger.business.runnable.ThreadManager;
 import org.apache.roller.planet.business.Planet;
 import org.apache.roller.planet.business.PlanetFactory;
 import org.apache.roller.weblogger.ui.core.plugins.UIPluginManager;
@@ -53,8 +47,6 @@
 import org.apache.roller.weblogger.util.cache.CacheManager;
 import org.apache.velocity.runtime.RuntimeSingleton;
 import org.springframework.context.ApplicationContext;
-import org.springframework.jdbc.core.JdbcTemplate;
-import org.springframework.jdbc.datasource.DriverManagerDataSource;
 import org.springframework.web.context.ContextLoaderListener;
 import org.springframework.web.context.support.WebApplicationContextUtils;
 

Modified: roller/branches/roller_guice/apps/weblogger/web/WEB-INF/classes/planet.properties
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/weblogger/web/WEB-INF/classes/planet.properties?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/weblogger/web/WEB-INF/classes/planet.properties (original)
+++ roller/branches/roller_guice/apps/weblogger/web/WEB-INF/classes/planet.properties Mon Jun  4 05:31:45 2007
@@ -57,6 +57,6 @@
 #---------------------------------
 
 # Pluggable backend
-guice.backend.module=org.apache.roller.weblogger.planet.business.hibernate.RollerModule
+guice.backend.module=org.apache.roller.weblogger.planet.business.jpa.RollerModule
 
 

Modified: roller/branches/roller_guice/apps/weblogger/web/WEB-INF/classes/roller.properties
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/apps/weblogger/web/WEB-INF/classes/roller.properties?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/apps/weblogger/web/WEB-INF/classes/roller.properties (original)
+++ roller/branches/roller_guice/apps/weblogger/web/WEB-INF/classes/roller.properties Mon Jun  4 05:31:45 2007
@@ -74,7 +74,7 @@
 #---------------------------------
 
 # Pluggable backend
-guice.backend.module=org.apache.roller.weblogger.business.hibernate.RollerModule
+guice.backend.module=org.apache.roller.weblogger.business.jpa.RollerModule
 
 # Hibernate dialect: You MUST override this to use a database other than MySQL4
 hibernate.dialect=org.hibernate.dialect.MySQLDialect

Modified: roller/branches/roller_guice/components/core/build.properties
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/components/core/build.properties?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/components/core/build.properties (original)
+++ roller/branches/roller_guice/components/core/build.properties Mon Jun  4 05:31:45 2007
@@ -1,7 +1,7 @@
 
 # compile properties
 build.debug=true
-build.sourcelevel=1.4
+build.sourcelevel=1.5
 build.deprecation=false
 
 # unit test properties

Modified: roller/branches/roller_guice/components/core/build.xml
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/components/core/build.xml?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
--- roller/branches/roller_guice/components/core/build.xml (original)
+++ roller/branches/roller_guice/components/core/build.xml Mon Jun  4 05:31:45 2007
@@ -36,6 +36,8 @@
     
     <fileset id="core-jars" dir="${tools}">
         <include name="lib/commons-id-0.1-SNAPSHOT.jar"/>
+        <include name="lib/guice-1.0.jar"/>
+        <include name="lib/commons-logging-1.0.4.jar"/>
     </fileset>
     
     <path id="core.path">

Added: roller/branches/roller_guice/components/core/src/java/org/apache/roller/util/DatabaseProvider.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/components/core/src/java/org/apache/roller/util/DatabaseProvider.java?view=auto&rev=544141
==============================================================================
--- roller/branches/roller_guice/components/core/src/java/org/apache/roller/util/DatabaseProvider.java (added)
+++ roller/branches/roller_guice/components/core/src/java/org/apache/roller/util/DatabaseProvider.java Mon Jun  4 05:31:45 2007
@@ -0,0 +1,151 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ *  contributor license agreements.  The ASF licenses this file to You
+ * under the Apache License, Version 2.0 (the "License"); you may not
+ * use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.  For additional information regarding
+ * copyright in this work, please see the NOTICE file in the top level
+ * directory of this distribution.
+ */
+
+package org.apache.roller.util;
+
+import java.sql.Connection;
+import java.sql.DriverManager;
+import java.sql.SQLException;
+import java.util.Properties;
+import javax.naming.InitialContext;
+import javax.naming.NamingException;
+import javax.sql.DataSource;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+
+/**
+ * Encapsulates Roller database configuration via JDBC properties or JNDI.
+ *
+ * <p>Reads configuration properties from RollerConfig:</p>
+ * <pre>
+ * # Specify database configuration type of 'jndi' or 'jdbc'
+ * database.configurationType=jndi
+ * 
+ * # For database configuration type 'jndi',this will be used
+ * database.jndi.name=jdbc/rollerdb
+ * 
+ * # For database configuration type of 'jdbc', you MUST override these
+ * database.jdbc.driverClass=
+ * database.jdbc.connectionURL=
+ * database.jdbc.username=
+ * database.jdbc.password=
+ * </pre>
+ */
+@com.google.inject.Singleton
+public abstract class DatabaseProvider  {
+    private static Log log = LogFactory.getLog(DatabaseProvider.class);
+    public enum ConfigurationType {JNDI_NAME, JDBC_PROPERTIES;}
+        
+    protected ConfigurationType type = ConfigurationType.JNDI_NAME;
+    
+    protected String jndiName = null; 
+    protected DataSource dataSource = null;  
+    
+    protected String jdbcDriverClass = null;
+    protected String jdbcConnectionURL = null;
+    protected String jdbcPassword = null;
+    protected String jdbcUsername = null;
+    protected Properties props = null;
+   
+    
+    protected void init(
+        ConfigurationType type,
+        String jndiName, 
+        String jdbcDriverClass,
+        String jdbcConnectionURL,
+        String jdbcUsername,
+        String jdbcPassword) throws DatabaseProviderException { 
+        
+        this.type              = type;
+        this.jndiName          = jndiName;
+        this.jdbcDriverClass   = jdbcDriverClass;
+        this.jdbcConnectionURL = jdbcConnectionURL;
+        this.jdbcUsername      = jdbcUsername;
+        this.jdbcPassword      = jdbcPassword;
+        
+        // init now so we fail early
+        if (getType() == ConfigurationType.JDBC_PROPERTIES) {
+            log.info("Using 'jdbc' properties based configuration");
+            try {
+                Class.forName(getJdbcDriverClass());
+            } catch (ClassNotFoundException ex) {
+                throw new DatabaseProviderException(
+                   "Cannot load specified JDBC driver class [" +getJdbcDriverClass()+ "]", ex);
+            }
+            if (getJdbcUsername() != null || getJdbcPassword() != null) {
+                props = new Properties();
+                if (getJdbcUsername() != null) props.put("user", getJdbcUsername());
+                if (getJdbcPassword() != null) props.put("password", getJdbcPassword());
+            }
+        } else {
+            log.info("Using 'jndi' based configuration");
+            String name = "java:comp/env/" + getJndiName();
+            try {
+                InitialContext ic = new InitialContext();
+                dataSource = (DataSource)ic.lookup(name);
+            } catch (NamingException ex) {
+                throw new DatabaseProviderException(
+                    "ERROR looking up data-source with JNDI name: " + name, ex);
+            }            
+        }
+        try { 
+            Connection testcon = getConnection();
+            testcon.close();
+        } catch (Throwable t) {
+            throw new DatabaseProviderException("ERROR unable to obtain connection", t);
+        }
+    }
+    
+    
+    /**
+     * Get database connection from data-source or driver manager, depending 
+     * on which is configured.
+     */
+    public Connection getConnection() throws SQLException {
+        if (getType() == ConfigurationType.JDBC_PROPERTIES) {
+            return DriverManager.getConnection(getJdbcConnectionURL(), props);
+        } else {
+            return dataSource.getConnection();
+        }
+    } 
+
+    public ConfigurationType getType() {
+        return type;
+    }
+
+    public String getJndiName() {
+        return jndiName;
+    }
+
+    public String getJdbcDriverClass() {
+        return jdbcDriverClass;
+    }
+
+    public String getJdbcConnectionURL() {
+        return jdbcConnectionURL;
+    }
+
+    public String getJdbcPassword() {
+        return jdbcPassword;
+    }
+
+    public String getJdbcUsername() {
+        return jdbcUsername;
+    }
+}

Added: roller/branches/roller_guice/components/core/src/java/org/apache/roller/util/DatabaseProviderException.java
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/components/core/src/java/org/apache/roller/util/DatabaseProviderException.java?view=auto&rev=544141
==============================================================================
--- roller/branches/roller_guice/components/core/src/java/org/apache/roller/util/DatabaseProviderException.java (added)
+++ roller/branches/roller_guice/components/core/src/java/org/apache/roller/util/DatabaseProviderException.java Mon Jun  4 05:31:45 2007
@@ -0,0 +1,59 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ *  contributor license agreements.  The ASF licenses this file to You
+ * under the Apache License, Version 2.0 (the "License"); you may not
+ * use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.  For additional information regarding
+ * copyright in this work, please see the NOTICE file in the top level
+ * directory of this distribution.
+ */
+
+package org.apache.roller.util;
+
+import org.apache.roller.RollerException;
+
+
+/**
+ * Exception thrown by database provider in cases of mis-configuration or 
+ * loss of database connection.
+ */
+public class DatabaseProviderException extends RollerException {
+        
+    public DatabaseProviderException() {
+        super();
+    }
+        
+    /**
+     * Construct with message string.
+     * @param s Error message string.
+     */
+    public DatabaseProviderException(String s) {
+        super(s);
+    }
+        
+    /**
+     * Construct, wrapping existing throwable.
+     * @param s Error message
+     * @param t Existing connection to wrap.
+     */
+    public DatabaseProviderException(String s, Throwable t) {
+        super(s, t);
+    }
+    
+    
+    /**
+     * Construct, wrapping existing throwable.
+     * @param t Existing exception to be wrapped.
+     */
+    public DatabaseProviderException(Throwable t) {
+        super(t);
+    }    
+}

Modified: roller/branches/roller_guice/tools/roller-core/roller-core.jar
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/tools/roller-core/roller-core.jar?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
Binary files - no diff available.

Modified: roller/branches/roller_guice/tools/roller-planet/roller-planet-business.jar
URL: http://svn.apache.org/viewvc/roller/branches/roller_guice/tools/roller-planet/roller-planet-business.jar?view=diff&rev=544141&r1=544140&r2=544141
==============================================================================
Binary files - no diff available.