[ 
https://issues.apache.org/jira/browse/DIRMINA-601?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Geoff Cadien updated DIRMINA-601:
---------------------------------

    Attachment:     (was: sendfile-patches.zip)

> Add sendfile support to transport-apr
> -------------------------------------
>
>                 Key: DIRMINA-601
>                 URL: https://issues.apache.org/jira/browse/DIRMINA-601
>             Project: MINA
>          Issue Type: Improvement
>          Components: Core, Transport
>    Affects Versions: 2.0.0-M2
>            Reporter: Geoff Cadien
>         Attachments: sendfile-patches.zip
>
>
> I've take a shot at adding support for sendfile to transport-apr.  I've had 
> to make several changes because in the current code FileRegion is NIO 
> specific because of it's reliance on FileChannel.  I've made the following 
> changes:
> I've created an interface called SendableFile to take the place of using 
> FileChannel in FileRegion.  I've also created two implementations of this 
> interface, AprSendableFile and NioSendableFile.  The method of interest is 
> send(long position, long length) which is used to send the file.  Notice it 
> doesn't take an IoSession or a Channel as a parameter.  I tried using 
> generics to include  the proper subclass of IoSession but that didn't work 
> out very well. :-)
> There are still a couple of problems that need to be dealt with.  First and 
> foremost is that AbstractIoSession will create instances of DefaultFileRegion 
> in the write method when passed either a File or a FileChannel.  This causes 
> a problem because FileRegion is no longer NIO specific.  I don't have a 
> solution right now other than removing the code.
> The other problem is with FileRegionWriteFilter (and unit test), again 
> because FileRegion is NIO specific and exposes a FileChannel.  
> I'm hoping somebody can take a look at the code and provide some feedback if 
> they believe this is headed in the right direction or have a better idea.  
> I'll attach the patches shortly.

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

Reply via email to