RHTTPTransaction Class Reference

class RHTTPTransaction

A HTTP Transaction. This encapsulates 1 HTTP request and response. A Transaction is associated with a session, and must be created using the session's CreateTransactionL method. RHTTPSession RHTTPSession::CreateTransactionL

Constructor & Destructor Documentation

RHTTPTransaction()

RHTTPTransaction ( ) [inline]

Default (uninitialised) constructor

Member Functions Documentation

Cancel(THTTPFilterHandle)

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

Cancels the transaction.

Parameters

THTTPFilterHandle aStart = THTTPFilterHandle::EClient The entity that is initiating the cancel (defaults to the client). See THTTPFilterHandle for the values this can take.

CipherSuite()

IMPORT_C RString CipherSuite ( )

Obtain the cipher suite information for this transaction.

Close()

IMPORT_C void Close ( )

Closes the transaction and frees all owned resources. Transactions must be opened using RHTTPSession::OpenTransactionL . It is also closed when you close the session.

Fail(THTTPFilterHandle)

IMPORT_C void Fail ( THTTPFilterHandle aStart = THTTPFilterHandle::ECurrentFilter )

This function should be called by filters when they have failed due to running out of memory. It cancels the transaction and sends the synchronous events EUnrecoverableError and EFailed to the client to inform it of the failure. For instance in a filter that attempts to send an event to the client from a MHFRunError to inform the client of a failure, if the call to SendEventL leaves, Fail() may be used to 'give up'.

Parameters

THTTPFilterHandle aStart = THTTPFilterHandle::ECurrentFilter

HttpDataOptimiser()

IMPORT_C MHttpDataOptimiser * HttpDataOptimiser ( )

Returns the object of the MHttpDataOptimiser implementation class.

Id()

IMPORT_C TInt Id ( ) const

Obtain this transaction's ID, which is unique within its session. This is mostly used for producing a slightly-meaningful way of identifying transactions in logging code.

Implementation()

CTransaction * Implementation ( ) [private, inline]

NotifyNewRequestBodyPartL(THTTPFilterHandle)

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

Notify HTTP of the availability of more request body data, when submitting body data in several parts.

leave
KErrNoMemory There was not enough memory.

Parameters

THTTPFilterHandle aStart = THTTPFilterHandle::EClient The filter supplying the new data. This will almost always be the client (default value)

PropertySet()

IMPORT_C RHTTPTransactionPropertySet PropertySet ( ) const

Returns the transaction's property set. This is used by filters to store transaction-specific information, and by clients to specify things like reload or no cache behaviour.

Request()

IMPORT_C RHTTPRequest Request ( ) const

Response()

IMPORT_C RHTTPResponse Response ( ) const

Gets the response. Note that the returned response may not be valid if it hasn't been created yet. RHTTPMessage::IsValid()

SendEvent(THTTPEvent, THTTPEvent::TDirection, THTTPFilterHandle)

IMPORT_C TInt SendEvent ( THTTPEvent aStatus,
THTTPEvent::TDirection aDirection,
THTTPFilterHandle aStart
)

SendEventL(THTTPEvent, THTTPEvent::TDirection, THTTPFilterHandle)

IMPORT_C void SendEventL ( THTTPEvent aStatus,
THTTPEvent::TDirection aDirection,
THTTPFilterHandle aStart
)
Sends a status message to all relevant filters. This function is predominantly used by filters, rather than by the client.
leave
KErrNoMemory There was not enough memory.

Parameters

THTTPEvent aStatus The status message to send.
THTTPEvent::TDirection aDirection The direction down the filter queue that this event will be propogated.
THTTPFilterHandle aStart

ServerCert(TCertInfo &)

IMPORT_C TInt ServerCert ( TCertInfo & aServerCert )

Obtain the server certificate information for this transaction. This function should only be used for text-mode, for WSP use RHttpSession::ServerCert. RHttpSession::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 transaction. This function should only be used for HTTP . WSP should use RHttpSession::ServerCert. RHttpSession::ServerCert

Session()

IMPORT_C RHTTPSession Session ( ) const

SetupHttpDataOptimiser(MHttpDataOptimiser &)

IMPORT_C void SetupHttpDataOptimiser ( MHttpDataOptimiser & aHttpOptimiser )

Sets the HTTP data optimiser for the transaction.

Parameters

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

Submit(THTTPFilterHandle)

IMPORT_C TInt Submit ( THTTPFilterHandle aStart = THTTPFilterHandle::EClient )

Parameters

THTTPFilterHandle aStart = THTTPFilterHandle::EClient

SubmitL(THTTPFilterHandle)

IMPORT_C void SubmitL ( THTTPFilterHandle aStart = THTTPFilterHandle::EClient )
Submits a transaction. Once all the headers and other details have been set up, this call actualy causes the request to be made.
leave
KErrNoMemory There was not enough memory.

Parameters

THTTPFilterHandle aStart = THTTPFilterHandle::EClient

operator!=(RHTTPTransaction)

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

Inequality operator

Parameters

RHTTPTransaction aTrans The transaction to compare this one to.

operator==(RHTTPTransaction)

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

Equality operator to check if this transaction is the same as that one.

Parameters

RHTTPTransaction aTrans The transaction to compare this one to.

Member Data Documentation

CTransaction * iImplementation

CTransaction * iImplementation [private]