You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mina.apache.org by tr...@apache.org on 2007/08/22 13:49:53 UTC

svn commit: r568573 - in /mina/trunk/core/src: main/java/org/apache/mina/filter/codec/ test/java/org/apache/mina/filter/codec/serialization/ test/java/org/apache/mina/filter/codec/textline/

Author: trustin
Date: Wed Aug 22 04:49:52 2007
New Revision: 568573

URL: http://svn.apache.org/viewvc?rev=568573&view=rev
Log:
Simplified AbstractProtocolEncoderOutput

Modified:
    mina/trunk/core/src/main/java/org/apache/mina/filter/codec/AbstractProtocolEncoderOutput.java
    mina/trunk/core/src/main/java/org/apache/mina/filter/codec/ProtocolCodecFilter.java
    mina/trunk/core/src/test/java/org/apache/mina/filter/codec/serialization/ObjectSerializationTest.java
    mina/trunk/core/src/test/java/org/apache/mina/filter/codec/textline/TextLineEncoderTest.java

Modified: mina/trunk/core/src/main/java/org/apache/mina/filter/codec/AbstractProtocolEncoderOutput.java
URL: http://svn.apache.org/viewvc/mina/trunk/core/src/main/java/org/apache/mina/filter/codec/AbstractProtocolEncoderOutput.java?rev=568573&r1=568572&r2=568573&view=diff
==============================================================================
--- mina/trunk/core/src/main/java/org/apache/mina/filter/codec/AbstractProtocolEncoderOutput.java (original)
+++ mina/trunk/core/src/main/java/org/apache/mina/filter/codec/AbstractProtocolEncoderOutput.java Wed Aug 22 04:49:52 2007
@@ -23,7 +23,6 @@
 import java.util.Queue;
 
 import org.apache.mina.common.ByteBuffer;
-import org.apache.mina.common.WriteFuture;
 
 /**
  * A {@link ProtocolEncoderOutput} based on queue.
@@ -82,28 +81,4 @@
         newBuf.flip();
         bufferQueue.offer(newBuf);
     }
-
-    public WriteFuture flush() {
-        Queue<ByteBuffer> bufferQueue = this.bufferQueue;
-        WriteFuture future = null;
-        if (bufferQueue.isEmpty()) {
-            return null;
-        } else {
-            for (;;) {
-                ByteBuffer buf = bufferQueue.poll();
-                if (buf == null) {
-                    break;
-                }
-
-                // Flush only when the buffer has remaining.
-                if (buf.hasRemaining()) {
-                    future = doFlush(buf);
-                }
-            }
-        }
-
-        return future;
-    }
-
-    protected abstract WriteFuture doFlush(ByteBuffer buf);
 }

Modified: mina/trunk/core/src/main/java/org/apache/mina/filter/codec/ProtocolCodecFilter.java
URL: http://svn.apache.org/viewvc/mina/trunk/core/src/main/java/org/apache/mina/filter/codec/ProtocolCodecFilter.java?rev=568573&r1=568572&r2=568573&view=diff
==============================================================================
--- mina/trunk/core/src/main/java/org/apache/mina/filter/codec/ProtocolCodecFilter.java (original)
+++ mina/trunk/core/src/main/java/org/apache/mina/filter/codec/ProtocolCodecFilter.java Wed Aug 22 04:49:52 2007
@@ -375,11 +375,27 @@
             this.writeRequest = writeRequest;
         }
 
-        @Override
-        protected WriteFuture doFlush(ByteBuffer buf) {
-            WriteFuture future = new DefaultWriteFuture(session);
-            nextFilter.filterWrite(session, new EncodedWriteRequest(buf,
-                    future, writeRequest.getDestination()));
+        public WriteFuture flush() {
+            Queue<ByteBuffer> bufferQueue = getBufferQueue();
+            WriteFuture future = null;
+            for (;;) {
+                ByteBuffer buf = bufferQueue.poll();
+                if (buf == null) {
+                    break;
+                }
+
+                // Flush only when the buffer has remaining.
+                if (buf.hasRemaining()) {
+                    future = new DefaultWriteFuture(session);
+                    nextFilter.filterWrite(session, new EncodedWriteRequest(buf,
+                            future, writeRequest.getDestination()));
+                }
+            }
+
+            if (future == null) {
+                future = DefaultWriteFuture.newNotWrittenFuture(session);
+            }
+
             return future;
         }
     }

Modified: mina/trunk/core/src/test/java/org/apache/mina/filter/codec/serialization/ObjectSerializationTest.java
URL: http://svn.apache.org/viewvc/mina/trunk/core/src/test/java/org/apache/mina/filter/codec/serialization/ObjectSerializationTest.java?rev=568573&r1=568572&r2=568573&view=diff
==============================================================================
--- mina/trunk/core/src/test/java/org/apache/mina/filter/codec/serialization/ObjectSerializationTest.java (original)
+++ mina/trunk/core/src/test/java/org/apache/mina/filter/codec/serialization/ObjectSerializationTest.java Wed Aug 22 04:49:52 2007
@@ -53,8 +53,7 @@
 
         IoSession session = new MockIoSession();
         AbstractProtocolEncoderOutput out = new AbstractProtocolEncoderOutput() {
-            @Override
-            protected WriteFuture doFlush(ByteBuffer buf) {
+            public WriteFuture flush() {
                 return null;
             }
         };

Modified: mina/trunk/core/src/test/java/org/apache/mina/filter/codec/textline/TextLineEncoderTest.java
URL: http://svn.apache.org/viewvc/mina/trunk/core/src/test/java/org/apache/mina/filter/codec/textline/TextLineEncoderTest.java?rev=568573&r1=568572&r2=568573&view=diff
==============================================================================
--- mina/trunk/core/src/test/java/org/apache/mina/filter/codec/textline/TextLineEncoderTest.java (original)
+++ mina/trunk/core/src/test/java/org/apache/mina/filter/codec/textline/TextLineEncoderTest.java Wed Aug 22 04:49:52 2007
@@ -52,8 +52,7 @@
                 LineDelimiter.WINDOWS);
         IoSession session = new DummySession();
         AbstractProtocolEncoderOutput out = new AbstractProtocolEncoderOutput() {
-            @Override
-            protected WriteFuture doFlush(ByteBuffer buf) {
+            public WriteFuture flush() {
                 return null;
             }
         };