Modified: 
cayenne/main/trunk/cayenne-server/src/test/java/org/apache/cayenne/resource/ClassLoaderResourceLocatorTest.java
URL: 
http://svn.apache.org/viewvc/cayenne/main/trunk/cayenne-server/src/test/java/org/apache/cayenne/resource/ClassLoaderResourceLocatorTest.java?rev=1545007&r1=1545006&r2=1545007&view=diff
==============================================================================
--- 
cayenne/main/trunk/cayenne-server/src/test/java/org/apache/cayenne/resource/ClassLoaderResourceLocatorTest.java
 (original)
+++ 
cayenne/main/trunk/cayenne-server/src/test/java/org/apache/cayenne/resource/ClassLoaderResourceLocatorTest.java
 Sun Nov 24 16:05:53 2013
@@ -22,12 +22,12 @@ import java.util.Collection;
 
 import junit.framework.TestCase;
 
-import org.apache.cayenne.di.spi.DefaultAdhocObjectFactory;
+import org.apache.cayenne.di.spi.DefaultClassLoaderManager;
 
 public class ClassLoaderResourceLocatorTest extends TestCase {
 
     public void testFindResources() {
-        ClassLoaderResourceLocator locator = new 
ClassLoaderResourceLocator(new DefaultAdhocObjectFactory());
+        ClassLoaderResourceLocator locator = new 
ClassLoaderResourceLocator(new DefaultClassLoaderManager());
 
         Collection<Resource> resources = locator
                 
.findResources("org/apache/cayenne/resource/ClassLoaderResourceLocatorTest.class");

Modified: 
cayenne/main/trunk/cayenne-server/src/test/java/org/apache/cayenne/unit/di/server/ServerCaseModule.java
URL: 
http://svn.apache.org/viewvc/cayenne/main/trunk/cayenne-server/src/test/java/org/apache/cayenne/unit/di/server/ServerCaseModule.java?rev=1545007&r1=1545006&r2=1545007&view=diff
==============================================================================
--- 
cayenne/main/trunk/cayenne-server/src/test/java/org/apache/cayenne/unit/di/server/ServerCaseModule.java
 (original)
+++ 
cayenne/main/trunk/cayenne-server/src/test/java/org/apache/cayenne/unit/di/server/ServerCaseModule.java
 Sun Nov 24 16:05:53 2013
@@ -72,8 +72,10 @@ import org.apache.cayenne.dba.sqlserver.
 import org.apache.cayenne.dba.sybase.SybaseAdapter;
 import org.apache.cayenne.di.AdhocObjectFactory;
 import org.apache.cayenne.di.Binder;
+import org.apache.cayenne.di.ClassLoaderManager;
 import org.apache.cayenne.di.Module;
 import org.apache.cayenne.di.spi.DefaultAdhocObjectFactory;
+import org.apache.cayenne.di.spi.DefaultClassLoaderManager;
 import org.apache.cayenne.di.spi.DefaultScope;
 import org.apache.cayenne.log.CommonsJdbcEventLogger;
 import org.apache.cayenne.log.JdbcEventLogger;
@@ -202,6 +204,7 @@ public class ServerCaseModule implements
                 SQLTemplateCustomizerProvider.class);
         binder.bind(ServerCaseDataSourceFactory.class).to(
                 ServerCaseDataSourceFactory.class);
+        
binder.bind(ClassLoaderManager.class).to(DefaultClassLoaderManager.class);
         
binder.bind(AdhocObjectFactory.class).to(DefaultAdhocObjectFactory.class);
         
binder.bind(ResourceLocator.class).to(ClassLoaderResourceLocator.class);
         
binder.bind(ObjectStoreFactory.class).to(DefaultObjectStoreFactory.class);

Modified: 
cayenne/main/trunk/cayenne-tools/src/main/java/org/apache/cayenne/tools/configuration/ToolsModule.java
URL: 
http://svn.apache.org/viewvc/cayenne/main/trunk/cayenne-tools/src/main/java/org/apache/cayenne/tools/configuration/ToolsModule.java?rev=1545007&r1=1545006&r2=1545007&view=diff
==============================================================================
--- 
cayenne/main/trunk/cayenne-tools/src/main/java/org/apache/cayenne/tools/configuration/ToolsModule.java
 (original)
+++ 
cayenne/main/trunk/cayenne-tools/src/main/java/org/apache/cayenne/tools/configuration/ToolsModule.java
 Sun Nov 24 16:05:53 2013
@@ -28,6 +28,7 @@ import org.apache.cayenne.configuration.
 import org.apache.cayenne.configuration.server.DefaultDbAdapterFactory;
 import org.apache.cayenne.dba.db2.DB2Sniffer;
 import org.apache.cayenne.dba.derby.DerbySniffer;
+import org.apache.cayenne.dba.firebird.FirebirdSniffer;
 import org.apache.cayenne.dba.frontbase.FrontBaseSniffer;
 import org.apache.cayenne.dba.h2.H2Sniffer;
 import org.apache.cayenne.dba.hsqldb.HSQLDBSniffer;
@@ -41,8 +42,10 @@ import org.apache.cayenne.dba.sqlserver.
 import org.apache.cayenne.dba.sybase.SybaseSniffer;
 import org.apache.cayenne.di.AdhocObjectFactory;
 import org.apache.cayenne.di.Binder;
+import org.apache.cayenne.di.ClassLoaderManager;
 import org.apache.cayenne.di.Module;
 import org.apache.cayenne.di.spi.DefaultAdhocObjectFactory;
+import org.apache.cayenne.di.spi.DefaultClassLoaderManager;
 import org.apache.cayenne.log.CommonsJdbcEventLogger;
 import org.apache.cayenne.log.JdbcEventLogger;
 import org.apache.cayenne.resource.ClassLoaderResourceLocator;
@@ -79,8 +82,8 @@ public class ToolsModule implements Modu
         binder.bindList(Constants.SERVER_USER_TYPES_LIST);
         binder.bindList(Constants.SERVER_TYPE_FACTORIES_LIST);
 
-        AdhocObjectFactory objectFactory = new DefaultAdhocObjectFactory();
-        binder.bind(AdhocObjectFactory.class).toInstance(objectFactory);
+        
binder.bind(ClassLoaderManager.class).to(DefaultClassLoaderManager.class);
+        
binder.bind(AdhocObjectFactory.class).to(DefaultAdhocObjectFactory.class);
         
binder.bind(ResourceLocator.class).to(ClassLoaderResourceLocator.class);
 
         
binder.bind(RuntimeProperties.class).to(DefaultRuntimeProperties.class);
@@ -89,18 +92,31 @@ public class ToolsModule implements Modu
 
         // TODO: this is cloned from ServerModule... figure out how to reuse
         // this list
-        binder.bindList(Constants.SERVER_ADAPTER_DETECTORS_LIST).add(new 
OpenBaseSniffer(objectFactory))
-                .add(new FrontBaseSniffer(objectFactory)).add(new 
IngresSniffer(objectFactory))
-                .add(new SQLiteSniffer(objectFactory)).add(new 
DB2Sniffer(objectFactory))
-                .add(new H2Sniffer(objectFactory)).add(new 
HSQLDBSniffer(objectFactory))
-                .add(new SybaseSniffer(objectFactory)).add(new 
DerbySniffer(objectFactory))
-                .add(new SQLServerSniffer(objectFactory)).add(new 
OracleSniffer(objectFactory))
-                .add(new PostgresSniffer(objectFactory)).add(new 
MySQLSniffer(objectFactory));
+        // a bit ugly - need to bind all sniffers explicitly first before
+        // placing then in a list
+        binder.bind(FirebirdSniffer.class).to(FirebirdSniffer.class);
+        binder.bind(OpenBaseSniffer.class).to(OpenBaseSniffer.class);
+        binder.bind(FrontBaseSniffer.class).to(FrontBaseSniffer.class);
+        binder.bind(IngresSniffer.class).to(IngresSniffer.class);
+        binder.bind(SQLiteSniffer.class).to(SQLiteSniffer.class);
+        binder.bind(DB2Sniffer.class).to(DB2Sniffer.class);
+        binder.bind(H2Sniffer.class).to(H2Sniffer.class);
+        binder.bind(HSQLDBSniffer.class).to(HSQLDBSniffer.class);
+        binder.bind(SybaseSniffer.class).to(SybaseSniffer.class);
+        binder.bind(DerbySniffer.class).to(DerbySniffer.class);
+        binder.bind(SQLServerSniffer.class).to(SQLServerSniffer.class);
+        binder.bind(OracleSniffer.class).to(OracleSniffer.class);
+        binder.bind(PostgresSniffer.class).to(PostgresSniffer.class);
+        binder.bind(MySQLSniffer.class).to(MySQLSniffer.class);
+
+        
binder.bindList(Constants.SERVER_ADAPTER_DETECTORS_LIST).add(FirebirdSniffer.class).add(OpenBaseSniffer.class)
+                
.add(FrontBaseSniffer.class).add(IngresSniffer.class).add(SQLiteSniffer.class).add(DB2Sniffer.class)
+                
.add(H2Sniffer.class).add(HSQLDBSniffer.class).add(SybaseSniffer.class).add(DerbySniffer.class)
+                
.add(SQLServerSniffer.class).add(OracleSniffer.class).add(PostgresSniffer.class)
+                .add(MySQLSniffer.class);
 
         binder.bind(DbAdapterFactory.class).to(DefaultDbAdapterFactory.class);
-
         binder.bind(DataSourceFactory.class).to(DriverDataSourceFactory.class);
-
     }
 
 }


Reply via email to