http://git-wip-us.apache.org/repos/asf/james-project/blob/60b1d219/server/container/guice/jpa-smtp/src/test/java/org/apache/james/JPAJamesServerTest.java ---------------------------------------------------------------------- diff --git a/server/container/guice/jpa-smtp/src/test/java/org/apache/james/JPAJamesServerTest.java b/server/container/guice/jpa-smtp/src/test/java/org/apache/james/JPAJamesServerTest.java index 7e192fe..aec51d6 100644 --- a/server/container/guice/jpa-smtp/src/test/java/org/apache/james/JPAJamesServerTest.java +++ b/server/container/guice/jpa-smtp/src/test/java/org/apache/james/JPAJamesServerTest.java @@ -32,6 +32,7 @@ import javax.persistence.EntityManagerFactory; import org.apache.james.backends.jpa.JpaTestCluster; import org.apache.james.domainlist.jpa.model.JPADomain; import org.apache.james.mailrepository.jpa.JPAUrl; +import org.apache.james.modules.protocols.SmtpGuiceProbe; import org.apache.james.rrt.jpa.model.JPARecipientRewrite; import org.apache.james.server.core.configuration.Configuration; import org.apache.james.user.jpa.model.JPAUser; @@ -43,8 +44,6 @@ import org.junit.rules.TemporaryFolder; public class JPAJamesServerTest { - private static final int SMTP_PORT = 1025; - private GuiceJamesServer server; private SocketChannel socketChannel; @@ -85,7 +84,7 @@ public class JPAJamesServerTest { @Test public void connectSMTPServerShouldSendShabangOnConnect() throws Exception { - socketChannel.connect(new InetSocketAddress("127.0.0.1", SMTP_PORT)); + socketChannel.connect(new InetSocketAddress("127.0.0.1", server.getProbe(SmtpGuiceProbe.class).getSmtpPort())); assertThat(getServerConnectionResponse(socketChannel)).startsWith("220 JAMES Linagora's SMTP awesome Server"); }
http://git-wip-us.apache.org/repos/asf/james-project/blob/60b1d219/server/container/guice/jpa-smtp/src/test/resources/managesieveserver.xml ---------------------------------------------------------------------- diff --git a/server/container/guice/jpa-smtp/src/test/resources/managesieveserver.xml b/server/container/guice/jpa-smtp/src/test/resources/managesieveserver.xml index ec57e09..eee4052 100644 --- a/server/container/guice/jpa-smtp/src/test/resources/managesieveserver.xml +++ b/server/container/guice/jpa-smtp/src/test/resources/managesieveserver.xml @@ -31,7 +31,7 @@ <jmxName>managesieveserver</jmxName> - <bind>0.0.0.0:4190</bind> + <bind>0.0.0.0:0</bind> <connectionBacklog>200</connectionBacklog> http://git-wip-us.apache.org/repos/asf/james-project/blob/60b1d219/server/container/guice/jpa-smtp/src/test/resources/smtpserver.xml ---------------------------------------------------------------------- diff --git a/server/container/guice/jpa-smtp/src/test/resources/smtpserver.xml b/server/container/guice/jpa-smtp/src/test/resources/smtpserver.xml index 2f83c8e..c348f04 100644 --- a/server/container/guice/jpa-smtp/src/test/resources/smtpserver.xml +++ b/server/container/guice/jpa-smtp/src/test/resources/smtpserver.xml @@ -22,7 +22,7 @@ <smtpservers> <smtpserver enabled="true"> <jmxName>smtpserver-global</jmxName> - <bind>0.0.0.0:1025</bind> + <bind>0.0.0.0:0</bind> <connectionBacklog>200</connectionBacklog> <tls socketTLS="false" startTLS="false"> <keystore>file://conf/keystore</keystore> @@ -45,7 +45,7 @@ </smtpserver> <smtpserver enabled="true"> <jmxName>smtpserver-TLS</jmxName> - <bind>0.0.0.0:10465</bind> + <bind>0.0.0.0:0</bind> <connectionBacklog>200</connectionBacklog> <tls socketTLS="false" startTLS="false"> <keystore>file://conf/keystore</keystore> @@ -72,7 +72,7 @@ </smtpserver> <smtpserver enabled="true"> <jmxName>smtpserver-authenticated</jmxName> - <bind>0.0.0.0:1587</bind> + <bind>0.0.0.0:0</bind> <connectionBacklog>200</connectionBacklog> <tls socketTLS="false" startTLS="false"> <keystore>file://conf/keystore</keystore> http://git-wip-us.apache.org/repos/asf/james-project/blob/60b1d219/server/container/guice/memory-guice/src/test/java/org/apache/james/MemoryJamesServerTest.java ---------------------------------------------------------------------- diff --git a/server/container/guice/memory-guice/src/test/java/org/apache/james/MemoryJamesServerTest.java b/server/container/guice/memory-guice/src/test/java/org/apache/james/MemoryJamesServerTest.java index b8dfd4f..f617921 100644 --- a/server/container/guice/memory-guice/src/test/java/org/apache/james/MemoryJamesServerTest.java +++ b/server/container/guice/memory-guice/src/test/java/org/apache/james/MemoryJamesServerTest.java @@ -23,7 +23,7 @@ import java.io.IOException; import org.junit.Rule; -public class MemoryJamesServerTest extends AbstractJmapJamesServerTest { +public class MemoryJamesServerTest extends AbstractJamesServerTest { @Rule public MemoryJmapTestRule memoryJmap = new MemoryJmapTestRule(); http://git-wip-us.apache.org/repos/asf/james-project/blob/60b1d219/server/container/guice/memory-guice/src/test/java/org/apache/james/MemoryJmapJamesServerTest.java ---------------------------------------------------------------------- diff --git a/server/container/guice/memory-guice/src/test/java/org/apache/james/MemoryJmapJamesServerTest.java b/server/container/guice/memory-guice/src/test/java/org/apache/james/MemoryJmapJamesServerTest.java new file mode 100644 index 0000000..eb3ca00 --- /dev/null +++ b/server/container/guice/memory-guice/src/test/java/org/apache/james/MemoryJmapJamesServerTest.java @@ -0,0 +1,39 @@ +/**************************************************************** + * Licensed to the Apache Software Foundation (ASF) under one * + * or more contributor license agreements. See the NOTICE file * + * distributed with this work for additional information * + * regarding copyright ownership. 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. * + ****************************************************************/ + +package org.apache.james; + +import java.io.IOException; + +import org.junit.Rule; + +public class MemoryJmapJamesServerTest extends AbstractJmapJamesServerTest { + + @Rule + public MemoryJmapTestRule memoryJmap = new MemoryJmapTestRule(); + + @Override + protected GuiceJamesServer createJamesServer() throws IOException { + return memoryJmap.jmapServer(); + } + + @Override + protected void clean() { + } +} http://git-wip-us.apache.org/repos/asf/james-project/blob/60b1d219/server/container/guice/memory-guice/src/test/resources/imapserver.xml ---------------------------------------------------------------------- diff --git a/server/container/guice/memory-guice/src/test/resources/imapserver.xml b/server/container/guice/memory-guice/src/test/resources/imapserver.xml index 28ce44c..509fdb3 100644 --- a/server/container/guice/memory-guice/src/test/resources/imapserver.xml +++ b/server/container/guice/memory-guice/src/test/resources/imapserver.xml @@ -23,13 +23,13 @@ under the License. <imapservers> <imapserver enabled="true"> <jmxName>imapserver</jmxName> - <bind>0.0.0.0:1143</bind> + <bind>0.0.0.0:0</bind> <connectionBacklog>200</connectionBacklog> <tls socketTLS="false" startTLS="false"> <!-- To create a new keystore execute: keytool -genkey -alias james -keyalg RSA -keystore /path/to/james/conf/keystore --> - <keystore>file://conf/keystore</keystore> + <keystore>classpath://keystore</keystore> <secret>james72laBalle</secret> <provider>org.bouncycastle.jce.provider.BouncyCastleProvider</provider> </tls> @@ -38,13 +38,13 @@ under the License. </imapserver> <imapserver enabled="true"> <jmxName>imapserver-ssl</jmxName> - <bind>0.0.0.0:1993</bind> + <bind>0.0.0.0:0</bind> <connectionBacklog>200</connectionBacklog> - <tls socketTLS="false" startTLS="false"> + <tls socketTLS="false" startTLS="true"> <!-- To create a new keystore execute: keytool -genkey -alias james -keyalg RSA -keystore /path/to/james/conf/keystore --> - <keystore>file://conf/keystore</keystore> + <keystore>classpath://keystore</keystore> <secret>james72laBalle</secret> <provider>org.bouncycastle.jce.provider.BouncyCastleProvider</provider> </tls> http://git-wip-us.apache.org/repos/asf/james-project/blob/60b1d219/server/container/guice/memory-guice/src/test/resources/lmtpserver.xml ---------------------------------------------------------------------- diff --git a/server/container/guice/memory-guice/src/test/resources/lmtpserver.xml b/server/container/guice/memory-guice/src/test/resources/lmtpserver.xml index 5c4a9c7..7739071 100644 --- a/server/container/guice/memory-guice/src/test/resources/lmtpserver.xml +++ b/server/container/guice/memory-guice/src/test/resources/lmtpserver.xml @@ -23,7 +23,7 @@ <lmtpserver enabled="true"> <jmxName>lmtpserver</jmxName> <!-- LMTP should not be reachable from outside your network so bind it to loopback--> - <bind>127.0.0.1:1024</bind> + <bind>127.0.0.1:0</bind> <connectionBacklog>200</connectionBacklog> <connectiontimeout>1200</connectiontimeout> <!-- Set the maximum simultaneous incoming connections for this service --> http://git-wip-us.apache.org/repos/asf/james-project/blob/60b1d219/server/container/guice/memory-guice/src/test/resources/managesieveserver.xml ---------------------------------------------------------------------- diff --git a/server/container/guice/memory-guice/src/test/resources/managesieveserver.xml b/server/container/guice/memory-guice/src/test/resources/managesieveserver.xml index ec57e09..eee4052 100644 --- a/server/container/guice/memory-guice/src/test/resources/managesieveserver.xml +++ b/server/container/guice/memory-guice/src/test/resources/managesieveserver.xml @@ -31,7 +31,7 @@ <jmxName>managesieveserver</jmxName> - <bind>0.0.0.0:4190</bind> + <bind>0.0.0.0:0</bind> <connectionBacklog>200</connectionBacklog> http://git-wip-us.apache.org/repos/asf/james-project/blob/60b1d219/server/container/guice/memory-guice/src/test/resources/pop3server.xml ---------------------------------------------------------------------- diff --git a/server/container/guice/memory-guice/src/test/resources/pop3server.xml b/server/container/guice/memory-guice/src/test/resources/pop3server.xml index e4187da..595c313 100644 --- a/server/container/guice/memory-guice/src/test/resources/pop3server.xml +++ b/server/container/guice/memory-guice/src/test/resources/pop3server.xml @@ -22,7 +22,7 @@ <pop3servers> <pop3server enabled="true"> <jmxName>pop3server</jmxName> - <bind>0.0.0.0:1110</bind> + <bind>0.0.0.0:0</bind> <connectionBacklog>200</connectionBacklog> <tls socketTLS="false" startTLS="false"> <!-- To create a new keystore execute: http://git-wip-us.apache.org/repos/asf/james-project/blob/60b1d219/server/container/guice/memory-guice/src/test/resources/smtpserver.xml ---------------------------------------------------------------------- diff --git a/server/container/guice/memory-guice/src/test/resources/smtpserver.xml b/server/container/guice/memory-guice/src/test/resources/smtpserver.xml index 2f83c8e..c348f04 100644 --- a/server/container/guice/memory-guice/src/test/resources/smtpserver.xml +++ b/server/container/guice/memory-guice/src/test/resources/smtpserver.xml @@ -22,7 +22,7 @@ <smtpservers> <smtpserver enabled="true"> <jmxName>smtpserver-global</jmxName> - <bind>0.0.0.0:1025</bind> + <bind>0.0.0.0:0</bind> <connectionBacklog>200</connectionBacklog> <tls socketTLS="false" startTLS="false"> <keystore>file://conf/keystore</keystore> @@ -45,7 +45,7 @@ </smtpserver> <smtpserver enabled="true"> <jmxName>smtpserver-TLS</jmxName> - <bind>0.0.0.0:10465</bind> + <bind>0.0.0.0:0</bind> <connectionBacklog>200</connectionBacklog> <tls socketTLS="false" startTLS="false"> <keystore>file://conf/keystore</keystore> @@ -72,7 +72,7 @@ </smtpserver> <smtpserver enabled="true"> <jmxName>smtpserver-authenticated</jmxName> - <bind>0.0.0.0:1587</bind> + <bind>0.0.0.0:0</bind> <connectionBacklog>200</connectionBacklog> <tls socketTLS="false" startTLS="false"> <keystore>file://conf/keystore</keystore> http://git-wip-us.apache.org/repos/asf/james-project/blob/60b1d219/server/container/guice/protocols/imap/src/main/java/org/apache/james/modules/protocols/IMAPServerModule.java ---------------------------------------------------------------------- diff --git a/server/container/guice/protocols/imap/src/main/java/org/apache/james/modules/protocols/IMAPServerModule.java b/server/container/guice/protocols/imap/src/main/java/org/apache/james/modules/protocols/IMAPServerModule.java index bd608cf..0e2ac9a 100644 --- a/server/container/guice/protocols/imap/src/main/java/org/apache/james/modules/protocols/IMAPServerModule.java +++ b/server/container/guice/protocols/imap/src/main/java/org/apache/james/modules/protocols/IMAPServerModule.java @@ -27,6 +27,7 @@ import org.apache.james.imap.encode.main.DefaultImapEncoderFactory; import org.apache.james.imap.main.DefaultImapDecoderFactory; import org.apache.james.imap.processor.main.DefaultImapProcessorFactory; import org.apache.james.imapserver.netty.IMAPServerFactory; +import org.apache.james.imapserver.netty.OioIMAPServerFactory; import org.apache.james.lifecycle.api.Configurable; import org.apache.james.mailbox.MailboxManager; import org.apache.james.mailbox.SubscriptionManager; @@ -36,11 +37,13 @@ import org.apache.james.metrics.api.MetricFactory; import org.apache.james.modules.Names; import org.apache.james.server.core.configuration.ConfigurationProvider; import org.apache.james.utils.ConfigurationPerformer; +import org.apache.james.utils.GuiceProbe; import com.google.common.collect.ImmutableList; import com.google.inject.AbstractModule; import com.google.inject.Inject; import com.google.inject.Provides; +import com.google.inject.Scopes; import com.google.inject.Singleton; import com.google.inject.multibindings.Multibinder; import com.google.inject.name.Named; @@ -49,7 +52,11 @@ public class IMAPServerModule extends AbstractModule { @Override protected void configure() { + bind(IMAPServerFactory.class).in(Scopes.SINGLETON); + bind(OioIMAPServerFactory.class).in(Scopes.SINGLETON); + Multibinder.newSetBinder(binder(), ConfigurationPerformer.class).addBinding().to(IMAPModuleConfigurationPerformer.class); + Multibinder.newSetBinder(binder(), GuiceProbe.class).addBinding().to(ImapGuiceProbe.class); } @Provides http://git-wip-us.apache.org/repos/asf/james-project/blob/60b1d219/server/container/guice/protocols/imap/src/main/java/org/apache/james/modules/protocols/ImapGuiceProbe.java ---------------------------------------------------------------------- diff --git a/server/container/guice/protocols/imap/src/main/java/org/apache/james/modules/protocols/ImapGuiceProbe.java b/server/container/guice/protocols/imap/src/main/java/org/apache/james/modules/protocols/ImapGuiceProbe.java new file mode 100644 index 0000000..0c7c1fc --- /dev/null +++ b/server/container/guice/protocols/imap/src/main/java/org/apache/james/modules/protocols/ImapGuiceProbe.java @@ -0,0 +1,58 @@ +/**************************************************************** + * Licensed to the Apache Software Foundation (ASF) under one * + * or more contributor license agreements. See the NOTICE file * + * distributed with this work for additional information * + * regarding copyright ownership. 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. * + ****************************************************************/ +package org.apache.james.modules.protocols; + +import java.net.InetSocketAddress; +import java.util.Optional; +import java.util.function.Predicate; + +import javax.inject.Inject; + +import org.apache.james.imapserver.netty.IMAPServerFactory; +import org.apache.james.protocols.lib.netty.AbstractConfigurableAsyncServer; +import org.apache.james.utils.GuiceProbe; + + +public class ImapGuiceProbe implements GuiceProbe { + + private final IMAPServerFactory imapServerFactory; + + @Inject + private ImapGuiceProbe(IMAPServerFactory imapServerFactory) { + this.imapServerFactory = imapServerFactory; + } + + public int getImapPort() { + return getPort(server -> !server.getStartTLSSupported()) + .orElseThrow(() -> new IllegalStateException("IMAP server not defined")); + } + + public int getImapsPort() { + return getPort(server -> server.getStartTLSSupported()) + .orElseThrow(() -> new IllegalStateException("IMAPS server not defined")); + } + + private Optional<Integer> getPort(Predicate<? super AbstractConfigurableAsyncServer> filter) { + return imapServerFactory.getServers().stream() + .filter(filter) + .findFirst() + .flatMap(server -> server.getListenAddresses().stream().findFirst()) + .map(InetSocketAddress::getPort); + } +} http://git-wip-us.apache.org/repos/asf/james-project/blob/60b1d219/server/container/guice/protocols/jmap/src/test/java/org/apache/james/AbstractJmapJamesServerTest.java ---------------------------------------------------------------------- diff --git a/server/container/guice/protocols/jmap/src/test/java/org/apache/james/AbstractJmapJamesServerTest.java b/server/container/guice/protocols/jmap/src/test/java/org/apache/james/AbstractJmapJamesServerTest.java index 1abae59..318e15b 100644 --- a/server/container/guice/protocols/jmap/src/test/java/org/apache/james/AbstractJmapJamesServerTest.java +++ b/server/container/guice/protocols/jmap/src/test/java/org/apache/james/AbstractJmapJamesServerTest.java @@ -21,18 +21,11 @@ package org.apache.james; import static io.restassured.RestAssured.given; import static io.restassured.config.EncoderConfig.encoderConfig; import static io.restassured.config.RestAssuredConfig.newConfig; -import static org.assertj.core.api.Assertions.assertThat; import java.io.IOException; -import java.net.InetAddress; -import java.net.InetSocketAddress; -import java.nio.ByteBuffer; -import java.nio.channels.SocketChannel; -import java.nio.charset.Charset; import java.nio.charset.StandardCharsets; import org.apache.james.domainlist.lib.DomainListConfiguration; -import org.apache.james.utils.DataProbeImpl; import org.apache.james.utils.JmapGuiceProbe; import org.junit.After; import org.junit.Before; @@ -52,21 +45,13 @@ public abstract class AbstractJmapJamesServerTest { .autoDetectIp(false) .build()); - private static final int IMAP_PORT_SSL = 1993; - private static final int POP3_PORT = 1110; - private static final int SMTP_PORT = 1025; - private static final int LMTP_PORT = 1024; - protected static final String JAMES_SERVER_HOST = "127.0.0.1"; - protected static final int IMAP_PORT = 1143; // You need to be root (superuser) to bind to ports under 1024. protected GuiceJamesServer server; - private SocketChannel socketChannel; @Before public void setup() throws Exception { server = createJamesServer(); - socketChannel = SocketChannel.open(); server.start(); RestAssured.requestSpecification = new RequestSpecBuilder() @@ -90,52 +75,6 @@ public abstract class AbstractJmapJamesServerTest { } @Test - public void hostnameShouldBeUsedAsDefaultDomain() throws Exception { - String expectedDefaultDomain = InetAddress.getLocalHost().getHostName(); - - assertThat(server.getProbe(DataProbeImpl.class).getDefaultDomain()).isEqualTo(expectedDefaultDomain); - } - - @Test - public void hostnameShouldBeRetrievedWhenRestarting() throws Exception { - server.stop(); - server.start(); - String expectedDefaultDomain = InetAddress.getLocalHost().getHostName(); - - assertThat(server.getProbe(DataProbeImpl.class).getDefaultDomain()).isEqualTo(expectedDefaultDomain); - } - - @Test - public void connectIMAPServerShouldSendShabangOnConnect() throws Exception { - socketChannel.connect(new InetSocketAddress(JAMES_SERVER_HOST, IMAP_PORT)); - assertThat(getServerConnectionResponse(socketChannel)).startsWith("* OK JAMES IMAP4rev1 Server"); - } - - @Test - public void connectOnSecondaryIMAPServerIMAPServerShouldSendShabangOnConnect() throws Exception { - socketChannel.connect(new InetSocketAddress(JAMES_SERVER_HOST, IMAP_PORT_SSL)); - assertThat(getServerConnectionResponse(socketChannel)).startsWith("* OK JAMES IMAP4rev1 Server"); - } - - @Test - public void connectPOP3ServerShouldSendShabangOnConnect() throws Exception { - socketChannel.connect(new InetSocketAddress(JAMES_SERVER_HOST, POP3_PORT)); - assertThat(getServerConnectionResponse(socketChannel)).contains("POP3 server (JAMES POP3 Server ) ready"); - } - - @Test - public void connectSMTPServerShouldSendShabangOnConnect() throws Exception { - socketChannel.connect(new InetSocketAddress(JAMES_SERVER_HOST, SMTP_PORT)); - assertThat(getServerConnectionResponse(socketChannel)).startsWith("220 JAMES Linagora's SMTP awesome Server"); - } - - @Test - public void connectLMTPServerShouldSendShabangOnConnect() throws Exception { - socketChannel.connect(new InetSocketAddress(JAMES_SERVER_HOST, LMTP_PORT)); - assertThat(getServerConnectionResponse(socketChannel)).contains("LMTP Server (JAMES Protocols Server) ready"); - } - - @Test public void connectJMAPServerShouldRespondBadRequest() throws Exception { given() .body("{\"badAttributeName\": \"value\"}") @@ -144,11 +83,4 @@ public abstract class AbstractJmapJamesServerTest { .then() .statusCode(400); } - - private String getServerConnectionResponse(SocketChannel socketChannel) throws IOException { - ByteBuffer byteBuffer = ByteBuffer.allocate(1000); - socketChannel.read(byteBuffer); - byte[] bytes = byteBuffer.array(); - return new String(bytes, Charset.forName("UTF-8")); - } } http://git-wip-us.apache.org/repos/asf/james-project/blob/60b1d219/server/container/guice/protocols/lmtp/src/main/java/org/apache/james/modules/protocols/LMTPServerModule.java ---------------------------------------------------------------------- diff --git a/server/container/guice/protocols/lmtp/src/main/java/org/apache/james/modules/protocols/LMTPServerModule.java b/server/container/guice/protocols/lmtp/src/main/java/org/apache/james/modules/protocols/LMTPServerModule.java index 4d20631..dd67a1b 100644 --- a/server/container/guice/protocols/lmtp/src/main/java/org/apache/james/modules/protocols/LMTPServerModule.java +++ b/server/container/guice/protocols/lmtp/src/main/java/org/apache/james/modules/protocols/LMTPServerModule.java @@ -23,12 +23,15 @@ import java.util.List; import org.apache.james.lifecycle.api.Configurable; import org.apache.james.lmtpserver.netty.LMTPServerFactory; +import org.apache.james.lmtpserver.netty.OioLMTPServerFactory; import org.apache.james.server.core.configuration.ConfigurationProvider; import org.apache.james.utils.ConfigurationPerformer; +import org.apache.james.utils.GuiceProbe; import com.google.common.collect.ImmutableList; import com.google.inject.AbstractModule; import com.google.inject.Inject; +import com.google.inject.Scopes; import com.google.inject.Singleton; import com.google.inject.multibindings.Multibinder; @@ -36,7 +39,11 @@ public class LMTPServerModule extends AbstractModule { @Override protected void configure() { + bind(LMTPServerFactory.class).in(Scopes.SINGLETON); + bind(OioLMTPServerFactory.class).in(Scopes.SINGLETON); + Multibinder.newSetBinder(binder(), ConfigurationPerformer.class).addBinding().to(LMTPModuleConfigurationPerformer.class); + Multibinder.newSetBinder(binder(), GuiceProbe.class).addBinding().to(LmtpGuiceProbe.class); } @Singleton http://git-wip-us.apache.org/repos/asf/james-project/blob/60b1d219/server/container/guice/protocols/lmtp/src/main/java/org/apache/james/modules/protocols/LmtpGuiceProbe.java ---------------------------------------------------------------------- diff --git a/server/container/guice/protocols/lmtp/src/main/java/org/apache/james/modules/protocols/LmtpGuiceProbe.java b/server/container/guice/protocols/lmtp/src/main/java/org/apache/james/modules/protocols/LmtpGuiceProbe.java new file mode 100644 index 0000000..fe8ad90 --- /dev/null +++ b/server/container/guice/protocols/lmtp/src/main/java/org/apache/james/modules/protocols/LmtpGuiceProbe.java @@ -0,0 +1,45 @@ +/**************************************************************** + * Licensed to the Apache Software Foundation (ASF) under one * + * or more contributor license agreements. See the NOTICE file * + * distributed with this work for additional information * + * regarding copyright ownership. 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. * + ****************************************************************/ +package org.apache.james.modules.protocols; + +import java.net.InetSocketAddress; + +import javax.inject.Inject; + +import org.apache.james.lmtpserver.netty.LMTPServerFactory; +import org.apache.james.utils.GuiceProbe; + + +public class LmtpGuiceProbe implements GuiceProbe { + + private final LMTPServerFactory lmtpServerFactory; + + @Inject + private LmtpGuiceProbe(LMTPServerFactory lmtpServerFactory) { + this.lmtpServerFactory = lmtpServerFactory; + } + + public int getLmtpPort() { + return lmtpServerFactory.getServers().stream() + .findFirst() + .flatMap(server -> server.getListenAddresses().stream().findFirst()) + .map(InetSocketAddress::getPort) + .orElseThrow(() -> new IllegalStateException("LMTP server not defined")); + } +} http://git-wip-us.apache.org/repos/asf/james-project/blob/60b1d219/server/container/guice/protocols/pop/src/main/java/org/apache/james/modules/protocols/POP3ServerModule.java ---------------------------------------------------------------------- diff --git a/server/container/guice/protocols/pop/src/main/java/org/apache/james/modules/protocols/POP3ServerModule.java b/server/container/guice/protocols/pop/src/main/java/org/apache/james/modules/protocols/POP3ServerModule.java index 4fbc30e..457bca5 100644 --- a/server/container/guice/protocols/pop/src/main/java/org/apache/james/modules/protocols/POP3ServerModule.java +++ b/server/container/guice/protocols/pop/src/main/java/org/apache/james/modules/protocols/POP3ServerModule.java @@ -22,13 +22,16 @@ package org.apache.james.modules.protocols; import java.util.List; import org.apache.james.lifecycle.api.Configurable; +import org.apache.james.pop3server.netty.OioPOP3ServerFactory; import org.apache.james.pop3server.netty.POP3ServerFactory; import org.apache.james.server.core.configuration.ConfigurationProvider; import org.apache.james.utils.ConfigurationPerformer; +import org.apache.james.utils.GuiceProbe; import com.google.common.collect.ImmutableList; import com.google.inject.AbstractModule; import com.google.inject.Inject; +import com.google.inject.Scopes; import com.google.inject.Singleton; import com.google.inject.multibindings.Multibinder; @@ -36,7 +39,11 @@ public class POP3ServerModule extends AbstractModule { @Override protected void configure() { + bind(POP3ServerFactory.class).in(Scopes.SINGLETON); + bind(OioPOP3ServerFactory.class).in(Scopes.SINGLETON); + Multibinder.newSetBinder(binder(), ConfigurationPerformer.class).addBinding().to(POP3ModuleConfigurationPerformer.class); + Multibinder.newSetBinder(binder(), GuiceProbe.class).addBinding().to(Pop3GuiceProbe.class); } @Singleton http://git-wip-us.apache.org/repos/asf/james-project/blob/60b1d219/server/container/guice/protocols/pop/src/main/java/org/apache/james/modules/protocols/Pop3GuiceProbe.java ---------------------------------------------------------------------- diff --git a/server/container/guice/protocols/pop/src/main/java/org/apache/james/modules/protocols/Pop3GuiceProbe.java b/server/container/guice/protocols/pop/src/main/java/org/apache/james/modules/protocols/Pop3GuiceProbe.java new file mode 100644 index 0000000..148f78c --- /dev/null +++ b/server/container/guice/protocols/pop/src/main/java/org/apache/james/modules/protocols/Pop3GuiceProbe.java @@ -0,0 +1,45 @@ +/**************************************************************** + * Licensed to the Apache Software Foundation (ASF) under one * + * or more contributor license agreements. See the NOTICE file * + * distributed with this work for additional information * + * regarding copyright ownership. 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. * + ****************************************************************/ +package org.apache.james.modules.protocols; + +import java.net.InetSocketAddress; + +import javax.inject.Inject; + +import org.apache.james.pop3server.netty.POP3ServerFactory; +import org.apache.james.utils.GuiceProbe; + + +public class Pop3GuiceProbe implements GuiceProbe { + + private final POP3ServerFactory pop3ServerFactory; + + @Inject + private Pop3GuiceProbe(POP3ServerFactory pop3ServerFactory) { + this.pop3ServerFactory = pop3ServerFactory; + } + + public int getPop3Port() { + return pop3ServerFactory.getServers().stream() + .findFirst() + .flatMap(server -> server.getListenAddresses().stream().findFirst()) + .map(InetSocketAddress::getPort) + .orElseThrow(() -> new IllegalStateException("POP3 server not defined")); + } +} http://git-wip-us.apache.org/repos/asf/james-project/blob/60b1d219/server/container/guice/protocols/smtp/src/main/java/org/apache/james/modules/protocols/SMTPServerModule.java ---------------------------------------------------------------------- diff --git a/server/container/guice/protocols/smtp/src/main/java/org/apache/james/modules/protocols/SMTPServerModule.java b/server/container/guice/protocols/smtp/src/main/java/org/apache/james/modules/protocols/SMTPServerModule.java index 2e88204..7a55aa8 100644 --- a/server/container/guice/protocols/smtp/src/main/java/org/apache/james/modules/protocols/SMTPServerModule.java +++ b/server/container/guice/protocols/smtp/src/main/java/org/apache/james/modules/protocols/SMTPServerModule.java @@ -24,12 +24,15 @@ import java.util.List; import org.apache.james.lifecycle.api.Configurable; import org.apache.james.server.core.configuration.ConfigurationProvider; import org.apache.james.smtpserver.SendMailHandler; +import org.apache.james.smtpserver.netty.OioSMTPServerFactory; import org.apache.james.smtpserver.netty.SMTPServerFactory; import org.apache.james.utils.ConfigurationPerformer; +import org.apache.james.utils.GuiceProbe; import com.google.common.collect.ImmutableList; import com.google.inject.AbstractModule; import com.google.inject.Inject; +import com.google.inject.Scopes; import com.google.inject.Singleton; import com.google.inject.multibindings.Multibinder; @@ -38,8 +41,11 @@ public class SMTPServerModule extends AbstractModule { @Override protected void configure() { install(new JSPFModule()); + bind(SMTPServerFactory.class).in(Scopes.SINGLETON); + bind(OioSMTPServerFactory.class).in(Scopes.SINGLETON); Multibinder.newSetBinder(binder(), ConfigurationPerformer.class).addBinding().to(SMTPModuleConfigurationPerformer.class); + Multibinder.newSetBinder(binder(), GuiceProbe.class).addBinding().to(SmtpGuiceProbe.class); } @Singleton http://git-wip-us.apache.org/repos/asf/james-project/blob/60b1d219/server/container/guice/protocols/smtp/src/main/java/org/apache/james/modules/protocols/SmtpGuiceProbe.java ---------------------------------------------------------------------- diff --git a/server/container/guice/protocols/smtp/src/main/java/org/apache/james/modules/protocols/SmtpGuiceProbe.java b/server/container/guice/protocols/smtp/src/main/java/org/apache/james/modules/protocols/SmtpGuiceProbe.java new file mode 100644 index 0000000..1468820 --- /dev/null +++ b/server/container/guice/protocols/smtp/src/main/java/org/apache/james/modules/protocols/SmtpGuiceProbe.java @@ -0,0 +1,60 @@ +/**************************************************************** + * Licensed to the Apache Software Foundation (ASF) under one * + * or more contributor license agreements. See the NOTICE file * + * distributed with this work for additional information * + * regarding copyright ownership. 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. * + ****************************************************************/ +package org.apache.james.modules.protocols; + +import java.net.InetSocketAddress; +import java.util.function.Predicate; + +import javax.inject.Inject; + +import org.apache.james.protocols.lib.netty.AbstractConfigurableAsyncServer; +import org.apache.james.smtpserver.netty.SMTPServer; +import org.apache.james.smtpserver.netty.SMTPServerFactory; +import org.apache.james.utils.GuiceProbe; + +public class SmtpGuiceProbe implements GuiceProbe { + + private final SMTPServerFactory smtpServerFactory; + + @Inject + private SmtpGuiceProbe(SMTPServerFactory smtpServerFactory) { + this.smtpServerFactory = smtpServerFactory; + } + + public int getSmtpPort() { + return getPort(server -> true); + } + + public int getSmtpsPort() { + return getPort(AbstractConfigurableAsyncServer::getStartTLSSupported); + } + + public Integer getSmtpAuthRequiredPort() { + return getPort(server -> ((SMTPServer) server).getAuthRequired() == SMTPServer.AUTH_REQUIRED); + } + + private Integer getPort(Predicate<? super AbstractConfigurableAsyncServer> filter) { + return smtpServerFactory.getServers().stream() + .filter(filter) + .findFirst() + .flatMap(server -> server.getListenAddresses().stream().findFirst()) + .map(InetSocketAddress::getPort) + .orElseThrow(() -> new IllegalStateException("SMTP server not defined")); + } +} http://git-wip-us.apache.org/repos/asf/james-project/blob/60b1d219/server/container/util/src/main/java/org/apache/james/util/Port.java ---------------------------------------------------------------------- diff --git a/server/container/util/src/main/java/org/apache/james/util/Port.java b/server/container/util/src/main/java/org/apache/james/util/Port.java index 016c4b4..5c90aa7 100644 --- a/server/container/util/src/main/java/org/apache/james/util/Port.java +++ b/server/container/util/src/main/java/org/apache/james/util/Port.java @@ -29,6 +29,10 @@ public class Port { public static final int PRIVILEGED_PORT_BOUND = 1024; private static final Range<Integer> VALID_PORT_RANGE = Range.closed(1, MAX_PORT_VALUE); + public static Port of(int portNumber) { + return new Port(portNumber); + } + public static int generateValidUnprivilegedPort() { return new Random().nextInt(Port.MAX_PORT_VALUE - PRIVILEGED_PORT_BOUND) + PRIVILEGED_PORT_BOUND; } http://git-wip-us.apache.org/repos/asf/james-project/blob/60b1d219/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/AddDeliveredToHeaderTest.java ---------------------------------------------------------------------- diff --git a/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/AddDeliveredToHeaderTest.java b/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/AddDeliveredToHeaderTest.java index 469f0f0..795ca91 100644 --- a/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/AddDeliveredToHeaderTest.java +++ b/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/AddDeliveredToHeaderTest.java @@ -21,14 +21,14 @@ package org.apache.james.mailets; import static org.apache.james.mailets.configuration.Constants.DEFAULT_DOMAIN; import static org.apache.james.mailets.configuration.Constants.FROM; -import static org.apache.james.mailets.configuration.Constants.IMAP_PORT; import static org.apache.james.mailets.configuration.Constants.LOCALHOST_IP; import static org.apache.james.mailets.configuration.Constants.PASSWORD; import static org.apache.james.mailets.configuration.Constants.RECIPIENT; -import static org.apache.james.mailets.configuration.Constants.SMTP_PORT; import static org.apache.james.mailets.configuration.Constants.awaitAtMostOneMinute; import static org.assertj.core.api.Assertions.assertThat; +import org.apache.james.modules.protocols.ImapGuiceProbe; +import org.apache.james.modules.protocols.SmtpGuiceProbe; import org.apache.james.probe.DataProbe; import org.apache.james.transport.mailets.AddDeliveredToHeader; import org.apache.james.utils.DataProbeImpl; @@ -66,10 +66,10 @@ public class AddDeliveredToHeaderTest { @Test public void receivedMessagesShouldContainDeliveredToHeaders() throws Exception { - messageSender.connect(LOCALHOST_IP, SMTP_PORT) + messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) .sendMessage(FROM, RECIPIENT); - imapMessageReader.connect(LOCALHOST_IP, IMAP_PORT) + imapMessageReader.connect(LOCALHOST_IP, jamesServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(RECIPIENT, PASSWORD) .select(IMAPMessageReader.INBOX) .awaitMessage(awaitAtMostOneMinute); http://git-wip-us.apache.org/repos/asf/james-project/blob/60b1d219/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/BounceIntegrationTest.java ---------------------------------------------------------------------- diff --git a/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/BounceIntegrationTest.java b/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/BounceIntegrationTest.java index 295bdd6..0dfc134 100644 --- a/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/BounceIntegrationTest.java +++ b/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/BounceIntegrationTest.java @@ -20,17 +20,17 @@ package org.apache.james.mailets; import static org.apache.james.mailets.configuration.Constants.DEFAULT_DOMAIN; -import static org.apache.james.mailets.configuration.Constants.IMAP_PORT; import static org.apache.james.mailets.configuration.Constants.LOCALHOST_IP; import static org.apache.james.mailets.configuration.Constants.PASSWORD; import static org.apache.james.mailets.configuration.Constants.RECIPIENT; -import static org.apache.james.mailets.configuration.Constants.SMTP_PORT; import static org.apache.james.mailets.configuration.Constants.awaitAtMostOneMinute; import org.apache.james.MemoryJamesServerMain; import org.apache.james.mailets.configuration.MailetConfiguration; import org.apache.james.mailets.configuration.MailetContainer; import org.apache.james.mailets.configuration.ProcessorConfiguration; +import org.apache.james.modules.protocols.ImapGuiceProbe; +import org.apache.james.modules.protocols.SmtpGuiceProbe; import org.apache.james.probe.DataProbe; import org.apache.james.transport.mailets.Bounce; import org.apache.james.transport.mailets.DSNBounce; @@ -85,10 +85,10 @@ public class BounceIntegrationTest { dataProbe.addUser(RECIPIENT, PASSWORD); dataProbe.addUser(BOUNCE_RECEIVER, PASSWORD); - messageSender.connect(LOCALHOST_IP, SMTP_PORT) + messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) .sendMessage(BOUNCE_RECEIVER, RECIPIENT); - imapMessageReader.connect(LOCALHOST_IP, IMAP_PORT) + imapMessageReader.connect(LOCALHOST_IP, jamesServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(BOUNCE_RECEIVER, PASSWORD) .select(IMAPMessageReader.INBOX) .awaitMessage(awaitAtMostOneMinute); @@ -110,10 +110,10 @@ public class BounceIntegrationTest { dataProbe.addUser(RECIPIENT, PASSWORD); dataProbe.addUser(BOUNCE_RECEIVER, PASSWORD); - messageSender.connect(LOCALHOST_IP, SMTP_PORT) + messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) .sendMessage(BOUNCE_RECEIVER, RECIPIENT); - imapMessageReader.connect(LOCALHOST_IP, IMAP_PORT) + imapMessageReader.connect(LOCALHOST_IP, jamesServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(BOUNCE_RECEIVER, PASSWORD) .select(IMAPMessageReader.INBOX) .awaitMessage(awaitAtMostOneMinute); @@ -135,10 +135,10 @@ public class BounceIntegrationTest { dataProbe.addUser(RECIPIENT, PASSWORD); dataProbe.addUser(BOUNCE_RECEIVER, PASSWORD); - messageSender.connect(LOCALHOST_IP, SMTP_PORT) + messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) .sendMessage("any@" + DEFAULT_DOMAIN, RECIPIENT); - imapMessageReader.connect(LOCALHOST_IP, IMAP_PORT) + imapMessageReader.connect(LOCALHOST_IP, jamesServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(BOUNCE_RECEIVER, PASSWORD) .select(IMAPMessageReader.INBOX) .awaitMessage(awaitAtMostOneMinute); @@ -161,10 +161,10 @@ public class BounceIntegrationTest { dataProbe.addUser(RECIPIENT, PASSWORD); dataProbe.addUser(BOUNCE_RECEIVER, PASSWORD); - messageSender.connect(LOCALHOST_IP, SMTP_PORT) + messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) .sendMessage("any@" + DEFAULT_DOMAIN, RECIPIENT); - imapMessageReader.connect(LOCALHOST_IP, IMAP_PORT) + imapMessageReader.connect(LOCALHOST_IP, jamesServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(BOUNCE_RECEIVER, PASSWORD) .select(IMAPMessageReader.INBOX) .awaitMessage(awaitAtMostOneMinute); @@ -187,10 +187,10 @@ public class BounceIntegrationTest { dataProbe.addUser(RECIPIENT, PASSWORD); dataProbe.addUser(BOUNCE_RECEIVER, PASSWORD); - messageSender.connect(LOCALHOST_IP, SMTP_PORT) + messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) .sendMessage("any@" + DEFAULT_DOMAIN, RECIPIENT); - imapMessageReader.connect(LOCALHOST_IP, IMAP_PORT) + imapMessageReader.connect(LOCALHOST_IP, jamesServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(BOUNCE_RECEIVER, PASSWORD) .select(IMAPMessageReader.INBOX) .awaitMessage(awaitAtMostOneMinute); @@ -212,10 +212,10 @@ public class BounceIntegrationTest { dataProbe.addUser(RECIPIENT, PASSWORD); dataProbe.addUser(BOUNCE_RECEIVER, PASSWORD); - messageSender.connect(LOCALHOST_IP, SMTP_PORT) + messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) .sendMessage(BOUNCE_RECEIVER, RECIPIENT); - imapMessageReader.connect(LOCALHOST_IP, IMAP_PORT) + imapMessageReader.connect(LOCALHOST_IP, jamesServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(BOUNCE_RECEIVER, PASSWORD) .select(IMAPMessageReader.INBOX) .awaitMessage(awaitAtMostOneMinute); @@ -237,10 +237,10 @@ public class BounceIntegrationTest { dataProbe.addUser(RECIPIENT, PASSWORD); dataProbe.addUser(POSTMASTER, PASSWORD); - messageSender.connect(LOCALHOST_IP, SMTP_PORT) + messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) .sendMessage("any@" + DEFAULT_DOMAIN, RECIPIENT); - imapMessageReader.connect(LOCALHOST_IP, IMAP_PORT) + imapMessageReader.connect(LOCALHOST_IP, jamesServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(POSTMASTER, PASSWORD) .select(IMAPMessageReader.INBOX) .awaitMessage(awaitAtMostOneMinute); http://git-wip-us.apache.org/repos/asf/james-project/blob/60b1d219/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/CommonMailetConfigurationTest.java ---------------------------------------------------------------------- diff --git a/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/CommonMailetConfigurationTest.java b/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/CommonMailetConfigurationTest.java index 0861fdb..3728b08 100644 --- a/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/CommonMailetConfigurationTest.java +++ b/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/CommonMailetConfigurationTest.java @@ -21,13 +21,13 @@ package org.apache.james.mailets; import static org.apache.james.mailets.configuration.Constants.DEFAULT_DOMAIN; import static org.apache.james.mailets.configuration.Constants.FROM; -import static org.apache.james.mailets.configuration.Constants.IMAP_PORT; import static org.apache.james.mailets.configuration.Constants.LOCALHOST_IP; import static org.apache.james.mailets.configuration.Constants.PASSWORD; import static org.apache.james.mailets.configuration.Constants.RECIPIENT; -import static org.apache.james.mailets.configuration.Constants.SMTP_PORT; import static org.apache.james.mailets.configuration.Constants.awaitAtMostOneMinute; +import org.apache.james.modules.protocols.ImapGuiceProbe; +import org.apache.james.modules.protocols.SmtpGuiceProbe; import org.apache.james.probe.DataProbe; import org.apache.james.utils.DataProbeImpl; import org.apache.james.utils.IMAPMessageReader; @@ -68,10 +68,10 @@ public class CommonMailetConfigurationTest { @Test public void simpleMailShouldBeSent() throws Exception { - messageSender.connect(LOCALHOST_IP, SMTP_PORT) + messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) .sendMessage(FROM, RECIPIENT); - imapMessageReader.connect(LOCALHOST_IP, IMAP_PORT) + imapMessageReader.connect(LOCALHOST_IP, jamesServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(RECIPIENT, PASSWORD) .select(IMAPMessageReader.INBOX) .awaitMessage(awaitAtMostOneMinute); http://git-wip-us.apache.org/repos/asf/james-project/blob/60b1d219/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/DirectResolutionRemoteDeliveryIntegrationTest.java ---------------------------------------------------------------------- diff --git a/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/DirectResolutionRemoteDeliveryIntegrationTest.java b/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/DirectResolutionRemoteDeliveryIntegrationTest.java index c9509a4..88f5617 100644 --- a/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/DirectResolutionRemoteDeliveryIntegrationTest.java +++ b/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/DirectResolutionRemoteDeliveryIntegrationTest.java @@ -22,10 +22,8 @@ package org.apache.james.mailets; import static org.apache.james.MemoryJamesServerMain.SMTP_AND_IMAP_MODULE; import static org.apache.james.MemoryJamesServerMain.SMTP_ONLY_MODULE; import static org.apache.james.mailets.configuration.Constants.DEFAULT_DOMAIN; -import static org.apache.james.mailets.configuration.Constants.IMAP_PORT; import static org.apache.james.mailets.configuration.Constants.LOCALHOST_IP; import static org.apache.james.mailets.configuration.Constants.PASSWORD; -import static org.apache.james.mailets.configuration.Constants.SMTP_PORT; import static org.apache.james.mailets.configuration.Constants.awaitAtMostOneMinute; import static org.apache.james.mailets.configuration.MailetConfiguration.LOCAL_DELIVERY; import static org.hamcrest.Matchers.equalTo; @@ -40,6 +38,8 @@ import org.apache.james.mailets.configuration.CommonProcessors; import org.apache.james.mailets.configuration.MailetConfiguration; import org.apache.james.mailets.configuration.MailetContainer; import org.apache.james.mailets.configuration.ProcessorConfiguration; +import org.apache.james.modules.protocols.ImapGuiceProbe; +import org.apache.james.modules.protocols.SmtpGuiceProbe; import org.apache.james.probe.DataProbe; import org.apache.james.transport.matchers.All; import org.apache.james.utils.DataProbeImpl; @@ -115,7 +115,7 @@ public class DirectResolutionRemoteDeliveryIntegrationTest { dataProbe.addDomain(DEFAULT_DOMAIN); dataProbe.addUser(FROM, PASSWORD); - messageSender.connect(LOCALHOST_IP, SMTP_PORT) + messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) .sendMessage(FROM, RECIPIENT); awaitAtMostOneMinute @@ -144,7 +144,7 @@ public class DirectResolutionRemoteDeliveryIntegrationTest { dataProbe.addDomain(DEFAULT_DOMAIN); dataProbe.addUser(FROM, PASSWORD); - messageSender.connect(LOCALHOST_IP, SMTP_PORT) + messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) .sendMessage(FROM, RECIPIENT); awaitAtMostOneMinute @@ -171,10 +171,10 @@ public class DirectResolutionRemoteDeliveryIntegrationTest { dataProbe.addDomain(DEFAULT_DOMAIN); dataProbe.addUser(FROM, PASSWORD); - messageSender.connect(LOCALHOST_IP, SMTP_PORT) + messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) .sendMessage(FROM, RECIPIENT); - imapMessageReader.connect(LOCALHOST_IP, IMAP_PORT) + imapMessageReader.connect(LOCALHOST_IP, jamesServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(FROM, PASSWORD) .select(IMAPMessageReader.INBOX) .awaitMessage(awaitAtMostOneMinute); @@ -199,10 +199,10 @@ public class DirectResolutionRemoteDeliveryIntegrationTest { dataProbe.addDomain(DEFAULT_DOMAIN); dataProbe.addUser(FROM, PASSWORD); - messageSender.connect(LOCALHOST_IP, SMTP_PORT) + messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) .sendMessage(FROM, RECIPIENT); - imapMessageReader.connect(LOCALHOST_IP, IMAP_PORT) + imapMessageReader.connect(LOCALHOST_IP, jamesServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(FROM, PASSWORD) .select(IMAPMessageReader.INBOX) .awaitMessage(awaitAtMostOneMinute); http://git-wip-us.apache.org/repos/asf/james-project/blob/60b1d219/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/GatewayRemoteDeliveryIntegrationTest.java ---------------------------------------------------------------------- diff --git a/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/GatewayRemoteDeliveryIntegrationTest.java b/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/GatewayRemoteDeliveryIntegrationTest.java index 71c1ebe..cb43c36 100644 --- a/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/GatewayRemoteDeliveryIntegrationTest.java +++ b/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/GatewayRemoteDeliveryIntegrationTest.java @@ -22,10 +22,8 @@ package org.apache.james.mailets; import static org.apache.james.MemoryJamesServerMain.SMTP_AND_IMAP_MODULE; import static org.apache.james.MemoryJamesServerMain.SMTP_ONLY_MODULE; import static org.apache.james.mailets.configuration.Constants.DEFAULT_DOMAIN; -import static org.apache.james.mailets.configuration.Constants.IMAP_PORT; import static org.apache.james.mailets.configuration.Constants.LOCALHOST_IP; import static org.apache.james.mailets.configuration.Constants.PASSWORD; -import static org.apache.james.mailets.configuration.Constants.SMTP_PORT; import static org.apache.james.mailets.configuration.Constants.awaitAtMostOneMinute; import static org.assertj.core.api.Assertions.assertThat; import static org.hamcrest.Matchers.equalTo; @@ -37,6 +35,8 @@ import org.apache.james.mailets.configuration.CommonProcessors; import org.apache.james.mailets.configuration.MailetConfiguration; import org.apache.james.mailets.configuration.MailetContainer; import org.apache.james.mailets.configuration.ProcessorConfiguration; +import org.apache.james.modules.protocols.ImapGuiceProbe; +import org.apache.james.modules.protocols.SmtpGuiceProbe; import org.apache.james.probe.DataProbe; import org.apache.james.transport.matchers.All; import org.apache.james.utils.DataProbeImpl; @@ -103,7 +103,7 @@ public class GatewayRemoteDeliveryIntegrationTest { dataProbe.addDomain(DEFAULT_DOMAIN); dataProbe.addUser(FROM, PASSWORD); - messageSender.connect(LOCALHOST_IP, SMTP_PORT) + messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) .sendMessage(FROM, RECIPIENT); awaitAtMostOneMinute @@ -124,7 +124,7 @@ public class GatewayRemoteDeliveryIntegrationTest { dataProbe.addDomain(DEFAULT_DOMAIN); dataProbe.addUser(FROM, PASSWORD); - messageSender.connect(LOCALHOST_IP, SMTP_PORT) + messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) .sendMessage(FROM, RECIPIENT); awaitAtMostOneMinute.until(this::messageIsReceivedByTheSmtpServer); @@ -143,7 +143,7 @@ public class GatewayRemoteDeliveryIntegrationTest { dataProbe.addDomain(DEFAULT_DOMAIN); dataProbe.addUser(FROM, PASSWORD); - messageSender.connect(LOCALHOST_IP, SMTP_PORT) + messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) .sendMessage(FROM, RECIPIENT); awaitAtMostOneMinute @@ -164,7 +164,7 @@ public class GatewayRemoteDeliveryIntegrationTest { dataProbe.addDomain(DEFAULT_DOMAIN); dataProbe.addUser(FROM, PASSWORD); - messageSender.connect(LOCALHOST_IP, SMTP_PORT) + messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) .sendMessage(FROM, RECIPIENT); awaitAtMostOneMinute @@ -186,11 +186,11 @@ public class GatewayRemoteDeliveryIntegrationTest { dataProbe.addDomain(DEFAULT_DOMAIN); dataProbe.addUser(FROM, PASSWORD); - messageSender.connect(LOCALHOST_IP, SMTP_PORT) + messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) .sendMessage(FROM, RECIPIENT); // Wait for bounce being sent before checking no email is sent - imapMessageReader.connect(LOCALHOST_IP, IMAP_PORT) + imapMessageReader.connect(LOCALHOST_IP, jamesServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(FROM, PASSWORD) .select(IMAPMessageReader.INBOX) .awaitMessage(awaitAtMostOneMinute); @@ -212,10 +212,10 @@ public class GatewayRemoteDeliveryIntegrationTest { dataProbe.addDomain(DEFAULT_DOMAIN); dataProbe.addUser(FROM, PASSWORD); - messageSender.connect(LOCALHOST_IP, SMTP_PORT) + messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) .sendMessage(FROM, RECIPIENT); - imapMessageReader.connect(LOCALHOST_IP, IMAP_PORT) + imapMessageReader.connect(LOCALHOST_IP, jamesServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(FROM, PASSWORD) .select(IMAPMessageReader.INBOX) .awaitMessage(awaitAtMostOneMinute); @@ -241,10 +241,10 @@ public class GatewayRemoteDeliveryIntegrationTest { dataProbe.addDomain(DEFAULT_DOMAIN); dataProbe.addUser(FROM, PASSWORD); - messageSender.connect(LOCALHOST_IP, SMTP_PORT) + messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) .sendMessage(FROM, RECIPIENT); - imapMessageReader.connect(LOCALHOST_IP, IMAP_PORT) + imapMessageReader.connect(LOCALHOST_IP, jamesServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(FROM, PASSWORD) .select(IMAPMessageReader.INBOX) .awaitMessage(awaitAtMostOneMinute); http://git-wip-us.apache.org/repos/asf/james-project/blob/60b1d219/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/MailetErrorsTest.java ---------------------------------------------------------------------- diff --git a/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/MailetErrorsTest.java b/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/MailetErrorsTest.java index 0dc9ed0..5657b01 100644 --- a/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/MailetErrorsTest.java +++ b/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/MailetErrorsTest.java @@ -24,7 +24,6 @@ import static org.apache.james.mailets.configuration.CommonProcessors.ERROR_REPO import static org.apache.james.mailets.configuration.Constants.DEFAULT_DOMAIN; import static org.apache.james.mailets.configuration.Constants.FROM; import static org.apache.james.mailets.configuration.Constants.LOCALHOST_IP; -import static org.apache.james.mailets.configuration.Constants.SMTP_PORT; import static org.apache.james.mailets.configuration.Constants.awaitAtMostOneMinute; import org.apache.james.mailets.configuration.CommonProcessors; @@ -32,6 +31,7 @@ import org.apache.james.mailets.configuration.MailetConfiguration; import org.apache.james.mailets.configuration.MailetContainer; import org.apache.james.mailets.configuration.ProcessorConfiguration; import org.apache.james.mailrepository.api.MailRepositoryUrl; +import org.apache.james.modules.protocols.SmtpGuiceProbe; import org.apache.james.transport.mailets.ErrorMailet; import org.apache.james.transport.mailets.ErrorMatcher; import org.apache.james.transport.mailets.NoopMailet; @@ -80,7 +80,7 @@ public class MailetErrorsTest { .build(temporaryFolder); MailRepositoryProbeImpl probe = jamesServer.getProbe(MailRepositoryProbeImpl.class); - smtpMessageSender.connect(LOCALHOST_IP, SMTP_PORT).sendMessage(FROM, FROM); + smtpMessageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()).sendMessage(FROM, FROM); awaitAtMostOneMinute.until(() -> probe.getRepositoryMailCount(ERROR_REPOSITORY) == 1); } @@ -99,7 +99,7 @@ public class MailetErrorsTest { .build(temporaryFolder); MailRepositoryProbeImpl probe = jamesServer.getProbe(MailRepositoryProbeImpl.class); - smtpMessageSender.connect(LOCALHOST_IP, SMTP_PORT).sendMessage(FROM, FROM); + smtpMessageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()).sendMessage(FROM, FROM); awaitAtMostOneMinute.until(() -> probe.getRepositoryMailCount(ERROR_REPOSITORY) == 1); } @@ -120,7 +120,7 @@ public class MailetErrorsTest { .build(temporaryFolder); MailRepositoryProbeImpl probe = jamesServer.getProbe(MailRepositoryProbeImpl.class); - smtpMessageSender.connect(LOCALHOST_IP, SMTP_PORT).sendMessage(FROM, FROM); + smtpMessageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()).sendMessage(FROM, FROM); awaitAtMostOneMinute.until(() -> probe.getRepositoryMailCount(CUSTOM_REPOSITORY) == 1); @@ -142,7 +142,7 @@ public class MailetErrorsTest { .build(temporaryFolder); MailRepositoryProbeImpl probe = jamesServer.getProbe(MailRepositoryProbeImpl.class); - smtpMessageSender.connect(LOCALHOST_IP, SMTP_PORT).sendMessage(FROM, FROM); + smtpMessageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()).sendMessage(FROM, FROM); awaitAtMostOneMinute.until(() -> probe.getRepositoryMailCount(CUSTOM_REPOSITORY) == 1); } @@ -167,7 +167,7 @@ public class MailetErrorsTest { .build(temporaryFolder); MailRepositoryProbeImpl probe = jamesServer.getProbe(MailRepositoryProbeImpl.class); - smtpMessageSender.connect(LOCALHOST_IP, SMTP_PORT).sendMessage(FROM, FROM); + smtpMessageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()).sendMessage(FROM, FROM); awaitAtMostOneMinute.until(() -> probe.getRepositoryMailCount(CUSTOM_REPOSITORY) == 1); } @@ -192,7 +192,7 @@ public class MailetErrorsTest { .build(temporaryFolder); MailRepositoryProbeImpl probe = jamesServer.getProbe(MailRepositoryProbeImpl.class); - smtpMessageSender.connect(LOCALHOST_IP, SMTP_PORT).sendMessage(FROM, FROM); + smtpMessageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()).sendMessage(FROM, FROM); awaitAtMostOneMinute.until(() -> probe.getRepositoryMailCount(CUSTOM_REPOSITORY) == 1); } @@ -211,7 +211,7 @@ public class MailetErrorsTest { .build(temporaryFolder); MailRepositoryProbeImpl probe = jamesServer.getProbe(MailRepositoryProbeImpl.class); - smtpMessageSender.connect(LOCALHOST_IP, SMTP_PORT).sendMessage(FROM, FROM); + smtpMessageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()).sendMessage(FROM, FROM); awaitAtMostOneMinute.until(() -> probe.getRepositoryMailCount(ERROR_REPOSITORY) == 1); } @@ -230,7 +230,7 @@ public class MailetErrorsTest { .build(temporaryFolder); MailRepositoryProbeImpl probe = jamesServer.getProbe(MailRepositoryProbeImpl.class); - smtpMessageSender.connect(LOCALHOST_IP, SMTP_PORT).sendMessage(FROM, FROM); + smtpMessageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()).sendMessage(FROM, FROM); awaitAtMostOneMinute.until(() -> probe.getRepositoryMailCount(ERROR_REPOSITORY) == 1); } @@ -251,7 +251,7 @@ public class MailetErrorsTest { .build(temporaryFolder); MailRepositoryProbeImpl probe = jamesServer.getProbe(MailRepositoryProbeImpl.class); - smtpMessageSender.connect(LOCALHOST_IP, SMTP_PORT).sendMessage(FROM, FROM); + smtpMessageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()).sendMessage(FROM, FROM); awaitAtMostOneMinute.until(() -> probe.getRepositoryMailCount(CUSTOM_REPOSITORY) == 1); } @@ -272,7 +272,7 @@ public class MailetErrorsTest { .build(temporaryFolder); MailRepositoryProbeImpl probe = jamesServer.getProbe(MailRepositoryProbeImpl.class); - smtpMessageSender.connect(LOCALHOST_IP, SMTP_PORT).sendMessage(FROM, FROM); + smtpMessageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()).sendMessage(FROM, FROM); awaitAtMostOneMinute.until(() -> probe.getRepositoryMailCount(CUSTOM_REPOSITORY) == 1); } @@ -297,7 +297,7 @@ public class MailetErrorsTest { .build(temporaryFolder); MailRepositoryProbeImpl probe = jamesServer.getProbe(MailRepositoryProbeImpl.class); - smtpMessageSender.connect(LOCALHOST_IP, SMTP_PORT).sendMessage(FROM, FROM); + smtpMessageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()).sendMessage(FROM, FROM); awaitAtMostOneMinute.until(() -> probe.getRepositoryMailCount(CUSTOM_REPOSITORY) == 1); } @@ -322,7 +322,7 @@ public class MailetErrorsTest { .build(temporaryFolder); MailRepositoryProbeImpl probe = jamesServer.getProbe(MailRepositoryProbeImpl.class); - smtpMessageSender.connect(LOCALHOST_IP, SMTP_PORT).sendMessage(FROM, FROM); + smtpMessageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()).sendMessage(FROM, FROM); awaitAtMostOneMinute.until(() -> probe.getRepositoryMailCount(CUSTOM_REPOSITORY) == 1); } @@ -347,7 +347,7 @@ public class MailetErrorsTest { .build(temporaryFolder); MailRepositoryProbeImpl probe = jamesServer.getProbe(MailRepositoryProbeImpl.class); - smtpMessageSender.connect(LOCALHOST_IP, SMTP_PORT).sendMessage(FROM, FROM); + smtpMessageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()).sendMessage(FROM, FROM); awaitAtMostOneMinute.until(() -> probe.getRepositoryMailCount(CUSTOM_REPOSITORY) == 1); } @@ -372,7 +372,7 @@ public class MailetErrorsTest { .build(temporaryFolder); MailRepositoryProbeImpl probe = jamesServer.getProbe(MailRepositoryProbeImpl.class); - smtpMessageSender.connect(LOCALHOST_IP, SMTP_PORT).sendMessage(FROM, FROM); + smtpMessageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()).sendMessage(FROM, FROM); awaitAtMostOneMinute.until(() -> probe.getRepositoryMailCount(CUSTOM_REPOSITORY) == 1); } @@ -401,7 +401,7 @@ public class MailetErrorsTest { .build(temporaryFolder); MailRepositoryProbeImpl probe = jamesServer.getProbe(MailRepositoryProbeImpl.class); - smtpMessageSender.connect(LOCALHOST_IP, SMTP_PORT).sendMessage(FROM, FROM); + smtpMessageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()).sendMessage(FROM, FROM); awaitAtMostOneMinute.until(() -> probe.getRepositoryMailCount(CUSTOM_REPOSITORY) == 1); } @@ -430,7 +430,7 @@ public class MailetErrorsTest { .build(temporaryFolder); MailRepositoryProbeImpl probe = jamesServer.getProbe(MailRepositoryProbeImpl.class); - smtpMessageSender.connect(LOCALHOST_IP, SMTP_PORT).sendMessage(FROM, FROM); + smtpMessageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()).sendMessage(FROM, FROM); awaitAtMostOneMinute.until(() -> probe.getRepositoryMailCount(ERROR_REPOSITORY) == 1); } @@ -459,7 +459,7 @@ public class MailetErrorsTest { .build(temporaryFolder); MailRepositoryProbeImpl probe = jamesServer.getProbe(MailRepositoryProbeImpl.class); - smtpMessageSender.connect(LOCALHOST_IP, SMTP_PORT).sendMessage(FROM, FROM); + smtpMessageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()).sendMessage(FROM, FROM); awaitAtMostOneMinute.until(() -> probe.getRepositoryMailCount(CUSTOM_REPOSITORY) == 1); } @@ -488,7 +488,7 @@ public class MailetErrorsTest { .build(temporaryFolder); MailRepositoryProbeImpl probe = jamesServer.getProbe(MailRepositoryProbeImpl.class); - smtpMessageSender.connect(LOCALHOST_IP, SMTP_PORT).sendMessage(FROM, FROM); + smtpMessageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()).sendMessage(FROM, FROM); awaitAtMostOneMinute.until(() -> probe.getRepositoryMailCount(ERROR_REPOSITORY) == 1); } http://git-wip-us.apache.org/repos/asf/james-project/blob/60b1d219/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/NetworkMatcherIntegrationTest.java ---------------------------------------------------------------------- diff --git a/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/NetworkMatcherIntegrationTest.java b/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/NetworkMatcherIntegrationTest.java index 7132860..f355a69 100644 --- a/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/NetworkMatcherIntegrationTest.java +++ b/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/NetworkMatcherIntegrationTest.java @@ -20,10 +20,8 @@ package org.apache.james.mailets; import static org.apache.james.mailets.configuration.Constants.DEFAULT_DOMAIN; -import static org.apache.james.mailets.configuration.Constants.IMAP_PORT; import static org.apache.james.mailets.configuration.Constants.LOCALHOST_IP; import static org.apache.james.mailets.configuration.Constants.PASSWORD; -import static org.apache.james.mailets.configuration.Constants.SMTP_PORT; import static org.apache.james.mailets.configuration.Constants.awaitAtMostOneMinute; import static org.assertj.core.api.Assertions.assertThat; @@ -32,6 +30,8 @@ import org.apache.james.mailets.configuration.CommonProcessors; import org.apache.james.mailets.configuration.MailetConfiguration; import org.apache.james.mailets.configuration.ProcessorConfiguration; import org.apache.james.mailrepository.api.MailRepositoryUrl; +import org.apache.james.modules.protocols.ImapGuiceProbe; +import org.apache.james.modules.protocols.SmtpGuiceProbe; import org.apache.james.probe.DataProbe; import org.apache.james.transport.mailets.ToProcessor; import org.apache.james.transport.mailets.ToRepository; @@ -96,11 +96,11 @@ public class NetworkMatcherIntegrationTest { .addProperty("processor", ProcessorConfiguration.STATE_TRANSPORT)) .addMailet(toRepository())); - messageSender.connect(LOCALHOST_IP, SMTP_PORT) + messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) .authenticate(FROM, PASSWORD) .sendMessage(FROM, FROM); - imapMessageReader.connect(LOCALHOST_IP, IMAP_PORT) + imapMessageReader.connect(LOCALHOST_IP, jamesServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(FROM, PASSWORD) .select(IMAPMessageReader.INBOX) .awaitMessage(awaitAtMostOneMinute); @@ -116,11 +116,11 @@ public class NetworkMatcherIntegrationTest { .addProperty("processor", ProcessorConfiguration.STATE_TRANSPORT)) .addMailet(toRepository())); - messageSender.connect(LOCALHOST_IP, SMTP_PORT) + messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) .authenticate(FROM, PASSWORD) .sendMessage(FROM, FROM); - imapMessageReader.connect(LOCALHOST_IP, IMAP_PORT) + imapMessageReader.connect(LOCALHOST_IP, jamesServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(FROM, PASSWORD) .select(IMAPMessageReader.INBOX) .awaitMessage(awaitAtMostOneMinute); @@ -136,11 +136,11 @@ public class NetworkMatcherIntegrationTest { .addProperty("processor", ProcessorConfiguration.STATE_TRANSPORT)) .addMailet(toRepository())); - messageSender.connect(LOCALHOST_IP, SMTP_PORT) + messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) .authenticate(FROM, PASSWORD) .sendMessage(FROM, FROM); - imapMessageReader.connect(LOCALHOST_IP, IMAP_PORT) + imapMessageReader.connect(LOCALHOST_IP, jamesServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(FROM, PASSWORD) .select(IMAPMessageReader.INBOX) .awaitMessage(awaitAtMostOneMinute); @@ -156,11 +156,11 @@ public class NetworkMatcherIntegrationTest { .addProperty("processor", ProcessorConfiguration.STATE_TRANSPORT)) .addMailet(toRepository())); - messageSender.connect(LOCALHOST_IP, SMTP_PORT) + messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) .authenticate(FROM, PASSWORD) .sendMessage(FROM, FROM); - imapMessageReader.connect(LOCALHOST_IP, IMAP_PORT) + imapMessageReader.connect(LOCALHOST_IP, jamesServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(FROM, PASSWORD) .select(IMAPMessageReader.INBOX) .awaitMessage(awaitAtMostOneMinute); @@ -176,11 +176,11 @@ public class NetworkMatcherIntegrationTest { .addProperty("processor", ProcessorConfiguration.STATE_TRANSPORT)) .addMailet(toRepository())); - messageSender.connect(LOCALHOST_IP, SMTP_PORT) + messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) .authenticate(FROM, PASSWORD) .sendMessage(FROM, FROM); - imapMessageReader.connect(LOCALHOST_IP, IMAP_PORT) + imapMessageReader.connect(LOCALHOST_IP, jamesServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(FROM, PASSWORD) .select(IMAPMessageReader.INBOX) .awaitMessage(awaitAtMostOneMinute); @@ -196,11 +196,11 @@ public class NetworkMatcherIntegrationTest { .addProperty("processor", ProcessorConfiguration.STATE_TRANSPORT)) .addMailet(toRepository())); - messageSender.connect(LOCALHOST_IP, SMTP_PORT) + messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) .authenticate(FROM, PASSWORD) .sendMessage(FROM, FROM); - imapMessageReader.connect(LOCALHOST_IP, IMAP_PORT) + imapMessageReader.connect(LOCALHOST_IP, jamesServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(FROM, PASSWORD) .select(IMAPMessageReader.INBOX) .awaitMessage(awaitAtMostOneMinute); @@ -216,14 +216,14 @@ public class NetworkMatcherIntegrationTest { .addProperty("processor", ProcessorConfiguration.STATE_TRANSPORT)) .addMailet(toRepository())); - messageSender.connect(LOCALHOST_IP, SMTP_PORT) + messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) .authenticate(FROM, PASSWORD) .sendMessage(FROM, FROM); MailRepositoryProbeImpl repositoryProbe = jamesServer.getProbe(MailRepositoryProbeImpl.class); awaitAtMostOneMinute.until(() -> repositoryProbe.getRepositoryMailCount(DROPPED_MAILS) == 1); assertThat( - imapMessageReader.connect(LOCALHOST_IP, IMAP_PORT) + imapMessageReader.connect(LOCALHOST_IP, jamesServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(FROM, PASSWORD) .select(IMAPMessageReader.INBOX) .hasAMessage()) @@ -240,14 +240,14 @@ public class NetworkMatcherIntegrationTest { .addProperty("processor", ProcessorConfiguration.STATE_TRANSPORT)) .addMailet(toRepository())); - messageSender.connect(LOCALHOST_IP, SMTP_PORT) + messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) .authenticate(FROM, PASSWORD) .sendMessage(FROM, FROM); MailRepositoryProbeImpl repositoryProbe = jamesServer.getProbe(MailRepositoryProbeImpl.class); awaitAtMostOneMinute.until(() -> repositoryProbe.getRepositoryMailCount(DROPPED_MAILS) == 1); assertThat( - imapMessageReader.connect(LOCALHOST_IP, IMAP_PORT) + imapMessageReader.connect(LOCALHOST_IP, jamesServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(FROM, PASSWORD) .select(IMAPMessageReader.INBOX) .hasAMessage()) http://git-wip-us.apache.org/repos/asf/james-project/blob/60b1d219/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/RecipientRewriteTableIntegrationTest.java ---------------------------------------------------------------------- diff --git a/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/RecipientRewriteTableIntegrationTest.java b/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/RecipientRewriteTableIntegrationTest.java index 4bc8a3c..2b5d709 100644 --- a/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/RecipientRewriteTableIntegrationTest.java +++ b/server/mailet/integration-testing/src/test/java/org/apache/james/mailets/RecipientRewriteTableIntegrationTest.java @@ -20,13 +20,13 @@ package org.apache.james.mailets; import static org.apache.james.mailets.configuration.Constants.DEFAULT_DOMAIN; -import static org.apache.james.mailets.configuration.Constants.IMAP_PORT; import static org.apache.james.mailets.configuration.Constants.LOCALHOST_IP; import static org.apache.james.mailets.configuration.Constants.PASSWORD; -import static org.apache.james.mailets.configuration.Constants.SMTP_PORT; import static org.apache.james.mailets.configuration.Constants.awaitAtMostOneMinute; import static org.assertj.core.api.Assertions.assertThat; +import org.apache.james.modules.protocols.ImapGuiceProbe; +import org.apache.james.modules.protocols.SmtpGuiceProbe; import org.apache.james.probe.DataProbe; import org.apache.james.utils.DataProbeImpl; import org.apache.james.utils.IMAPMessageReader; @@ -81,10 +81,10 @@ public class RecipientRewriteTableIntegrationTest { @Test public void rrtServiceShouldNotImpactRecipientsNotMatchingAnyRRT() throws Exception { - messageSender.connect(LOCALHOST_IP, SMTP_PORT) + messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) .sendMessage(FROM, RECIPIENT); - imapMessageReader.connect(LOCALHOST_IP, IMAP_PORT) + imapMessageReader.connect(LOCALHOST_IP, jamesServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(RECIPIENT, PASSWORD) .select(IMAPMessageReader.INBOX) .awaitMessage(awaitAtMostOneMinute); @@ -96,15 +96,15 @@ public class RecipientRewriteTableIntegrationTest { dataProbe.addAddressMapping(RECIPIENT_LOCAL_PART, DEFAULT_DOMAIN, ANY_AT_JAMES); dataProbe.addAddressMapping(RECIPIENT_LOCAL_PART, DEFAULT_DOMAIN, OTHER_AT_JAMES); - messageSender.connect(LOCALHOST_IP, SMTP_PORT) + messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) .sendMessage(FROM, RECIPIENT); - imapMessageReader.connect(LOCALHOST_IP, IMAP_PORT) + imapMessageReader.connect(LOCALHOST_IP, jamesServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(ANY_AT_JAMES, PASSWORD) .select(IMAPMessageReader.INBOX) .awaitMessage(awaitAtMostOneMinute); assertThat(imapMessageReader.readFirstMessage()).isNotNull(); - imapMessageReader.connect(LOCALHOST_IP, IMAP_PORT) + imapMessageReader.connect(LOCALHOST_IP, jamesServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(OTHER_AT_JAMES, PASSWORD) .select(IMAPMessageReader.INBOX) .awaitMessage(awaitAtMostOneMinute); @@ -116,10 +116,10 @@ public class RecipientRewriteTableIntegrationTest { dataProbe.addAddressMapping(RECIPIENT_LOCAL_PART, DEFAULT_DOMAIN, ANY_AT_JAMES); dataProbe.addAddressMapping(RECIPIENT_LOCAL_PART, DEFAULT_DOMAIN, OTHER_AT_JAMES); - messageSender.connect(LOCALHOST_IP, SMTP_PORT) + messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) .sendMessage(FROM, RECIPIENT); - imapMessageReader.connect(LOCALHOST_IP, IMAP_PORT) + imapMessageReader.connect(LOCALHOST_IP, jamesServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(RECIPIENT, PASSWORD) .select(IMAPMessageReader.INBOX) .awaitNoMessage(awaitAtMostOneMinute); @@ -135,15 +135,15 @@ public class RecipientRewriteTableIntegrationTest { dataProbe.addAddressMapping(RECIPIENT_LOCAL_PART, DEFAULT_DOMAIN, nonDomainUser); dataProbe.addAddressMapping(RECIPIENT_LOCAL_PART, DEFAULT_DOMAIN, OTHER_AT_JAMES); - messageSender.connect(LOCALHOST_IP, SMTP_PORT) + messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) .sendMessage(FROM, RECIPIENT); - imapMessageReader.connect(LOCALHOST_IP, IMAP_PORT) + imapMessageReader.connect(LOCALHOST_IP, jamesServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(localUser, PASSWORD) .select(IMAPMessageReader.INBOX) .awaitMessage(awaitAtMostOneMinute); assertThat(imapMessageReader.readFirstMessage()).isNotNull(); - imapMessageReader.connect(LOCALHOST_IP, IMAP_PORT) + imapMessageReader.connect(LOCALHOST_IP, jamesServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(OTHER_AT_JAMES, PASSWORD) .select(IMAPMessageReader.INBOX) .awaitMessage(awaitAtMostOneMinute); @@ -155,10 +155,10 @@ public class RecipientRewriteTableIntegrationTest { dataProbe.addDomainAliasMapping(DEFAULT_DOMAIN, JAMES_ANOTHER_DOMAIN); dataProbe.addUser(ANY_AT_ANOTHER_DOMAIN, PASSWORD); - messageSender.connect(LOCALHOST_IP, SMTP_PORT) + messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) .sendMessage(FROM, ANY_AT_JAMES); - imapMessageReader.connect(LOCALHOST_IP, IMAP_PORT) + imapMessageReader.connect(LOCALHOST_IP, jamesServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(ANY_AT_ANOTHER_DOMAIN, PASSWORD) .select(IMAPMessageReader.INBOX) .awaitMessage(awaitAtMostOneMinute); @@ -170,10 +170,10 @@ public class RecipientRewriteTableIntegrationTest { dataProbe.addDomainAliasMapping(DEFAULT_DOMAIN, JAMES_ANOTHER_DOMAIN); dataProbe.addUser(ANY_AT_ANOTHER_DOMAIN, PASSWORD); - messageSender.connect(LOCALHOST_IP, SMTP_PORT) + messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) .sendMessage(FROM, ANY_AT_JAMES); - imapMessageReader.connect(LOCALHOST_IP, IMAP_PORT) + imapMessageReader.connect(LOCALHOST_IP, jamesServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(ANY_AT_JAMES, PASSWORD) .select(IMAPMessageReader.INBOX) .awaitNoMessage(awaitAtMostOneMinute); @@ -185,14 +185,14 @@ public class RecipientRewriteTableIntegrationTest { dataProbe.addForwardMapping(RECIPIENT_LOCAL_PART, DEFAULT_DOMAIN, ANY_AT_JAMES); dataProbe.addForwardMapping(RECIPIENT_LOCAL_PART, DEFAULT_DOMAIN, OTHER_AT_JAMES); - messageSender.connect(LOCALHOST_IP, SMTP_PORT) + messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) .sendMessage(FROM, RECIPIENT); - imapMessageReader.connect(LOCALHOST_IP, IMAP_PORT) + imapMessageReader.connect(LOCALHOST_IP, jamesServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(ANY_AT_JAMES, PASSWORD) .select(IMAPMessageReader.INBOX) .awaitMessage(awaitAtMostOneMinute); - imapMessageReader.connect(LOCALHOST_IP, IMAP_PORT) + imapMessageReader.connect(LOCALHOST_IP, jamesServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(OTHER_AT_JAMES, PASSWORD) .select(IMAPMessageReader.INBOX) .awaitMessage(awaitAtMostOneMinute); @@ -205,10 +205,10 @@ public class RecipientRewriteTableIntegrationTest { dataProbe.addForwardMapping(ANY_LOCAL_PART, DEFAULT_DOMAIN, OTHER_AT_JAMES); - messageSender.connect(LOCALHOST_IP, SMTP_PORT) + messageSender.connect(LOCALHOST_IP, jamesServer.getProbe(SmtpGuiceProbe.class).getSmtpPort()) .sendMessage(FROM, GROUP); - imapMessageReader.connect(LOCALHOST_IP, IMAP_PORT) + imapMessageReader.connect(LOCALHOST_IP, jamesServer.getProbe(ImapGuiceProbe.class).getImapPort()) .login(OTHER_AT_JAMES, PASSWORD) .select(IMAPMessageReader.INBOX) .awaitMessage(awaitAtMostOneMinute); --------------------------------------------------------------------- To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org