RHTTPSession Class Reference

class RHTTPSession

A session handle. A session is a set of HTTP transactions using the same connection settings (e.g. proxy) and the same set of filters. Multi-homing support provided by HTTP framework enables clients to specify Connection preferences through the session property EHttpSocketConnection.

Note that RHTTPSession (and consequently the whole of HTTP ) depends on the active scheduler; a scheduler must be installed when the session is opened and it must be running if a transaction is actually to do anything. RHTTPTransaction

Constructor & Destructor Documentation

RHTTPSession()

RHTTPSession ( ) [inline]
Constructor.
Post-condition
The session is closed. (It must be opened with OpenL)
OpenL

Member Functions Documentation

Close()

IMPORT_C void Close ( )
Closes the session. All transactions will be stopped and closed
Post-condition
The session and all open transactions in it are closed.

ConnectL()

IMPORT_C void ConnectL ( )

Connect this WSP session. This function does nothing when called for text-mode.

ConnectionInfo()

IMPORT_C RHTTPConnectionInfo ConnectionInfo ( ) const

Accessor for the connection info for this session, and which is used for all transactions in the session. Note that by and large, the connection info should be set up before the first transaction is created.

DisconnectL()

IMPORT_C void DisconnectL ( )

Disconnect this WSP session. This function does nothing when called for text-mode.

FailSessionEvent(THTTPFilterHandle)

IMPORT_C void FailSessionEvent ( THTTPFilterHandle aStart = THTTPFilterHandle::EClient )

Fail the session event

Parameters

THTTPFilterHandle aStart = THTTPFilterHandle::EClient

FilterCollection()

RHTTPFilterCollection FilterCollection ( ) const [inline]

Accessor for the filter collection. Note that the filter collection can't be edited after the first transaction has been created.

GetTable()

IMPORT_C const TStringTable & GetTable ( ) [static]

HttpDataOptimiser()

IMPORT_C MHttpDataOptimiser * HttpDataOptimiser ( )

Returns the object of the MHttpDataOptimiser implementation class.

ListAvailableProtocolsL(RPointerArray< HBufC8 > &)

IMPORT_C void ListAvailableProtocolsL ( RPointerArray < HBufC8 > & aProtocolArray ) [static]

This is a static methods that lists all the available protocols by adding the prorocol descriptors to the descriptor array passed in. Any existing data in the descriptor array passed in is deleted. This function leaves if the descriptor array can not be updated with the appropriate array code. OpenL

Parameters

RPointerArray < HBufC8 > & aProtocolArray A pointer array to heap based descriptors. The data in this array will be deleted and filled with descriptors containing the available protocols

OpenL()

IMPORT_C void OpenL ( )
Opens the session using the default protocol HTTP/TCP. This function leaves with an apropriate code if the open failed.
Pre-condition
The session is closed. An active scheduler is installed.
Post-condition
The session is open.

OpenL(const TDesC8 &)

IMPORT_C void OpenL ( const TDesC8 & aProtocol )
Opens the session using the protocol indicated by the parameter passed in. This function leaves with an apropriate code if the open failed.
Pre-condition
The session is closed. An active scheduler is installed.
Post-condition
The session is open.

Parameters

const TDesC8 & aProtocol The protocol required

OpenL(const TDesC8 &, MHTTPFilterCreationCallback *)

IMPORT_C void OpenL ( const TDesC8 & aProtocol,
MHTTPFilterCreationCallback * aSessionCallback
)
Opens the session using the protocol indicated by the parameter passed in. This method should be used if configuring the installed filters is required. Once construction if the session is complete the callback method passed in is called passing in a TFilterConfigurationIterator to allow the filters that are installed to be configured. This function leaves with an apropriate code if the open failed.
Pre-condition
The session is closed. An active scheduler is installed.
Post-condition
The session is open.

Parameters

const TDesC8 & aProtocol The protocol required
MHTTPFilterCreationCallback * aSessionCallback The pointer to the object providing the call back method

