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

Emmanuel Lecharny closed DIRMINA-248.
-------------------------------------


> ProtocolDecoder should get notified when a connection is closed.
> ----------------------------------------------------------------
>
>                 Key: DIRMINA-248
>                 URL: https://issues.apache.org/jira/browse/DIRMINA-248
>             Project: MINA
>          Issue Type: Improvement
>            Reporter: Trustin Lee
>            Assignee: Trustin Lee
>             Fix For: 0.9.5
>
>
> Randy Watlet wrote:
> ==================
> I am attempting to use Mina to build a scalable Ajax web application
> test harness, (a Mina client). So far, so good... :-).
> One quick question: I have an operational HTTP message decoder in place,
> but I am not sure how to support the parsing of a complete HTTP response
> when the HTTP Content-length is not known. In particular, I need to know
> when the underling session is closing, (IoSession.isClosing() == true),
> while parsing the last packet from the server. It seems this is not now
> the case. I will eventually get an IoHander.sessionClosing() callback,
> but the undecoded message is left hanging out there with decodable()
> returning false.
> To hack this, I figure I could add a last "unknown content length"
> ByteBuffer as a session attribute from MessageDecoder.decodable(),
> (carefully acquire() and release() managed), and process it on
> IoHandler.sessionClosing() manually. This seems kind of ugly and not
> within the spirit of the Mina API. Any suggestions how to better handle
> this?
> My idea:
> ========
> Ah, so.. in HTTP/1.0, 'EOC (end of connection)' can be a useful information 
> for decoding, but it is not informed to ProtocolDecoder, right?  This is 
> certainly a problem.
> For now, ProtocolDecoder.dispose () is invoked just before sessionClosed() is 
> invoked.  So we could add a ProtocolDecoderOutput parameter to dispose() 
> method, but I think is not a good idea.  Providing another method like 
> 'finishDecode()' would be better to separate the decoding code and the 
> resource management code.

-- 
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