diff -r 000000000000 -r b16258d2340f applayerprotocols/httptransportfw/inc/http/rhttpconnectioninfo.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/applayerprotocols/httptransportfw/inc/http/rhttpconnectioninfo.h Tue Feb 02 01:09:52 2010 +0200 @@ -0,0 +1,117 @@ +// Copyright (c) 2001-2009 Nokia Corporation and/or its subsidiary(-ies). +// All rights reserved. +// This component and the accompanying materials are made available +// under the terms of "Eclipse Public License v1.0" +// which accompanies this distribution, and is available +// at the URL "http://www.eclipse.org/legal/epl-v10.html". +// +// Initial Contributors: +// Nokia Corporation - initial contribution. +// +// Contributors: +// +// Description: +// + +/** + @file + @warning : This file contains Rose Model ID comments - please do not delete +*/ + +#ifndef __RHTTPCONNECTIONINFO_H__ +#define __RHTTPCONNECTIONINFO_H__ + +// System includes +#include +#include +#include + +//##ModelId=3C4C187A01CA +class RHTTPConnectionInfo : public RHTTPPropertySet +/** +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 MIp6Hook + +HTTP::ESessionId (no default) (Integer) + + +@publishedAll +@released +*/ + { + }; + +#endif // __RHTTPCONNECTIONINFO_H__