You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by ma...@apache.org on 2015/11/03 17:47:33 UTC
svn commit: r1712330 - in /james/project/trunk/server:
container/cassandra-guice/src/main/java/org/apache/james/
container/cassandra-guice/src/main/java/org/apache/james/modules/server/
protocols/protocols-library/src/main/java/org/apache/james/protoco...
Author: matthieu
Date: Tue Nov 3 16:47:33 2015
New Revision: 1712330
URL: http://svn.apache.org/viewvc?rev=1712330&view=rev
Log:
JAMES-1626 Use Onami for lifecycle management (JSR 250 @PreDestroy @PostConstruct)
Added:
james/project/trunk/server/container/cassandra-guice/src/main/java/org/apache/james/modules/server/ConfigurationPerformerModule.java
Modified:
james/project/trunk/server/container/cassandra-guice/src/main/java/org/apache/james/CassandraJamesServer.java
james/project/trunk/server/container/cassandra-guice/src/main/java/org/apache/james/CassandraJamesServerMain.java
james/project/trunk/server/protocols/protocols-library/src/main/java/org/apache/james/protocols/lib/jmx/AbstractConnectHandlerResultJMXMonitor.java
james/project/trunk/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/SendMailHandler.java
Modified: james/project/trunk/server/container/cassandra-guice/src/main/java/org/apache/james/CassandraJamesServer.java
URL: http://svn.apache.org/viewvc/james/project/trunk/server/container/cassandra-guice/src/main/java/org/apache/james/CassandraJamesServer.java?rev=1712330&r1=1712329&r2=1712330&view=diff
==============================================================================
--- james/project/trunk/server/container/cassandra-guice/src/main/java/org/apache/james/CassandraJamesServer.java (original)
+++ james/project/trunk/server/container/cassandra-guice/src/main/java/org/apache/james/CassandraJamesServer.java Tue Nov 3 16:47:33 2015
@@ -19,25 +19,30 @@
package org.apache.james;
import org.apache.james.utils.ConfigurationsPerformer;
+import org.apache.onami.lifecycle.jsr250.PreDestroyModule;
import com.google.inject.Guice;
import com.google.inject.Injector;
import com.google.inject.Module;
+import com.google.inject.util.Modules;
public class CassandraJamesServer {
private final Module serverModule;
+ private final PreDestroyModule preDestroyModule;
public CassandraJamesServer(Module serverModule) {
this.serverModule = serverModule;
+ this.preDestroyModule = new PreDestroyModule();
}
public void start() throws Exception {
- Injector injector = Guice.createInjector(serverModule);
+ Injector injector = Guice.createInjector(Modules.combine(serverModule, preDestroyModule));
injector.getInstance(ConfigurationsPerformer.class).initModules();
}
public void stop() {
+ preDestroyModule.getStager().stage();
}
}
Modified: james/project/trunk/server/container/cassandra-guice/src/main/java/org/apache/james/CassandraJamesServerMain.java
URL: http://svn.apache.org/viewvc/james/project/trunk/server/container/cassandra-guice/src/main/java/org/apache/james/CassandraJamesServerMain.java?rev=1712330&r1=1712329&r2=1712330&view=diff
==============================================================================
--- james/project/trunk/server/container/cassandra-guice/src/main/java/org/apache/james/CassandraJamesServerMain.java (original)
+++ james/project/trunk/server/container/cassandra-guice/src/main/java/org/apache/james/CassandraJamesServerMain.java Tue Nov 3 16:47:33 2015
@@ -24,6 +24,7 @@ import org.apache.james.modules.data.Cas
import org.apache.james.modules.data.CassandraUsersRepositoryModule;
import org.apache.james.modules.mailbox.CassandraMailboxModule;
import org.apache.james.modules.mailbox.CassandraSessionModule;
+import org.apache.james.modules.server.ConfigurationPerformerModule;
import org.apache.james.modules.server.DNSServiceModule;
import org.apache.james.modules.server.SimpleMessageSearchModule;
@@ -32,13 +33,15 @@ import com.google.inject.util.Modules;
public class CassandraJamesServerMain {
- public static final Module defaultModule = Modules.combine(new CassandraMailboxModule(),
- new CassandraSessionModule(),
- new SimpleMessageSearchModule(),
- new CassandraUsersRepositoryModule(),
- new CassandraDomainListModule(),
- new CassandraRecipientRewriteTableModule(),
- new DNSServiceModule());
+ public static final Module defaultModule = Modules.combine(
+ new CassandraMailboxModule(),
+ new ConfigurationPerformerModule(),
+ new CassandraSessionModule(),
+ new SimpleMessageSearchModule(),
+ new CassandraUsersRepositoryModule(),
+ new CassandraDomainListModule(),
+ new CassandraRecipientRewriteTableModule(),
+ new DNSServiceModule());
public static void main(String[] args) throws Exception {
CassandraJamesServer server = new CassandraJamesServer(defaultModule);
Added: james/project/trunk/server/container/cassandra-guice/src/main/java/org/apache/james/modules/server/ConfigurationPerformerModule.java
URL: http://svn.apache.org/viewvc/james/project/trunk/server/container/cassandra-guice/src/main/java/org/apache/james/modules/server/ConfigurationPerformerModule.java?rev=1712330&view=auto
==============================================================================
--- james/project/trunk/server/container/cassandra-guice/src/main/java/org/apache/james/modules/server/ConfigurationPerformerModule.java (added)
+++ james/project/trunk/server/container/cassandra-guice/src/main/java/org/apache/james/modules/server/ConfigurationPerformerModule.java Tue Nov 3 16:47:33 2015
@@ -0,0 +1,15 @@
+package org.apache.james.modules.server;
+
+import org.apache.james.utils.ConfigurationPerformer;
+
+import com.google.inject.AbstractModule;
+import com.google.inject.multibindings.Multibinder;
+
+public class ConfigurationPerformerModule extends AbstractModule {
+
+ @Override
+ protected void configure() {
+ Multibinder.newSetBinder(binder(), ConfigurationPerformer.class);
+ }
+
+}
Modified: james/project/trunk/server/protocols/protocols-library/src/main/java/org/apache/james/protocols/lib/jmx/AbstractConnectHandlerResultJMXMonitor.java
URL: http://svn.apache.org/viewvc/james/project/trunk/server/protocols/protocols-library/src/main/java/org/apache/james/protocols/lib/jmx/AbstractConnectHandlerResultJMXMonitor.java?rev=1712330&r1=1712329&r2=1712330&view=diff
==============================================================================
--- james/project/trunk/server/protocols/protocols-library/src/main/java/org/apache/james/protocols/lib/jmx/AbstractConnectHandlerResultJMXMonitor.java (original)
+++ james/project/trunk/server/protocols/protocols-library/src/main/java/org/apache/james/protocols/lib/jmx/AbstractConnectHandlerResultJMXMonitor.java Tue Nov 3 16:47:33 2015
@@ -25,9 +25,13 @@ import java.util.Map;
import org.apache.commons.configuration.Configuration;
import org.apache.commons.configuration.ConfigurationException;
+import org.apache.james.protocols.api.handler.ConnectHandler;
+import org.apache.james.protocols.api.handler.ExtensibleHandler;
+import org.apache.james.protocols.api.handler.ProtocolHandler;
+import org.apache.james.protocols.api.handler.ProtocolHandlerResultHandler;
+import org.apache.james.protocols.api.handler.WiringException;
import org.apache.james.protocols.api.ProtocolSession;
import org.apache.james.protocols.api.Response;
-import org.apache.james.protocols.api.handler.*;
/**
* Handler which will gather statistics for {@link ConnectHandler}'s
Modified: james/project/trunk/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/SendMailHandler.java
URL: http://svn.apache.org/viewvc/james/project/trunk/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/SendMailHandler.java?rev=1712330&r1=1712329&r2=1712330&view=diff
==============================================================================
--- james/project/trunk/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/SendMailHandler.java (original)
+++ james/project/trunk/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/SendMailHandler.java Tue Nov 3 16:47:33 2015
@@ -48,10 +48,6 @@ public class SendMailHandler implements
this.queueFactory = queueFactory;
}
- public void init() {
-
- }
-
@Override
public void init(Configuration config) throws ConfigurationException {
queue = queueFactory.getQueue(MailQueueFactory.SPOOL);
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org