>  >   ^-- To je velmi jednoduche: lebo tie udaje potrebujem. :-)
>  >
>  >  Presnejsie: citam zo siete stream, konkretne odpoved HTTP servera,
>  >  ak by na tom zalezalo. Tato odpoved moze mat niekolko desiatok bajtov,
>  >  ale kludne moze mat 10MB. Takze nemozem dopredu vediet, aky velky
>  >  buffer bude dostatocny na nacitanie udajov. Preto citam udaje po castiach
>  >  s velkostou CHUNK a tieto casti si odkladam (kazdu ulozim do BasicContent,
>  >  a tieto objekty skladam do AggregatedContent); citanie ukoncim, ak sa
>  >  nacita prvy "neplny" buffer.

>  To chapu, ale ten buffer muzete samozrejme "recyklovat", InputStream
>  vam do nej nakopiruje data ze vstupu a je mu jedno ze tam predtim
>  nejaka data byla.
>  Jediny problem by byl pokud by konstruktor  new BasicContent(buffer,
>  bytesRead) predany buffer sebere pro sebe, coz nepredpokladam (bylo by
>  to velmi nestandardni reseni).

  ^-- Ano, BasicContent si ten buffer necha pre seba, ano, bez toho, aby
si urobil defenzivnu kopiu. Co sa vam vidi nestandardne na tom, ze nechcem
v programe kopirovat potencialne obrovske mnozstvo udajov len preto,
aby som mohol InputStreamu davat opakovane ten isty buffer na citanie?

>  >  >  >  3.B) Nacitalo sa menej ako CHUNK bajtov; patrne sa docitalo do konca
>  >  >  >  streamu a teda dalej citat nemusim.
>  >  >
>  >  >  Obavam se ze zde je chyba - v javadocu jsem nenasel zminku ze musi
>  >  >  nacist presne tolik byte jako je delka bufferu, je tam zminka ze nacte
>  >  >  alespon 1 byte.
>  >  >  Je to sice na prvni pohled nelogicke (proc by to delal?), ale asi to
>  >  >  muze zpusobovat vas problem.
>  >
>  >   ^-- Ako konkretne to ma sposobovat moj problem? Stale nerozumiem.
>  >
>  No, obavam se ze InputStream vam nakopirovava do daneho bufferu
>  vetsinou tolik byte jako je delka bufferu, ale obcas se rozhodne tam
>  nakopirovat min, i kdyz ma dalsi data k dispozici.

  ^-- Ano, presne tomu zodpoveda aj moje pozorovanie, ale to som uz
predsa napisal v povodnom maili. Moja otazka ale je, ze preco je tomu
tak, ked javadoc tvrdi, ze:

"This method blocks until input data is available, end of file is detected,
or an exception is thrown."

Odpovedet emailem