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 no...@apache.org on 2010/06/09 21:56:44 UTC
svn commit: r953134 - in /james/server/trunk:
imapserver/src/main/java/org/apache/james/imapserver/netty/
pop3server/src/main/java/org/apache/james/pop3server/netty/
remotemanager/src/main/java/org/apache/james/remotemanager/netty/
smtpserver/src/main/...
Author: norman
Date: Wed Jun 9 19:56:44 2010
New Revision: 953134
URL: http://svn.apache.org/viewvc?rev=953134&view=rev
Log:
We need to add the ChannelGroupHandler in the factory so it is added on each connection. This should fix the waiting connections (JAMES-1014)
Modified:
james/server/trunk/imapserver/src/main/java/org/apache/james/imapserver/netty/NioImapServer.java
james/server/trunk/pop3server/src/main/java/org/apache/james/pop3server/netty/NioPOP3Server.java
james/server/trunk/remotemanager/src/main/java/org/apache/james/remotemanager/netty/NioRemoteManager.java
james/server/trunk/smtpserver/src/main/java/org/apache/james/smtpserver/netty/NioSMTPServer.java
Modified: james/server/trunk/imapserver/src/main/java/org/apache/james/imapserver/netty/NioImapServer.java
URL: http://svn.apache.org/viewvc/james/server/trunk/imapserver/src/main/java/org/apache/james/imapserver/netty/NioImapServer.java?rev=953134&r1=953133&r2=953134&view=diff
==============================================================================
--- james/server/trunk/imapserver/src/main/java/org/apache/james/imapserver/netty/NioImapServer.java (original)
+++ james/server/trunk/imapserver/src/main/java/org/apache/james/imapserver/netty/NioImapServer.java Wed Jun 9 19:56:44 2010
@@ -29,9 +29,11 @@ import org.apache.james.imap.api.process
import org.apache.james.imap.decode.ImapDecoder;
import org.apache.james.imap.encode.ImapEncoder;
import org.apache.james.imap.main.ImapRequestStreamHandler;
+import org.apache.james.protocols.impl.ChannelGroupHandler;
import org.apache.james.socket.netty.AbstractConfigurableAsyncServer;
import org.jboss.netty.channel.ChannelPipeline;
import org.jboss.netty.channel.ChannelPipelineFactory;
+import org.jboss.netty.channel.group.ChannelGroup;
import org.jboss.netty.handler.connection.ConnectionLimitUpstreamHandler;
import org.jboss.netty.handler.connection.ConnectionPerIpLimitUpstreamHandler;
import org.jboss.netty.handler.ssl.SslHandler;
@@ -90,11 +92,14 @@ public class NioImapServer extends Abstr
}
@Override
- protected ChannelPipelineFactory createPipelineFactory() {
+ protected ChannelPipelineFactory createPipelineFactory(final ChannelGroup group) {
return new ChannelPipelineFactory() {
+ private ChannelGroupHandler groupHandler = new ChannelGroupHandler(group);
public ChannelPipeline getPipeline() throws Exception {
ChannelPipeline pipeline = pipeline();
+ pipeline.addLast("groupHandler", groupHandler);
+
pipeline.addLast("connectionLimit", new ConnectionLimitUpstreamHandler(NioImapServer.this.connectionLimit));
pipeline.addLast("connectionPerIpLimit", new ConnectionPerIpLimitUpstreamHandler(NioImapServer.this.connPerIP));
Modified: james/server/trunk/pop3server/src/main/java/org/apache/james/pop3server/netty/NioPOP3Server.java
URL: http://svn.apache.org/viewvc/james/server/trunk/pop3server/src/main/java/org/apache/james/pop3server/netty/NioPOP3Server.java?rev=953134&r1=953133&r2=953134&view=diff
==============================================================================
--- james/server/trunk/pop3server/src/main/java/org/apache/james/pop3server/netty/NioPOP3Server.java (original)
+++ james/server/trunk/pop3server/src/main/java/org/apache/james/pop3server/netty/NioPOP3Server.java Wed Jun 9 19:56:44 2010
@@ -29,6 +29,7 @@ import org.apache.james.protocols.impl.A
import org.apache.james.socket.netty.AbstractConfigurableAsyncServer;
import org.jboss.netty.channel.ChannelPipelineFactory;
import org.jboss.netty.channel.ChannelUpstreamHandler;
+import org.jboss.netty.channel.group.ChannelGroup;
import org.jboss.netty.handler.codec.oneone.OneToOneEncoder;
/**
@@ -108,15 +109,15 @@ public class NioPOP3Server extends Abstr
}
@Override
- protected ChannelPipelineFactory createPipelineFactory() {
- return new POP3ChannelPipelineFactory(getTimeout(), connectionLimit, connPerIP);
+ protected ChannelPipelineFactory createPipelineFactory(ChannelGroup group) {
+ return new POP3ChannelPipelineFactory(getTimeout(), connectionLimit, connPerIP, group);
}
private final class POP3ChannelPipelineFactory extends AbstractSSLAwareChannelPipelineFactory {
public POP3ChannelPipelineFactory(int timeout, int maxConnections,
- int maxConnectsPerIp) {
- super(timeout, maxConnections, maxConnectsPerIp);
+ int maxConnectsPerIp, ChannelGroup group) {
+ super(timeout, maxConnections, maxConnectsPerIp, group);
}
@Override
Modified: james/server/trunk/remotemanager/src/main/java/org/apache/james/remotemanager/netty/NioRemoteManager.java
URL: http://svn.apache.org/viewvc/james/server/trunk/remotemanager/src/main/java/org/apache/james/remotemanager/netty/NioRemoteManager.java?rev=953134&r1=953133&r2=953134&view=diff
==============================================================================
--- james/server/trunk/remotemanager/src/main/java/org/apache/james/remotemanager/netty/NioRemoteManager.java (original)
+++ james/server/trunk/remotemanager/src/main/java/org/apache/james/remotemanager/netty/NioRemoteManager.java Wed Jun 9 19:56:44 2010
@@ -32,6 +32,7 @@ import org.apache.james.remotemanager.Re
import org.apache.james.socket.netty.AbstractConfigurableAsyncServer;
import org.jboss.netty.channel.ChannelPipelineFactory;
import org.jboss.netty.channel.ChannelUpstreamHandler;
+import org.jboss.netty.channel.group.ChannelGroup;
import org.jboss.netty.handler.codec.oneone.OneToOneEncoder;
@@ -108,15 +109,15 @@ public class NioRemoteManager extends Ab
}
@Override
- protected ChannelPipelineFactory createPipelineFactory() {
- return new RemoteManagerChannelPipelineFactory(getTimeout(), connectionLimit, connPerIP);
+ protected ChannelPipelineFactory createPipelineFactory(ChannelGroup group) {
+ return new RemoteManagerChannelPipelineFactory(getTimeout(), connectionLimit, connPerIP, group);
}
private final class RemoteManagerChannelPipelineFactory extends AbstractChannelPipelineFactory {
public RemoteManagerChannelPipelineFactory(int timeout,
- int maxConnections, int maxConnectsPerIp) {
- super(timeout, maxConnections, maxConnectsPerIp);
+ int maxConnections, int maxConnectsPerIp, ChannelGroup group) {
+ super(timeout, maxConnections, maxConnectsPerIp, group);
}
@Override
protected OneToOneEncoder createEncoder() {
Modified: james/server/trunk/smtpserver/src/main/java/org/apache/james/smtpserver/netty/NioSMTPServer.java
URL: http://svn.apache.org/viewvc/james/server/trunk/smtpserver/src/main/java/org/apache/james/smtpserver/netty/NioSMTPServer.java?rev=953134&r1=953133&r2=953134&view=diff
==============================================================================
--- james/server/trunk/smtpserver/src/main/java/org/apache/james/smtpserver/netty/NioSMTPServer.java (original)
+++ james/server/trunk/smtpserver/src/main/java/org/apache/james/smtpserver/netty/NioSMTPServer.java Wed Jun 9 19:56:44 2010
@@ -30,6 +30,7 @@ import org.apache.james.protocols.smtp.S
import org.apache.james.socket.netty.AbstractConfigurableAsyncServer;
import org.jboss.netty.channel.ChannelPipelineFactory;
import org.jboss.netty.channel.ChannelUpstreamHandler;
+import org.jboss.netty.channel.group.ChannelGroup;
import org.jboss.netty.handler.codec.oneone.OneToOneEncoder;
/**
@@ -273,16 +274,16 @@ public class NioSMTPServer extends Abstr
}
@Override
- protected ChannelPipelineFactory createPipelineFactory() {
- return new SMTPChannelPipelineFactory(getTimeout(), connectionLimit, connPerIP);
+ protected ChannelPipelineFactory createPipelineFactory(ChannelGroup group) {
+ return new SMTPChannelPipelineFactory(getTimeout(), connectionLimit, connPerIP, group);
}
private final class SMTPChannelPipelineFactory extends AbstractSSLAwareChannelPipelineFactory {
public SMTPChannelPipelineFactory(int timeout, int maxConnections,
- int maxConnectsPerIp) {
- super(timeout, maxConnections, maxConnectsPerIp);
+ int maxConnectsPerIp, ChannelGroup group) {
+ super(timeout, maxConnections, maxConnectsPerIp, group);
}
@Override
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org