Inheritance diagram for pp::URLLoader:

List of all members.

Public Member Functions

 URLLoader ()
 URLLoader (PP_Resource resource)
 URLLoader (const InstanceHandle &instance)
 URLLoader (const URLLoader &other)
int32_t Open (const URLRequestInfo &request_info, const CompletionCallback &cc)
int32_t FollowRedirect (const CompletionCallback &cc)
bool GetUploadProgress (int64_t *bytes_sent, int64_t *total_bytes_to_be_sent) const
bool GetDownloadProgress (int64_t *bytes_received, int64_t *total_bytes_to_be_received) const
URLResponseInfo GetResponseInfo () const
int32_t ReadResponseBody (void *buffer, int32_t bytes_to_read, const CompletionCallback &cc)
int32_t FinishStreamingToFile (const CompletionCallback &cc)
void Close ()

Detailed Description

URLLoader provides an API for loading URLs.

Refer to ppapi/examples/url_loader/streaming.cc for an example of how to use this class.


Constructor & Destructor Documentation

Default constructor for creating an is_null() URLLoader object.

pp::URLLoader::URLLoader(PP_Resource resource) [explicit]

A constructor used when a PP_Resource is provided as a return value whose reference count we need to increment.

Parameters:
[in]resourceA PP_Resource corresponding to a URLLoader resource.
pp::URLLoader::URLLoader(const InstanceHandleinstance) [explicit]

A constructor used to allocate a new URLLoader in the browser.

The resulting object will be is_null if the allocation failed.

Parameters:
[in]instanceThe instance with which this resource will be associated.

The copy constructor for URLLoader.

Parameters:
otherA URLLoader to be copied.

Member Function Documentation

This function is used to cancel any pending IO and close the URLLoader object.

Any pending callbacks will still run, reporting PP_ERROR_ABORTED if pending IO was interrupted. It is NOT valid to call Open() again after a call to this function.

Note: If the URLLoader object is destroyed while it is still open, then it will be implicitly closed so you are not required to call Close().

This function is used to wait for the response body to be completely downloaded to the file provided by the GetBodyAsFileRef() in the current URLResponseInfo.

This function is only used if PP_URLREQUESTPROPERTY_STREAMTOFILE was set on the URLRequestInfo passed to Open().

Parameters:
[in]ccA CompletionCallback to run on asynchronous completion. This callback will run when body is downloaded or an error occurs after FinishStreamingToFile() returns PP_OK_COMPLETIONPENDING.
Returns:
An int32_t containing the number of bytes read or an error code from pp_errors.h.

This function can be invoked to follow a redirect after Open() completed on receiving redirect headers.

Parameters:
[in]ccA CompletionCallback to run on asynchronous completion of FollowRedirect(). This callback will run when response headers for the redirect url are received or error occurred. This callback will only run if FollowRedirect() returns PP_OK_COMPLETIONPENDING.
Returns:
An int32_t containing an error code from pp_errors.h.
bool pp::URLLoader::GetDownloadProgress(int64_t * bytes_received,
int64_t * total_bytes_to_be_received 
)const

This function returns the current download progress, which is meaningful after Open() has been called.

Progress only refers to the response body and does not include the headers.

This data is only available if the URLRequestInfo passed to Open() had the PP_URLREQUESTPROPERTY_REPORTDOWNLOADPROGRESS property set to PP_TRUE.

Parameters:
[in]bytes_receivedThe number of bytes received thus far.
[in]total_bytes_to_be_receivedThe total number of bytes to be received. The total bytes to be received may be unknown, in which case total_bytes_to_be_received will be set to -1.
Returns:
true if the download progress is available, false if it is not available.

This is a function that returns the current URLResponseInfo object.

Returns:
A URLResponseInfo corresponding to the URLResponseInfo if successful, an is_null object if the loader is not a valid resource or if Open() has not been called.
bool pp::URLLoader::GetUploadProgress(int64_t * bytes_sent,
int64_t * total_bytes_to_be_sent 
)const

This function returns the current upload progress (which is only meaningful after Open() has been called).

Progress only refers to the request body and does not include the headers.

This data is only available if the URLRequestInfo passed to Open() had the PP_URLREQUESTPROPERTY_REPORTUPLOADPROGRESS property set to PP_TRUE.

Parameters:
[in]bytes_sentThe number of bytes sent thus far.
[in]total_bytes_to_be_sentThe total number of bytes to be sent.
Returns:
true if the upload progress is available, false if it is not available.
int32_t pp::URLLoader::Open(const URLRequestInforequest_info,
const CompletionCallbackcc 
)

This function begins loading the URLRequestInfo.

The operation completes when response headers are received or when an error occurs. Use GetResponseInfo() to access the response headers.

Parameters:
[in]request_infoA URLRequestInfo corresponding to a URLRequestInfo.
[in]ccA CompletionCallback to run on asynchronous completion of Open(). This callback will run when response headers for the url are received or error occurred. This callback will only run if Open() returns PP_OK_COMPLETIONPENDING.
Returns:
An int32_t containing an error code from pp_errors.h.
int32_t pp::URLLoader::ReadResponseBody(void * buffer,
int32_t bytes_to_read,
const CompletionCallbackcc 
)

This function is used to read the response body.

The size of the buffer must be large enough to hold the specified number of bytes to read. This function might perform a partial read.

Parameters:
[in,out]bufferA pointer to the buffer for the response body.
[in]bytes_to_readThe number of bytes to read.
[in]ccA CompletionCallback to run on asynchronous completion. The callback will run if the bytes (full or partial) are read or an error occurs asynchronously. This callback will run only if this function returns PP_OK_COMPLETIONPENDING.
Returns:
An int32_t containing the number of bytes read or an error code from pp_errors.h.

The documentation for this class was generated from the following file:
We serve cookies on this site to analyze traffic, remember your preferences, and optimize your experience.