Author: norman
Date: Thu Dec 17 08:52:27 2009
New Revision: 891586
URL: http://svn.apache.org/viewvc?rev=891586&view=rev
Log:
Revet OSGI work because this broke trunk and just need some more thoughts.....
sorry
Removed:
james/server/trunk/avalon-socket-library/src/main/java/org/apache/james/socket/SimpleConnectionManagerModule.java
james/server/trunk/management-library/src/main/java/org/apache/james/management/impl/BayesianAnalyzerManagementModule.java
james/server/trunk/management-library/src/main/java/org/apache/james/management/impl/DomainListManagementModule.java
james/server/trunk/management-library/src/main/java/org/apache/james/management/impl/ProcessorManagementModule.java
james/server/trunk/management-library/src/main/java/org/apache/james/management/impl/SpoolManagementModule.java
james/server/trunk/management-library/src/main/java/org/apache/james/osgi/
james/server/trunk/osgi-deployment/
james/server/trunk/phoenix-deployment/src/test/org/apache/james/AvalonJamesTest.java
james/server/trunk/user-library/src/main/java/org/apache/james/impl/jamesuser/LocalJamesUsersRepositoryModule.java
james/server/trunk/user-library/src/main/java/org/apache/james/impl/user/LocalUsersRepositoryModule.java
james/server/trunk/user-library/src/main/java/org/apache/james/impl/user/UserManagementModule.java
james/server/trunk/user-library/src/main/java/org/apache/james/osgi/
Modified:
james/server/trunk/avalon-socket-library/src/main/java/org/apache/james/socket/AvalonSimpleConnectionManager.java
james/server/trunk/imapserver-function/src/main/java/org/apache/james/user/impl/file/FileUserMetaDataService.java
(props changed)
james/server/trunk/management-library/pom.xml
james/server/trunk/management-library/src/main/java/org/apache/james/management/impl/AvalonBayesianAnalyzerManagement.java
james/server/trunk/management-library/src/main/java/org/apache/james/management/impl/AvalonDomainListManagement.java
james/server/trunk/management-library/src/main/java/org/apache/james/management/impl/AvalonProcessorManagement.java
james/server/trunk/management-library/src/main/java/org/apache/james/management/impl/AvalonSpoolManagement.java
james/server/trunk/pom.xml
james/server/trunk/stage/pom.xml
james/server/trunk/user-library/pom.xml
james/server/trunk/user-library/src/main/java/org/apache/james/impl/jamesuser/AvalonLocalJamesUsersRepository.java
james/server/trunk/user-library/src/main/java/org/apache/james/impl/user/AvalonLocalUsersRepository.java
james/server/trunk/user-library/src/main/java/org/apache/james/impl/user/AvalonUserManagement.java
Modified:
james/server/trunk/avalon-socket-library/src/main/java/org/apache/james/socket/AvalonSimpleConnectionManager.java
URL:
http://svn.apache.org/viewvc/james/server/trunk/avalon-socket-library/src/main/java/org/apache/james/socket/AvalonSimpleConnectionManager.java?rev=891586&r1=891585&r2=891586&view=diff
==============================================================================
---
james/server/trunk/avalon-socket-library/src/main/java/org/apache/james/socket/AvalonSimpleConnectionManager.java
(original)
+++
james/server/trunk/avalon-socket-library/src/main/java/org/apache/james/socket/AvalonSimpleConnectionManager.java
Thu Dec 17 08:52:27 2009
@@ -36,9 +36,11 @@
import org.apache.excalibur.thread.ThreadPool;
import org.apache.james.bridge.GuiceInjected;
import org.apache.james.util.ConfigurationAdapter;
+import org.guiceyfruit.jsr250.Jsr250Module;
import com.google.inject.AbstractModule;
import com.google.inject.Guice;
+import com.google.inject.name.Names;
public class AvalonSimpleConnectionManager implements LogEnabled,
Initializable, GuiceInjected, Serviceable, Configurable, JamesConnectionManager
{
@@ -118,13 +120,13 @@
public void initialize() throws Exception {
- manager = Guice.createInjector(new SimpleConnectionManagerModule() ,
new AbstractModule() {
+ manager = Guice.createInjector(new Jsr250Module() , new
AbstractModule() {
@Override
protected void configure() {
- bind(ThreadManager.class).toInstance(threadManager);
-
bind(org.apache.commons.configuration.HierarchicalConfiguration.class).toInstance(config);
- bind(Log.class).toInstance(logger);
+
bind(ThreadManager.class).annotatedWith(Names.named("org.apache.avalon.cornerstone.services.threads.ThreadManager")).toInstance(threadManager);
+
bind(org.apache.commons.configuration.HierarchicalConfiguration.class).annotatedWith(Names.named("org.apache.commons.configuration.Configuration")).toInstance(config);
+
bind(Log.class).annotatedWith(Names.named("org.apache.commons.logging.Log")).toInstance(logger);
}
}).getInstance(SimpleConnectionManager.class);
Propchange:
james/server/trunk/imapserver-function/src/main/java/org/apache/james/user/impl/file/FileUserMetaDataService.java
('svn:mergeinfo' removed)
Modified: james/server/trunk/management-library/pom.xml
URL:
http://svn.apache.org/viewvc/james/server/trunk/management-library/pom.xml?rev=891586&r1=891585&r2=891586&view=diff
==============================================================================
--- james/server/trunk/management-library/pom.xml (original)
+++ james/server/trunk/management-library/pom.xml Thu Dec 17 08:52:27 2009
@@ -27,40 +27,6 @@
<groupId>org.apache.james</groupId>
<artifactId>james-server-management-library</artifactId>
<name>Apache JAMES Server Management Library</name>
-
- <build>
- <plugins>
- <plugin>
- <artifactId>maven-jar-plugin</artifactId>
- <configuration>
- <archive>
-
<manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
- </archive>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.apache.felix</groupId>
- <artifactId>maven-bundle-plugin</artifactId>
- <executions>
- <execution>
- <id>bundle-manifest</id>
- <phase>process-classes</phase>
- <goals>
- <goal>manifest</goal>
- </goals>
- </execution>
- </executions>
- <configuration>
- <instructions>
-
<Export-Package>org.apache.james.management,org.apache.james.management.*</Export-Package>
- <Private-Package>org.apache.james.*</Private-Package>
-
<Bundle-Activator>org.apache.james.osgi.ManagementLibraryActivator</Bundle-Activator>
- </instructions>
- </configuration>
- </plugin>
- </plugins>
- </build>
-
<dependencies>
<dependency>
@@ -151,13 +117,5 @@
<artifactId>spring-aopalliance</artifactId>
<scope>runtime</scope>
</dependency>
- <dependency>
- <groupId>org.ops4j</groupId>
- <artifactId>peaberry</artifactId>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi</artifactId>
- </dependency>
</dependencies>
</project>
Modified:
james/server/trunk/management-library/src/main/java/org/apache/james/management/impl/AvalonBayesianAnalyzerManagement.java
URL:
http://svn.apache.org/viewvc/james/server/trunk/management-library/src/main/java/org/apache/james/management/impl/AvalonBayesianAnalyzerManagement.java?rev=891586&r1=891585&r2=891586&view=diff
==============================================================================
---
james/server/trunk/management-library/src/main/java/org/apache/james/management/impl/AvalonBayesianAnalyzerManagement.java
(original)
+++
james/server/trunk/management-library/src/main/java/org/apache/james/management/impl/AvalonBayesianAnalyzerManagement.java
Thu Dec 17 08:52:27 2009
@@ -39,8 +39,11 @@
import org.apache.james.util.ConfigurationAdapter;
import org.apache.james.bridge.GuiceInjected;
+import org.guiceyfruit.jsr250.Jsr250Module;
+
import com.google.inject.AbstractModule;
import com.google.inject.Guice;
+import com.google.inject.name.Names;
public class AvalonBayesianAnalyzerManagement implements GuiceInjected,
BayesianAnalyzerManagementMBean, BayesianAnalyzerManagementService,
Serviceable, Initializable, Configurable, LogEnabled{
@@ -56,14 +59,14 @@
}
public void initialize() throws Exception {
- mgmt = Guice.createInjector( new BayesianAnalyzerManagementModule(),
new AbstractModule() {
+ mgmt = Guice.createInjector(new Jsr250Module(), new AbstractModule() {
@Override
protected void configure() {
-
bind(org.apache.commons.configuration.HierarchicalConfiguration.class).toInstance(config);
- bind(Log.class).toInstance(logger);
- bind(FileSystem.class).toInstance(fs);
- bind(DataSourceSelector.class).toInstance(selector);
+
bind(org.apache.commons.configuration.HierarchicalConfiguration.class).annotatedWith(Names.named("org.apache.commons.configuration.Configuration")).toInstance(config);
+
bind(Log.class).annotatedWith(Names.named("org.apache.commons.logging.Log")).toInstance(logger);
+
bind(FileSystem.class).annotatedWith(Names.named("org.apache.james.services.FileSystem")).toInstance(fs);
+
bind(DataSourceSelector.class).annotatedWith(Names.named("org.apache.avalon.cornerstone.services.datasources.DataSourceSelector")).toInstance(selector);
}
Modified:
james/server/trunk/management-library/src/main/java/org/apache/james/management/impl/AvalonDomainListManagement.java
URL:
http://svn.apache.org/viewvc/james/server/trunk/management-library/src/main/java/org/apache/james/management/impl/AvalonDomainListManagement.java?rev=891586&r1=891585&r2=891586&view=diff
==============================================================================
---
james/server/trunk/management-library/src/main/java/org/apache/james/management/impl/AvalonDomainListManagement.java
(original)
+++
james/server/trunk/management-library/src/main/java/org/apache/james/management/impl/AvalonDomainListManagement.java
Thu Dec 17 08:52:27 2009
@@ -23,17 +23,26 @@
import java.util.List;
import org.apache.avalon.framework.activity.Initializable;
+import org.apache.avalon.framework.configuration.Configurable;
+import org.apache.avalon.framework.configuration.Configuration;
+import org.apache.avalon.framework.configuration.ConfigurationException;
+import org.apache.avalon.framework.logger.LogEnabled;
+import org.apache.avalon.framework.logger.Logger;
import org.apache.avalon.framework.service.ServiceException;
import org.apache.avalon.framework.service.ServiceManager;
import org.apache.avalon.framework.service.Serviceable;
import org.apache.james.api.domainlist.DomainList;
-import org.apache.james.bridge.GuiceInjected;
import org.apache.james.management.DomainListManagementException;
import org.apache.james.management.DomainListManagementMBean;
import org.apache.james.management.DomainListManagementService;
+import org.apache.james.bridge.GuiceInjected;
+
+import org.guiceyfruit.jsr250.Jsr250Module;
import com.google.inject.AbstractModule;
import com.google.inject.Guice;
+import com.google.inject.name.Named;
+import com.google.inject.name.Names;
public class AvalonDomainListManagement implements GuiceInjected,
DomainListManagementService,DomainListManagementMBean, Serviceable,
Initializable {
private DomainList dList;
@@ -43,11 +52,11 @@
}
public void initialize() throws Exception {
- mgmt = Guice.createInjector(new DomainListManagementModule(), new
AbstractModule() {
+ mgmt = Guice.createInjector(new Jsr250Module(), new AbstractModule() {
@Override
protected void configure() {
- bind(DomainList.class).toInstance(dList);
+
bind(DomainList.class).annotatedWith(Names.named("org.apache.james.api.domainlist.DomainList")).toInstance(dList);
}
}).getInstance(DomainListManagement.class);
Modified:
james/server/trunk/management-library/src/main/java/org/apache/james/management/impl/AvalonProcessorManagement.java
URL:
http://svn.apache.org/viewvc/james/server/trunk/management-library/src/main/java/org/apache/james/management/impl/AvalonProcessorManagement.java?rev=891586&r1=891585&r2=891586&view=diff
==============================================================================
---
james/server/trunk/management-library/src/main/java/org/apache/james/management/impl/AvalonProcessorManagement.java
(original)
+++
james/server/trunk/management-library/src/main/java/org/apache/james/management/impl/AvalonProcessorManagement.java
Thu Dec 17 08:52:27 2009
@@ -22,13 +22,16 @@
import org.apache.avalon.framework.service.ServiceException;
import org.apache.avalon.framework.service.ServiceManager;
import org.apache.avalon.framework.service.Serviceable;
-import org.apache.james.bridge.GuiceInjected;
import org.apache.james.management.ProcessorManagementMBean;
import org.apache.james.management.ProcessorManagementService;
import org.apache.james.services.SpoolManager;
+import org.apache.james.bridge.GuiceInjected;
+
+import org.guiceyfruit.jsr250.Jsr250Module;
import com.google.inject.AbstractModule;
import com.google.inject.Guice;
+import com.google.inject.name.Names;
public class AvalonProcessorManagement implements GuiceInjected, Serviceable,
Initializable, ProcessorManagementService, ProcessorManagementMBean {
@@ -41,11 +44,11 @@
}
public void initialize() throws Exception {
- mgmt = Guice.createInjector(new ProcessorManagementModule(), new
AbstractModule() {
+ mgmt = Guice.createInjector(new Jsr250Module(), new AbstractModule() {
@Override
protected void configure() {
- bind(SpoolManager.class).toInstance(smanager);
+
bind(SpoolManager.class).annotatedWith(Names.named("org.apache.james.services.SpoolManager")).toInstance(smanager);
}
}).getInstance(ProcessorManagement.class);
Modified:
james/server/trunk/management-library/src/main/java/org/apache/james/management/impl/AvalonSpoolManagement.java
URL:
http://svn.apache.org/viewvc/james/server/trunk/management-library/src/main/java/org/apache/james/management/impl/AvalonSpoolManagement.java?rev=891586&r1=891585&r2=891586&view=diff
==============================================================================
---
james/server/trunk/management-library/src/main/java/org/apache/james/management/impl/AvalonSpoolManagement.java
(original)
+++
james/server/trunk/management-library/src/main/java/org/apache/james/management/impl/AvalonSpoolManagement.java
Thu Dec 17 08:52:27 2009
@@ -28,14 +28,16 @@
import org.apache.avalon.framework.service.ServiceException;
import org.apache.avalon.framework.service.ServiceManager;
import org.apache.avalon.framework.service.Serviceable;
-import org.apache.james.bridge.GuiceInjected;
import org.apache.james.management.SpoolFilter;
import org.apache.james.management.SpoolManagementException;
import org.apache.james.management.SpoolManagementMBean;
import org.apache.james.management.SpoolManagementService;
+import org.apache.james.bridge.GuiceInjected;
+import org.guiceyfruit.jsr250.Jsr250Module;
import com.google.inject.AbstractModule;
import com.google.inject.Guice;
+import com.google.inject.name.Names;
public class AvalonSpoolManagement implements GuiceInjected, Serviceable,
Initializable, SpoolManagementService, SpoolManagementMBean{
@@ -79,11 +81,11 @@
}
public void initialize() throws Exception {
- mgmt = Guice.createInjector(new SpoolManagementModule(), new
AbstractModule() {
+ mgmt = Guice.createInjector(new Jsr250Module(), new AbstractModule() {
@Override
protected void configure() {
- bind(Store.class).toInstance(mailStore);
+
bind(Store.class).annotatedWith(Names.named("org.apache.avalon.cornerstone.services.store.Store")).toInstance(mailStore);
}
}).getInstance(SpoolManagement.class);
Modified: james/server/trunk/pom.xml
URL:
http://svn.apache.org/viewvc/james/server/trunk/pom.xml?rev=891586&r1=891585&r2=891586&view=diff
==============================================================================
--- james/server/trunk/pom.xml (original)
+++ james/server/trunk/pom.xml Thu Dec 17 08:52:27 2009
@@ -82,10 +82,6 @@
</scm>
<build>
<plugins>
- <plugin>
- <groupId>org.apache.felix</groupId>
- <artifactId>maven-bundle-plugin</artifactId>
- </plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
@@ -184,22 +180,7 @@
</snapshots>
</repository>
-->
- <!-- enable central that is otherwise disabled by the parent pom. -->
- <repository>
- <id>central</id>
- <url>http://repo1.maven.org/maven2</url>
- <releases>
- <enabled>true</enabled>
- </releases>
- </repository>
</repositories>
- <dependencies>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi</artifactId>
- <version>3.0.0</version>
- </dependency>
- </dependencies>
<reporting>
<plugins>
<!--
@@ -1169,26 +1150,11 @@
<version>2.0</version>
</dependency>
<dependency>
- <groupId>javax.annotation</groupId>
- <artifactId>jsr250-api</artifactId>
- <version>1.0</version>
- </dependency>
- <dependency>
<groupId>spring-aopalliance</groupId>
<artifactId>spring-aopalliance</artifactId>
<version>1.0</version>
<scope>runtime</scope>
</dependency>
- <dependency>
- <groupId>org.ops4j</groupId>
- <artifactId>peaberry</artifactId>
- <version>1.1.1</version>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi</artifactId>
- <version>3.0.0</version>
- </dependency>
</dependencies>
</dependencyManagement>
Modified: james/server/trunk/stage/pom.xml
URL:
http://svn.apache.org/viewvc/james/server/trunk/stage/pom.xml?rev=891586&r1=891585&r2=891586&view=diff
==============================================================================
--- james/server/trunk/stage/pom.xml (original)
+++ james/server/trunk/stage/pom.xml Thu Dec 17 08:52:27 2009
@@ -400,18 +400,10 @@
<artifactId>guiceyfruit-core</artifactId>
</dependency>
<dependency>
- <groupId>javax.annotation</groupId>
- <artifactId>jsr250-api</artifactId>
- </dependency>
- <dependency>
<groupId>spring-aopalliance</groupId>
<artifactId>spring-aopalliance</artifactId>
<scope>runtime</scope>
</dependency>
- <dependency>
- <groupId>org.ops4j</groupId>
- <artifactId>peaberry</artifactId>
- </dependency>
</dependencies>
<build>
Modified: james/server/trunk/user-library/pom.xml
URL:
http://svn.apache.org/viewvc/james/server/trunk/user-library/pom.xml?rev=891586&r1=891585&r2=891586&view=diff
==============================================================================
--- james/server/trunk/user-library/pom.xml (original)
+++ james/server/trunk/user-library/pom.xml Thu Dec 17 08:52:27 2009
@@ -28,41 +28,6 @@
<artifactId>james-server-user-library</artifactId>
<version>3.0-M1</version>
<name>Apache JAMES Server User Library</name>
-
- <build>
- <plugins>
- <plugin>
- <artifactId>maven-jar-plugin</artifactId>
- <configuration>
- <archive>
-
<manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
- </archive>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.apache.felix</groupId>
- <artifactId>maven-bundle-plugin</artifactId>
- <executions>
- <execution>
- <id>bundle-manifest</id>
- <phase>process-classes</phase>
- <goals>
- <goal>manifest</goal>
- </goals>
- </execution>
- </executions>
- <configuration>
- <instructions>
-
<Export-Package>org.apache.james.impl.jamesuser,org.apache.james.impl.user</Export-Package>
- <Private-Package>org.apache.james.*</Private-Package>
-
<Bundle-Activator>org.apache.james.osgi.UsersLibraryActivator</Bundle-Activator>
- </instructions>
- </configuration>
- </plugin>
- </plugins>
- </build>
-
-
<dependencies>
<dependency>
<groupId>org.apache.james</groupId>
@@ -102,14 +67,7 @@
<artifactId>spring-aopalliance</artifactId>
<scope>runtime</scope>
</dependency>
- <dependency>
- <groupId>org.ops4j</groupId>
- <artifactId>peaberry</artifactId>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi</artifactId>
- </dependency>
+
<dependency>
<groupId>oro</groupId>
<artifactId>oro</artifactId>
Modified:
james/server/trunk/user-library/src/main/java/org/apache/james/impl/jamesuser/AvalonLocalJamesUsersRepository.java
URL:
http://svn.apache.org/viewvc/james/server/trunk/user-library/src/main/java/org/apache/james/impl/jamesuser/AvalonLocalJamesUsersRepository.java?rev=891586&r1=891585&r2=891586&view=diff
==============================================================================
---
james/server/trunk/user-library/src/main/java/org/apache/james/impl/jamesuser/AvalonLocalJamesUsersRepository.java
(original)
+++
james/server/trunk/user-library/src/main/java/org/apache/james/impl/jamesuser/AvalonLocalJamesUsersRepository.java
Thu Dec 17 08:52:27 2009
@@ -21,24 +21,16 @@
import java.util.Collection;
-import org.apache.james.api.user.UsersStore;
import org.apache.james.api.vut.ErrorMappingException;
import org.apache.james.impl.user.AvalonLocalUsersRepository;
+import org.guiceyfruit.jsr250.Jsr250Module;
-import com.google.inject.AbstractModule;
import com.google.inject.Guice;
public class AvalonLocalJamesUsersRepository extends
AvalonLocalUsersRepository implements JamesUsersRepository{
public void initialize() throws Exception {
- repos = Guice.createInjector(new LocalJamesUsersRepositoryModule(),
new AbstractModule() {
-
- @Override
- protected void configure() {
- bind(UsersStore.class).toInstance(usersStore);
- }
-
- }).getInstance(LocalJamesUsersRepository.class);
+ repos = Guice.createInjector(new Jsr250Module(), new
LocalUsersRepositoryModule()).getInstance(LocalJamesUsersRepository.class);
}
public void setEnableAliases(boolean enableAliases) {
Modified:
james/server/trunk/user-library/src/main/java/org/apache/james/impl/user/AvalonLocalUsersRepository.java
URL:
http://svn.apache.org/viewvc/james/server/trunk/user-library/src/main/java/org/apache/james/impl/user/AvalonLocalUsersRepository.java?rev=891586&r1=891585&r2=891586&view=diff
==============================================================================
---
james/server/trunk/user-library/src/main/java/org/apache/james/impl/user/AvalonLocalUsersRepository.java
(original)
+++
james/server/trunk/user-library/src/main/java/org/apache/james/impl/user/AvalonLocalUsersRepository.java
Thu Dec 17 08:52:27 2009
@@ -28,30 +28,34 @@
import org.apache.james.api.user.UsersRepository;
import org.apache.james.api.user.UsersStore;
import org.apache.james.bridge.GuiceInjected;
+import org.guiceyfruit.jsr250.Jsr250Module;
import com.google.inject.AbstractModule;
import com.google.inject.Guice;
+import com.google.inject.name.Names;
public class AvalonLocalUsersRepository implements GuiceInjected,
Initializable,Serviceable,UsersRepository{
- protected UsersStore usersStore;
+ private UsersStore usersStore;
protected LocalUsersRepository repos;
public void initialize() throws Exception {
- repos = Guice.createInjector(new LocalUsersRepositoryModule(), new
AbstractModule() {
-
- @Override
- protected void configure() {
- bind(UsersStore.class).toInstance(usersStore);
- }
-
- }).getInstance(LocalUsersRepository.class);
+ repos = Guice.createInjector(new Jsr250Module(), new
LocalUsersRepositoryModule()).getInstance(LocalUsersRepository.class);
}
public void service(ServiceManager manager) throws ServiceException {
usersStore = (UsersStore) manager.lookup(UsersStore.ROLE);
}
+ public class LocalUsersRepositoryModule extends AbstractModule {
+
+ @Override
+ protected void configure() {
+
bind(UsersStore.class).annotatedWith(Names.named("org.apache.james.api.user.UsersStore")).toInstance(usersStore);
+ }
+
+ }
+
public boolean addUser(User user) {
return repos.addUser(user);
}
Modified:
james/server/trunk/user-library/src/main/java/org/apache/james/impl/user/AvalonUserManagement.java
URL:
http://svn.apache.org/viewvc/james/server/trunk/user-library/src/main/java/org/apache/james/impl/user/AvalonUserManagement.java?rev=891586&r1=891585&r2=891586&view=diff
==============================================================================
---
james/server/trunk/user-library/src/main/java/org/apache/james/impl/user/AvalonUserManagement.java
(original)
+++
james/server/trunk/user-library/src/main/java/org/apache/james/impl/user/AvalonUserManagement.java
Thu Dec 17 08:52:27 2009
@@ -29,10 +29,11 @@
import org.apache.james.api.user.management.UserManagementException;
import org.apache.james.api.user.management.UserManagementMBean;
import org.apache.james.bridge.GuiceInjected;
+import org.guiceyfruit.jsr250.Jsr250Module;
import com.google.inject.AbstractModule;
import com.google.inject.Guice;
-
+import com.google.inject.name.Names;
public class AvalonUserManagement implements UserManagementMBean,
GuiceInjected, Serviceable, Initializable {
@@ -98,16 +99,17 @@
}
public void initialize() throws Exception {
- bean = Guice.createInjector(new UserManagementModule(), new
AbstractModule() {
-
- @Override
- protected void configure() {
- bind(UsersStore.class).toInstance(store);
- bind(UsersRepository.class).toInstance(repos);
- }
- }).getInstance(UserManagement.class);
+ bean = Guice.createInjector(new Jsr250Module(), new
UserManagementModule()).getInstance(UserManagement.class);
}
-
+ private class UserManagementModule extends AbstractModule {
+
+ @Override
+ protected void configure() {
+
bind(UsersStore.class).annotatedWith(Names.named("org.apache.james.api.user.UsersStore")).toInstance(store);
+
bind(UsersRepository.class).annotatedWith(Names.named("org.apache.james.api.user.UsersRepository")).toInstance(repos);
+ }
+
+ }
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]