You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@mina.apache.org by "Geoff Cadien (JIRA)" <ji...@apache.org> on 2008/02/01 22:19:08 UTC

[jira] Created: (DIRMINA-524) ProtocolCodecFilter should pass FileRegion to nextFilter in addition to IoBuffer

ProtocolCodecFilter should pass FileRegion to nextFilter in addition to IoBuffer
--------------------------------------------------------------------------------

                 Key: DIRMINA-524
                 URL: https://issues.apache.org/jira/browse/DIRMINA-524
             Project: MINA
          Issue Type: Bug
          Components: Filter
         Environment: jdk1.6.0_03 Linux x64
            Reporter: Geoff Cadien
             Fix For: 2.0.0-M1


ProtocolCodecFilter.filterWrite calls nextFilter.filterWrite directly without invoking the ProtocolEncoder if the WriteRequest message is an IoBuffer.  It should do the same if the message is a FileRegion.

Here is a quick patch:



Index: ProtocolCodecFilter.java
===================================================================
--- ProtocolCodecFilter.java    (revision 617648)
+++ ProtocolCodecFilter.java    (working copy)
@@ -25,6 +25,7 @@
 import org.apache.mina.common.AttributeKey;
 import org.apache.mina.common.DefaultWriteFuture;
 import org.apache.mina.common.DefaultWriteRequest;
+import org.apache.mina.common.FileRegion;
 import org.apache.mina.common.IoBuffer;
 import org.apache.mina.common.IoFilter;
 import org.apache.mina.common.IoFilterAdapter;
@@ -222,7 +223,7 @@
     public void filterWrite(NextFilter nextFilter, IoSession session,
             WriteRequest writeRequest) throws Exception {
         Object message = writeRequest.getMessage();
-        if (message instanceof IoBuffer) {
+        if (message instanceof IoBuffer || message instanceof FileRegion) {
             nextFilter.filterWrite(session, writeRequest);
             return;
         }

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Resolved: (DIRMINA-524) ProtocolCodecFilter should pass FileRegion to nextFilter in addition to IoBuffer

Posted by "Mike Heath (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/DIRMINA-524?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Mike Heath resolved DIRMINA-524.
--------------------------------

    Resolution: Fixed

Fixed, thanks Geoff for the patch.

> ProtocolCodecFilter should pass FileRegion to nextFilter in addition to IoBuffer
> --------------------------------------------------------------------------------
>
>                 Key: DIRMINA-524
>                 URL: https://issues.apache.org/jira/browse/DIRMINA-524
>             Project: MINA
>          Issue Type: Bug
>          Components: Filter
>         Environment: jdk1.6.0_03 Linux x64
>            Reporter: Geoff Cadien
>             Fix For: 2.0.0-M1
>
>
> ProtocolCodecFilter.filterWrite calls nextFilter.filterWrite directly without invoking the ProtocolEncoder if the WriteRequest message is an IoBuffer.  It should do the same if the message is a FileRegion.
> Here is a quick patch:
> Index: ProtocolCodecFilter.java
> ===================================================================
> --- ProtocolCodecFilter.java    (revision 617648)
> +++ ProtocolCodecFilter.java    (working copy)
> @@ -25,6 +25,7 @@
>  import org.apache.mina.common.AttributeKey;
>  import org.apache.mina.common.DefaultWriteFuture;
>  import org.apache.mina.common.DefaultWriteRequest;
> +import org.apache.mina.common.FileRegion;
>  import org.apache.mina.common.IoBuffer;
>  import org.apache.mina.common.IoFilter;
>  import org.apache.mina.common.IoFilterAdapter;
> @@ -222,7 +223,7 @@
>      public void filterWrite(NextFilter nextFilter, IoSession session,
>              WriteRequest writeRequest) throws Exception {
>          Object message = writeRequest.getMessage();
> -        if (message instanceof IoBuffer) {
> +        if (message instanceof IoBuffer || message instanceof FileRegion) {
>              nextFilter.filterWrite(session, writeRequest);
>              return;
>          }

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Closed: (DIRMINA-524) ProtocolCodecFilter should pass FileRegion to nextFilter in addition to IoBuffer

Posted by "Emmanuel Lecharny (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/DIRMINA-524?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Emmanuel Lecharny closed DIRMINA-524.
-------------------------------------


> ProtocolCodecFilter should pass FileRegion to nextFilter in addition to IoBuffer
> --------------------------------------------------------------------------------
>
>                 Key: DIRMINA-524
>                 URL: https://issues.apache.org/jira/browse/DIRMINA-524
>             Project: MINA
>          Issue Type: Bug
>          Components: Filter
>         Environment: jdk1.6.0_03 Linux x64
>            Reporter: Geoff Cadien
>             Fix For: 2.0.0-M1
>
>
> ProtocolCodecFilter.filterWrite calls nextFilter.filterWrite directly without invoking the ProtocolEncoder if the WriteRequest message is an IoBuffer.  It should do the same if the message is a FileRegion.
> Here is a quick patch:
> Index: ProtocolCodecFilter.java
> ===================================================================
> --- ProtocolCodecFilter.java    (revision 617648)
> +++ ProtocolCodecFilter.java    (working copy)
> @@ -25,6 +25,7 @@
>  import org.apache.mina.common.AttributeKey;
>  import org.apache.mina.common.DefaultWriteFuture;
>  import org.apache.mina.common.DefaultWriteRequest;
> +import org.apache.mina.common.FileRegion;
>  import org.apache.mina.common.IoBuffer;
>  import org.apache.mina.common.IoFilter;
>  import org.apache.mina.common.IoFilterAdapter;
> @@ -222,7 +223,7 @@
>      public void filterWrite(NextFilter nextFilter, IoSession session,
>              WriteRequest writeRequest) throws Exception {
>          Object message = writeRequest.getMessage();
> -        if (message instanceof IoBuffer) {
> +        if (message instanceof IoBuffer || message instanceof FileRegion) {
>              nextFilter.filterWrite(session, writeRequest);
>              return;
>          }

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.