Here's a general description of how the code
in filesystem/local/full works regarding
progressive download. Hopefully this is
what you are looking for.
The IHXFileObject uses another object (IHXDataFile)
to actually read the file. The IHXFileObject is
an asynchronous interface while IHXDataFile is
a synchronous interface.
- When the IHXDataFile is opened, its size is checked.
- As long as a read from the IHXDataFile never
fails, then a progressively downloaded file operates
exactly like a non-progressively-downloaded file.
- If a read fails, then we ask the file format
plugin to see whether or not it can handle a failed
read. In most cases, the file format says no, it
can't handle a failed read. In that case, we set
a callback for a certain number of milliseconds.
- When the callback fires, we check the filesize again
and try the read again. If the read succeeds, then
we return it. If the read fails, then we set another
callback.
- Eventually, when the size doesn't change for a long
enough period of time, then we assume the download
has finished.
Eric
=============================================
Eric Hyche (ehyche real.com)
Technical Lead
RealNetworks, Inc.
> -----Original Message-----
> From: filesystem-dev-bounces helixcommunity.org
> [mailto:filesystem-dev-bounces helixcommunity.org] On
Behalf
> Of Anshuman Singh
> Sent: Thursday, December 13, 2007 8:17 AM
> To: filesystem-dev helixcommunity.org
> Cc: helix-client-dev helixcommunity.org
> Subject: [Filesystem-dev] Query regarding a pd content
>
> Hi,
>
> How does helix handle the progressively
downloading
> content with
> unknown size or without "?filesize=" in URL
?
>
> Please provide some information on it.
>
>
> Thanks
> Anshuman
>
> _______________________________________________
> Filesystem-dev mailing list
> Filesystem-dev helixcommunity.org
> http://lists.helixcommunity.org/mailman/listinfo/
filesystem-dev
>
_______________________________________________
Filesystem-dev mailing list
Filesystem-dev helixcommunity.org
http://lists.helixcommunity.org/mailman/listinfo/
filesystem-dev
|