OpenTransactionL(const TUriC8 &, MHTTPTransactionCallback &, RStringF)

IMPORT_C RHTTPTransaction OpenTransactionL ( const TUriC8 & aURI,
MHTTPTransactionCallback & aCallback,
RStringF aMethod =  RStringF ()
)
Creates a transaction.
Pre-condition
The session is open
leave
KErrNoMemory There was not enough memory.

Parameters

const TUriC8 & aURI The URI that the request will be sent to.
MHTTPTransactionCallback & aCallback A callback for all status events relating to this transaction.
RStringF aMethod =  RStringF () The HTTP method to use (default: GET)

RequestSessionHeadersL()

IMPORT_C RHTTPHeaders RequestSessionHeadersL ( )

Accessor for the session headers. These are headers that will get added to each request They only become part of the transaction headers when a transaction is submitted and they will not replace headers that already exist in the transaction request

ResponseSessionHeadersL()

IMPORT_C RHTTPHeaders ResponseSessionHeadersL ( )

Accessor for the response session headers. These are headers that will get added to each response if the corresponding header doesn't already exist

SendSessionEventL(THTTPSessionEvent, THTTPSessionEvent::TDirection, THTTPFilterHandle)

IMPORT_C void SendSessionEventL ( THTTPSessionEvent aStatus,
THTTPSessionEvent::TDirection aDirection,
THTTPFilterHandle aStart = THTTPFilterHandle::EClient
)

Send an session event

Parameters

THTTPSessionEvent aStatus
THTTPSessionEvent::TDirection aDirection
THTTPFilterHandle aStart = THTTPFilterHandle::EClient

ServerCert(TCertInfo &)

IMPORT_C TInt ServerCert ( TCertInfo & aServerCert )

Obtain the server certificate information for this session. This function should only be used for WSP, for text-mode use RHttpTransaction::ServerCert. RHttpTransaction::ServerCert v9.2 onwards - maintained for compatibility with v9.1 and before TCertInfo has been deprecated since v9.2. CCertificate may be used as an alternative.

Parameters

TCertInfo & aServerCert A client supplied object into which the certificate information will be placed.

ServerCert()

IMPORT_C const CCertificate * ServerCert ( )

Obtain the server certificate information for this session. This function should only be used for WSP. HTTP should use RHttpTransaction::ServerCert. RHttpSession::ServerCert

SetSessionEventCallback(MHTTPSessionEventCallback *)

IMPORT_C void SetSessionEventCallback ( MHTTPSessionEventCallback * aSessionEventCallback )

Sets the session event callback. Until it is set all incoming session events are consumed

Parameters

MHTTPSessionEventCallback * aSessionEventCallback

SetupDefaultProxyFromCommsDatL()

IMPORT_C void SetupDefaultProxyFromCommsDatL ( )

Set the default Proxy for Http Session. This function reads default proxy information,if available, from CommsDat and uses it for the current Session.

SetupHttpDataOptimiser(MHttpDataOptimiser &)

IMPORT_C void SetupHttpDataOptimiser ( MHttpDataOptimiser & aHttpOptimiser )

Sets the HTTP data optimiser for the session.

Parameters

MHttpDataOptimiser & aHttpOptimiser An object of the implementation of interface, MHttpDataOptimiser, supplied by the client.

StringPool()

IMPORT_C RStringPool StringPool ( ) const

Accessor for the HTTP string pool.

operator!=(RHTTPSession)

TBool operator!= ( RHTTPSession aTrans ) const [inline]

Inequality operator

Parameters

RHTTPSession aTrans The session to compare this one to.

operator==(RHTTPSession)

TBool operator== ( RHTTPSession aTrans ) const [inline]

Equality operator.

Parameters

RHTTPSession aTrans The session to compare this one to.

Member Data Documentation

CHTTPSession * iImplementation

CHTTPSession * iImplementation [private]