Struct xpcom::interfaces::nsIDownloader
[−]
[src]
#[repr(C)]pub struct nsIDownloader { /* fields omitted */ }
interface nsIDownloader : nsIStreamListener
/**
* nsIDownloader
*
* A downloader is a special implementation of a nsIStreamListener that will
* make the contents of the stream available as a file. This may utilize the
* disk cache as an optimization to avoid an extra copy of the data on disk.
* The resulting file is valid from the time the downloader completes until
* the last reference to the downloader is released.
*/
Methods
impl nsIDownloader
[src]
pub fn coerce<T: nsIDownloaderCoerce>(&self) -> &T
[src]
Cast this nsIDownloader
to one of its base interfaces.
impl nsIDownloader
[src]
pub unsafe fn Init(
&self,
observer: *const nsIDownloadObserver,
downloadLocation: *const nsIFile
) -> nsresult
[src]
&self,
observer: *const nsIDownloadObserver,
downloadLocation: *const nsIFile
) -> nsresult
/**
* Initialize this downloader
*
* @param observer
* the observer to be notified when the download completes.
* @param downloadLocation
* the location where the stream contents should be written.
* if null, the downloader will select a location and the
* resulting file will be deleted (or otherwise made invalid)
* when the downloader object is destroyed. if an explicit
* download location is specified then the resulting file will
* not be deleted, and it will be the callers responsibility
* to keep track of the file, etc.
*/
void init (in nsIDownloadObserver observer, in nsIFile downloadLocation);
Methods from Deref<Target = nsIStreamListener>
pub fn coerce<T: nsIStreamListenerCoerce>(&self) -> &T
[src]
Cast this nsIStreamListener
to one of its base interfaces.
pub unsafe fn OnDataAvailable(
&self,
aRequest: *const nsIRequest,
aContext: *const nsISupports,
aInputStream: *const nsIInputStream,
aOffset: uint64_t,
aCount: uint32_t
) -> nsresult
[src]
&self,
aRequest: *const nsIRequest,
aContext: *const nsISupports,
aInputStream: *const nsIInputStream,
aOffset: uint64_t,
aCount: uint32_t
) -> nsresult
/**
* Called when the next chunk of data (corresponding to the request) may
* be read without blocking the calling thread. The onDataAvailable impl
* must read exactly |aCount| bytes of data before returning.
*
* @param aRequest request corresponding to the source of the data
* @param aContext user defined context
* @param aInputStream input stream containing the data chunk
* @param aOffset
* Number of bytes that were sent in previous onDataAvailable calls
* for this request. In other words, the sum of all previous count
* parameters.
* @param aCount number of bytes available in the stream
*
* NOTE: The aInputStream parameter must implement readSegments.
*
* An exception thrown from onDataAvailable has the side-effect of
* causing the request to be canceled.
*/
void onDataAvailable (in nsIRequest aRequest, in nsISupports aContext, in nsIInputStream aInputStream, in unsigned long long aOffset, in unsigned long aCount);
Trait Implementations
impl XpCom for nsIDownloader
[src]
const IID: nsIID
IID: nsIID = nsID(4210966953, 42289, 19821, [137, 188, 88, 138, 101, 34, 251, 78])
fn query_interface<T: XpCom>(&self) -> Option<RefPtr<T>>
[src]
Perform a QueryInterface call on this object, attempting to dynamically cast it to the requested interface type. Returns Some(RefPtr) if the cast succeeded, and None otherwise. Read more
impl RefCounted for nsIDownloader
[src]
unsafe fn addref(&self)
[src]
Increment the reference count.
unsafe fn release(&self)
[src]
Decrement the reference count, potentially freeing backing memory.
impl Deref for nsIDownloader
[src]
type Target = nsIStreamListener
The resulting type after dereferencing.
fn deref(&self) -> &nsIStreamListener
[src]
Dereferences the value.