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/07/26 09:17:50 UTC

svn commit: r559730 - in /mina: branches/1.0/core/src/main/java/org/apache/mina/filter/codec/support/ branches/1.1/core/src/main/java/org/apache/mina/filter/codec/support/ trunk/core/src/main/java/org/apache/mina/filter/codec/support/

Author: trustin
Date: Thu Jul 26 00:17:47 2007
New Revision: 559730

URL: http://svn.apache.org/viewvc?view=rev&rev=559730
Log:
Fixed issue: DIRMINA-405 (IoSession.suspendRead() doesn't suspend read operation immediately when ProtocolCodecFilter is used.)
* IoSession.receivedMessage was being increased too early.


Modified:
    mina/branches/1.0/core/src/main/java/org/apache/mina/filter/codec/support/SimpleProtocolDecoderOutput.java
    mina/branches/1.1/core/src/main/java/org/apache/mina/filter/codec/support/SimpleProtocolDecoderOutput.java
    mina/trunk/core/src/main/java/org/apache/mina/filter/codec/support/SimpleProtocolDecoderOutput.java

Modified: mina/branches/1.0/core/src/main/java/org/apache/mina/filter/codec/support/SimpleProtocolDecoderOutput.java
URL: http://svn.apache.org/viewvc/mina/branches/1.0/core/src/main/java/org/apache/mina/filter/codec/support/SimpleProtocolDecoderOutput.java?view=diff&rev=559730&r1=559729&r2=559730
==============================================================================
--- mina/branches/1.0/core/src/main/java/org/apache/mina/filter/codec/support/SimpleProtocolDecoderOutput.java (original)
+++ mina/branches/1.0/core/src/main/java/org/apache/mina/filter/codec/support/SimpleProtocolDecoderOutput.java Thu Jul 26 00:17:47 2007
@@ -46,14 +46,14 @@
     
     public void write(Object message) {
         messageQueue.push(message);
-        if (session instanceof BaseIoSession) {
-            ((BaseIoSession) session).increaseReadMessages();
-        }
     }
 
     public void flush() {
         while (!messageQueue.isEmpty()) {
             if (session.getTrafficMask().isReadable()) {
+                if (session instanceof BaseIoSession) {
+                    ((BaseIoSession) session).increaseReadMessages();
+                }
                 nextFilter.messageReceived(session, messageQueue.pop());
             } else {
                 break;

Modified: mina/branches/1.1/core/src/main/java/org/apache/mina/filter/codec/support/SimpleProtocolDecoderOutput.java
URL: http://svn.apache.org/viewvc/mina/branches/1.1/core/src/main/java/org/apache/mina/filter/codec/support/SimpleProtocolDecoderOutput.java?view=diff&rev=559730&r1=559729&r2=559730
==============================================================================
--- mina/branches/1.1/core/src/main/java/org/apache/mina/filter/codec/support/SimpleProtocolDecoderOutput.java (original)
+++ mina/branches/1.1/core/src/main/java/org/apache/mina/filter/codec/support/SimpleProtocolDecoderOutput.java Thu Jul 26 00:17:47 2007
@@ -48,14 +48,14 @@
     
     public void write(Object message) {
         messageQueue.add(message);
-        if (session instanceof BaseIoSession) {
-            ((BaseIoSession) session).increaseReadMessages();
-        }
     }
 
     public void flush() {
         while (!messageQueue.isEmpty()) {
             if (session.getTrafficMask().isReadable()) {
+                if (session instanceof BaseIoSession) {
+                    ((BaseIoSession) session).increaseReadMessages();
+                }
                 nextFilter.messageReceived(session, messageQueue.remove(0));
             } else {
                 break;

Modified: mina/trunk/core/src/main/java/org/apache/mina/filter/codec/support/SimpleProtocolDecoderOutput.java
URL: http://svn.apache.org/viewvc/mina/trunk/core/src/main/java/org/apache/mina/filter/codec/support/SimpleProtocolDecoderOutput.java?view=diff&rev=559730&r1=559729&r2=559730
==============================================================================
--- mina/trunk/core/src/main/java/org/apache/mina/filter/codec/support/SimpleProtocolDecoderOutput.java (original)
+++ mina/trunk/core/src/main/java/org/apache/mina/filter/codec/support/SimpleProtocolDecoderOutput.java Thu Jul 26 00:17:47 2007
@@ -52,14 +52,14 @@
         }
 
         messageQueue.offer(message);
-        if (session instanceof BaseIoSession) {
-            ((BaseIoSession) session).increaseReadMessages();
-        }
     }
 
     public void flush() {
         while (!messageQueue.isEmpty()) {
             if (session.getTrafficMask().isReadable()) {
+                if (session instanceof BaseIoSession) {
+                    ((BaseIoSession) session).increaseReadMessages();
+                }
                 nextFilter.messageReceived(session, messageQueue.poll());
             } else {
                 break;