MBrCtlSpecialLoadObserver Class Reference

#include <mw/brctlspecialloadobserver.h>

class MBrCtlSpecialLoadObserver
Public Member Functions
pure virtual TBool HandleDownloadL(RArray< TUint > *, CDesCArrayFlat *)
pure virtual TBool HandleRequestL(RArray< TUint > *, CDesCArrayFlat *)
pure virtual voidNetworkConnectionNeededL(TInt *, TInt *, TBool *, TApBearerType *)

Detailed Description

The MBrCtlSpecialLoadObserver class handles special load events, such as network connection, non-HTTP(S) load requests, and non-HTML responses.

Usage:

  #include <brctlspecialloadobserver.h>

  
 @see S60 Platform: Browser Control API Developer's Guide Version 2.0
 @lib BrowserEngine.lib
 @file brctlspecialloadobserver.h
*

Member Function Documentation

HandleDownloadL ( RArray< TUint > *, CDesCArrayFlat * )

TBool HandleDownloadL(RArray< TUint > *aTypeArray,
CDesCArrayFlat *aDesArray
)[pure virtual]
Request the host applicaion to handle downloads
Since
2.8
Attention:

The host application should call the Download Manager to handle non-HTML content. Only GET requests are supported because the Browser Control must cancel the transaction before the Download Manager can take over. If a POST request is cancelled, the server may enter an unpredictable state. For POST requests, the Browser Control downloads the content before calling this function. It stores the content in a file whose name is passed to the host application by using the EParamLocalFileName parameter. The host application should check whether this parameter was passed by the Browser Control to determine whether the Browser Control already downloaded the content. If not, the host application should download the content.

ParameterDescription
aTypeArrayarray of download parameter types
aDesArrayarray of values associated with the types in the type array

Returns: ETrue if handled by the host application EFalse if not handled by the host application

HandleRequestL ( RArray< TUint > *, CDesCArrayFlat * )

TBool HandleRequestL(RArray< TUint > *aTypeArray,
CDesCArrayFlat *aDesArray
)[pure virtual]
Requests the host application to handle non-HTTP requests. It is expected that the host application will call the Scheme Dispatcher to handle these requests.
Since
2.8
Attention:

The browser checks the scheme to determine whether or not it is supported. The browser supports the following schemes: File scheme, HTTP scheme or HTTPS scheme If the URL contains a scheme that the browser does not support, such as RTSP, then the host application should pass the content to an application that can handle that scheme.

ParameterDescription
aTypeArrayArray of request parameters. Examples: URL, referrer header
aDesArrayArray of values corresponding to the types in aTypeArray

Returns: ETrue if the host application handles the scheme. EFalse if the host application cannot handle the scheme.

NetworkConnectionNeededL ( TInt *, TInt *, TBool *, TApBearerType * )

voidNetworkConnectionNeededL(TInt *aConnectionPtr,
TInt *aSockSvrHandle,
TBool *aNewConn,
TApBearerType *aBearerType
)[pure virtual]
Request to create a network connection.
Since
2.8
Attention:

This function is called for every HTTP request for which the content was not found in the cache. This function is called whether or not a connection was established in a previous request. The host application determines whether to create a new connection or to use an existing connection.

ParameterDescription
aConnectionPtrPointer to the network connection. It must be type casted to an integer. If NULL, the Proxy Filter creates a network connection automatically. It must be type casted to an integer.
aSockSvrHandleA handle to the socket server.
aNewConnA flag if a new connection was created. If the connection is not new, proxy filter optimization will not read the proxy again from CommsBd. ETrue if a new connection was created. EFalse if a previously created connection was used.
aBearerTypeBearer type of the new connection. For example, GPRS, WCDMA. TapBearerType is defined in ApEngineConsts.h.

Returns: void