hc-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Oleg Kalnichevski (JIRA)" <j...@apache.org>
Subject [jira] Updated: (HTTPCORE-199) ContentInputStream does not implement InputStream.available
Date Thu, 02 Jul 2009 19:29:47 GMT

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

Oleg Kalnichevski updated HTTPCORE-199:
---------------------------------------

    Fix Version/s: 4.1

Galder,

The contract of InputStream#available() is to return "the number of bytes that can be read
(or skipped over) from this input stream without _blocking_ by the next caller of a method
for this input stream". Therefore, it is perfectly legal to return 0, if the next invocation
of #read method will cause the operation to block.

Basically InputStream#available() is utterly broken.

Anyway, please test the patch attached to this issue and let me know if that fixes the problem
for you.

Oleg

> ContentInputStream does not implement InputStream.available
> -----------------------------------------------------------
>
>                 Key: HTTPCORE-199
>                 URL: https://issues.apache.org/jira/browse/HTTPCORE-199
>             Project: HttpComponents HttpCore
>          Issue Type: Bug
>          Components: HttpCore NIO
>    Affects Versions: 4.0.1
>            Reporter: Galder Zamarreno
>             Fix For: 4.1
>
>         Attachments: HTTPCORE-199.patch
>
>
> I'm having an issue with ContentInputStream because it does not
> override IS.available() method. Our client code is implemented in such
> way that available() is checked before creating a buffer so that a not
> too big buffer is created. Javadoc for IS.available says:
>     * <p> This method should be overridden by subclasses.
> Hence, ContentInputStream should be overriding it. However,
> ContentInputBuffer does to expose the necessary methods to be able
> calculate this but the implementations do have the possibility of
> calculating this, i.e. SimpleInputBuffer. Any chance of improving
> ContentInputBuffer API so that an available() method is added? If so,
> what would be the timeframe for it?

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


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@hc.apache.org
For additional commands, e-mail: dev-help@hc.apache.org


Mime
View raw message