You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by aa...@apache.org on 2013/11/24 16:18:07 UTC

svn commit: r1544993 - /cayenne/main/trunk/cayenne-server/src/main/java/org/apache/cayenne/configuration/server/ServerModule.java

Author: aadamchik
Date: Sun Nov 24 15:18:06 2013
New Revision: 1544993

URL: http://svn.apache.org/r1544993
Log:
CAY-1882 Porting to OSGi environment

making sure overdidden AOF is still injected everywhere

Modified:
    cayenne/main/trunk/cayenne-server/src/main/java/org/apache/cayenne/configuration/server/ServerModule.java

Modified: cayenne/main/trunk/cayenne-server/src/main/java/org/apache/cayenne/configuration/server/ServerModule.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/cayenne-server/src/main/java/org/apache/cayenne/configuration/server/ServerModule.java?rev=1544993&r1=1544992&r2=1544993&view=diff
==============================================================================
--- cayenne/main/trunk/cayenne-server/src/main/java/org/apache/cayenne/configuration/server/ServerModule.java (original)
+++ cayenne/main/trunk/cayenne-server/src/main/java/org/apache/cayenne/configuration/server/ServerModule.java Sun Nov 24 15:18:06 2013
@@ -80,6 +80,7 @@ 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.Key;
 import org.apache.cayenne.di.ListBuilder;
 import org.apache.cayenne.di.Module;
 import org.apache.cayenne.di.spi.DefaultAdhocObjectFactory;
@@ -127,29 +128,43 @@ public class ServerModule implements Mod
         binder.bindMap(Constants.PROPERTIES_MAP)
             .put(Constants.SERVER_MAX_ID_QUALIFIER_SIZE_PROPERTY, String.valueOf(DEFAULT_MAX_ID_QUALIFIER_SIZE));
 
-        binder.bind(JdbcEventLogger.class).to(CommonsJdbcEventLogger.class);
-        
-        AdhocObjectFactory objectFactory = new DefaultAdhocObjectFactory();
-        binder.bind(AdhocObjectFactory.class).toInstance(objectFactory);
+        binder.bind(JdbcEventLogger.class).to(CommonsJdbcEventLogger.class);        
+        binder.bind(AdhocObjectFactory.class).to(DefaultAdhocObjectFactory.class);
 
         // configure known DbAdapter detectors in reverse order of popularity. Users can
         // add their own to install custom adapters automatically
-        binder
-                .bindList(Constants.SERVER_ADAPTER_DETECTORS_LIST)
-                .add(new FirebirdSniffer(objectFactory))
-                .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);
 
         // configure an empty filter chain
         binder.bindList(Constants.SERVER_DOMAIN_FILTERS_LIST);