/* This Source Code Form is subject to the terms of the Mozilla Public
* License , v . 2 . 0 . If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#include "nsIThreadRetargetableStreamListener.idl"
interface nsIRequest;
interface nsIStreamLoader;
[scriptable, uuid(
359 F7990-D4E9-
11 d3-A1A5-
0050041 CAF44)]
interface nsIStreamLoaderObserver : nsISupports
{
/**
* Called when the entire stream has been loaded .
*
* @ param loader the stream loader that loaded the stream .
* @ param ctxt the context parameter of the underlying channel
* @ param status the status of the underlying channel
* @ param resultLength the length of the data loaded
* @ param result the data
*
* This method will always be called asynchronously by the
* nsIStreamLoader involved , on the thread that called the
* loader ' s init ( ) method .
*
* If the observer wants to take over responsibility for the
* data buffer ( result ) , it returns NS_SUCCESS_ADOPTED_DATA
* in place of NS_OK as its success code . The loader will then
* " forget " about the data and not free ( ) it after
* onStreamComplete ( ) returns ; observer must call free ( )
* when the data is no longer required .
*/
void onStreamComplete(in nsIStreamLoader loader,
in nsISupports ctxt,
in nsresult status,
in
unsigned long resultLength,
[
const ,array,size_is(resultLength)] in octet result);
};
/**
* Asynchronously loads a channel into a memory buffer .
*
* To use this interface , first call init ( ) with a nsIStreamLoaderObserver
* that will be notified when the data has been loaded . Then call asyncOpen ( )
* on the channel with the nsIStreamLoader as the listener . The context
* argument in the asyncOpen ( ) call will be passed to the onStreamComplete ( )
* callback .
*
* XXX define behaviour for sizes > 4 GB
*/
[scriptable, uuid(
323 bcff1-
7513 -
4 e1f-a541-
1 c9213c2ed1b)]
interface nsIStreamLoader : nsIThreadRetargetableStreamListener
{
/**
* Initialize this stream loader , and start loading the data .
*
* @ param aStreamObserver
* An observer that will be notified when the data is complete .
* @ param aRequestObserver
* An optional observer that will be notified when the request
* has started or stopped .
*/
void init(in nsIStreamLoaderObserver aStreamObserver,
[optional] in nsIRequestObserver aRequestObserver);
/**
* Gets the number of bytes read so far .
*/
readonly attribute
unsigned long numBytesRead;
/**
* Gets the request that loaded this file .
* null after the request has finished loading .
*/
readonly attribute nsIRequest request;
};
Messung V0.5 in Prozent C=93 H=100 G=96
¤ Dauer der Verarbeitung: 0.12 Sekunden
(vorverarbeitet am 2026-09-29)
¤
*© Formatika GbR, Deutschland