RHTTPConnectionInfo Class Reference

#include <mw/http/rhttpconnectioninfo.h>

class RHTTPConnectionInfo : public RHTTPPropertySet

Inherits from

Detailed Description

The RHTTPConnectionInfo is used for setting/getting values used for setting up a connection over a protocol. All methods are inherited directly from RHTTPPropertySet.

To lookup/change any of the following properties, use RHTTPPropertySet::Property(...) and RHTTPPropertySet::SetPropertyL(...)

To remove properties, use RHTTPPropertySet::RemoveProperty(...) for a named property, or RHTTPPropertySet::RemoveAllProperties() for all.

The following values are currently defined. Note that new values could be added by individual filters. In general, properties should be defined before the first transaction is created; filters are not obliged to check with the connection info if the values have changed after this point.

HTTP::EProxyUsage (default HTTP::EDoNotUseProxy) (HTTP::EDoNotUseProxy | HTTP::EUseProxy)

HTTP::EProxyAddress (A Uri for the Proxy server. Should include the port number if it is not the default of 8080)

HTTP::EMaxNumTransportHandlers (default 4)

HTTP::EMaxNumTransPerTranspHndlr (default 5)

HTTP::EHTTPVersion (default HTTP::EHttp11) (HTTP::EHttp11 | HTTP::EHttp10)

HTTP::EProtocol (default, and currently only defined value is HTTP::EHTTP)

HTTP::EHttpBatching (default HTTP::EDoNotEnableBatching) (HTTP::EDoNotEnableBatching | HTTP::EEnableBatching)

HTTP::EBatchingBufferSize (default 1400)

HTTP Client can create a connection and set its own preferences, instead of using the default connection preferences specified in COMMS Database. In such cases, the client is responsible for creating the RSocketServ session and RConnection using RSocketServ::Connect(..) and RConnection::Open(..). Client must also start the connection using RConnection::Start(..) and pass the connection preferences to the function using TConnPref. The following session properties should then be set by the client.

HTTP::EHttpSocketServ (Handle to RSocketServ session, which is the value obtained by calling RSocketServ::Handle())

HTTP::EHttpSocketConnection (Reference to the RConnection object, obtained from reinterpret_cast(TInt, &connection))

The HTTP Client can also specify what action should be take if during a secure handshakes the server cert cannot be trusted. The choice is for the handshake to automatically cancelled or for a dialog to be raised and the user given the option of continuing with the handshake or cancelling it. The following session property should be used to specify the behaviour.

HTTP::ESecureDialog (default HTTP::EDialogPrompt) (HTTP::EDialogPrompt | EDialogNoPrompt)

The HTTP Client can specify the socket shutdown mode when the session is closing. At the time of closing the session, any outstanding transactions on open sockets can specify that the socket shutdown mode be set to immediate. The following property can be used to enable this behaviour.

HTTP::ESocketShutdownMode (default HTTP::ESocketShutdownNormal) (HTTP::ESocketShutdownNormal | HTTP::ESocketShutdownImmediate

The HTTP Client can limit the number of transactions that it will send down one connection when using pipelining. The following value should be set to an integer. When set any outstanding transaction that exceed this number will either be sent separately down a different connection or will be queued until a space becomes available.

HTTP::EMaxNumTransactionsToPipeline (default KMaxTInt) (Integer)

The session ID is an optional non-negative integer which is attached to the session and any sockets it creates. The session ID will be set on any sockets created by using RSocket::SetOpt() with the level KSOLHttpSessionInfo and the name KSOHttpSessionId (defined in httpsocketconstants.h). The session ID can be retrieved in a Flow Hook by implementing MIp6Hook::SetFlowOption() to look for the aforementioned option level and name.

See also: MIp6Hook

HTTP::ESessionId

(no default) (Integer)