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 2011/04/06 21:38:51 UTC

svn commit: r1089598 - in /james/server/trunk/imapserver/src/main/java/org/apache/james/imapserver/netty: ChannelImapResponseWriter.java ChannelWritableByteChannel.java

Author: norman
Date: Wed Apr  6 19:38:51 2011
New Revision: 1089598

URL: http://svn.apache.org/viewvc?rev=1089598&view=rev
Log:
Write Literal via ChunkStream which should increase performance and help to cut down memory footprint

Removed:
    james/server/trunk/imapserver/src/main/java/org/apache/james/imapserver/netty/ChannelWritableByteChannel.java
Modified:
    james/server/trunk/imapserver/src/main/java/org/apache/james/imapserver/netty/ChannelImapResponseWriter.java

Modified: james/server/trunk/imapserver/src/main/java/org/apache/james/imapserver/netty/ChannelImapResponseWriter.java
URL: http://svn.apache.org/viewvc/james/server/trunk/imapserver/src/main/java/org/apache/james/imapserver/netty/ChannelImapResponseWriter.java?rev=1089598&r1=1089597&r2=1089598&view=diff
==============================================================================
--- james/server/trunk/imapserver/src/main/java/org/apache/james/imapserver/netty/ChannelImapResponseWriter.java (original)
+++ james/server/trunk/imapserver/src/main/java/org/apache/james/imapserver/netty/ChannelImapResponseWriter.java Wed Apr  6 19:38:51 2011
@@ -21,12 +21,12 @@ package org.apache.james.imapserver.nett
 
 import java.io.IOException;
 import java.nio.ByteBuffer;
-import java.nio.channels.WritableByteChannel;
 
 import org.apache.james.imap.main.AbstractImapResponseWriter;
 import org.apache.james.imap.message.response.Literal;
 import org.jboss.netty.buffer.ChannelBuffers;
 import org.jboss.netty.channel.Channel;
+import org.jboss.netty.handler.stream.ChunkedStream;
 
 /**
  * {@link AbstractImapResponseWriter} implementation which writes the data to a
@@ -35,11 +35,9 @@ import org.jboss.netty.channel.Channel;
 public class ChannelImapResponseWriter extends AbstractImapResponseWriter {
 
     private Channel channel;
-    private WritableByteChannel wChannel;
 
     public ChannelImapResponseWriter(Channel channel) {
         this.channel = channel;
-        this.wChannel = new ChannelWritableByteChannel(channel);
     }
 
     /*
@@ -61,7 +59,7 @@ public class ChannelImapResponseWriter e
      * .james.imap.message.response.Literal)
      */
     protected void write(Literal literal) throws IOException {
-        literal.writeTo(wChannel);
+        channel.write(new ChunkedStream(literal.getInputStream()));
     }
 
 }



---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org