epoc32/include/mw/senhttptransportproperties.h
author William Roberts <williamr@symbian.org>
Wed, 31 Mar 2010 12:33:34 +0100
branchSymbian3
changeset 4 837f303aceeb
parent 2 2fe1408b6811
permissions -rw-r--r--
Current Symbian^3 public API header files (from PDK 3.0.h)
This is the epoc32/include tree with the "platform" subtrees removed, and
all but a selected few mbg and rsg files removed.
williamr@2
     1
/*
williamr@2
     2
* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). 
williamr@2
     3
* All rights reserved.
williamr@2
     4
* This component and the accompanying materials are made available
williamr@4
     5
* under the terms of "Eclipse Public License v1.0"
williamr@2
     6
* which accompanies this distribution, and is available
williamr@4
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
williamr@2
     8
*
williamr@2
     9
* Initial Contributors:
williamr@2
    10
* Nokia Corporation - initial contribution.
williamr@2
    11
*
williamr@2
    12
* Contributors: 
williamr@2
    13
*
williamr@2
    14
* Description: Http transport properties class declaration     
williamr@2
    15
*
williamr@2
    16
*/
williamr@2
    17
williamr@2
    18
#ifndef SEN_HTTP_TRANSPORT_PROPERTIES_H
williamr@2
    19
#define SEN_HTTP_TRANSPORT_PROPERTIES_H
williamr@2
    20
williamr@2
    21
// INCLUDE
williamr@2
    22
#include <SenTransportProperties.h>
williamr@2
    23
williamr@2
    24
// CONSTANTS
williamr@2
    25
_LIT8(KSenHttpAcceptHeaderDelimiter, ",");
williamr@2
    26
williamr@2
    27
// Supported Http properties:
williamr@2
    28
williamr@2
    29
//// -- session properties:
williamr@2
    30
_LIT8(KHttpMethodLocalName,     "HttpMethod");
williamr@2
    31
_LIT8(KHttpVersionLocalName,    "HttpVersion");
williamr@2
    32
williamr@2
    33
//// -- HTTP headers names:
williamr@2
    34
_LIT8(KContentTypeLocalName,    "Content-Type");
williamr@2
    35
_LIT8(KAcceptLocalName,         "Accept");
williamr@2
    36
_LIT8(KSlugLocalName,           "Slug");
williamr@2
    37
williamr@2
    38
// Supported Http methods:
williamr@2
    39
_LIT8(KHttpGet,                 "Get");
williamr@2
    40
_LIT8(KHttpPost,                "Post");
williamr@2
    41
_LIT8(KHttpPut,                 "Put");
williamr@2
    42
_LIT8(KHttpDelete,              "Delete");
williamr@2
    43
williamr@2
    44
// Supported Http versions:
williamr@2
    45
_LIT8(KHttp10,                  "Http1.0");
williamr@2
    46
_LIT8(KHttp11,                  "Http1.1");
williamr@2
    47
williamr@2
    48
//NOTE:
williamr@2
    49
/**	In SendL(CSenSoapEnvelope& aMessage, const TDesC8& aProperties)
williamr@2
    50
 *	or
williamr@2
    51
 *	SubmitL(CSenSoapEnvelope& aMessage, const TDesC8& aProperties, HBufc8*& aResponseTO)  
williamr@2
    52
 *	aProperties could be "HTTP GET" or "HTTP DELETE"
williamr@2
    53
 *  aMessage is a soap message or serialized XML.
williamr@2
    54
 *	This scenario is not supported. 
williamr@2
    55
 *
williamr@2
    56
 *	These are the function calls get called during this scenario
williamr@2
    57
 *	iHttpProperties->SetHttpHeaderL(const TDesC8& aHeaderName, const TDesC8& aValue);
williamr@2
    58
 *	iHttpProperties->SetHttpMethodL(CSenHttpTransportProperties::ESenHttpGet);
williamr@2
    59
 *	SendL(CSenSoapEnvelope& aMessage, const TDesC8& aProperties);
williamr@2
    60
**/
williamr@2
    61
williamr@2
    62
// CLASS DECLARATION
williamr@2
    63
class CSenHttpTransportProperties : public CSenTransportProperties
williamr@2
    64
    {
williamr@2
    65
    public:
williamr@2
    66
		/**
williamr@2
    67
		 * HttpMethod Enumeration
williamr@2
    68
		 */    		
williamr@2
    69
        enum TSenHttpMethod
williamr@2
    70
        	{
williamr@2
    71
        	ESenHttpPut,
williamr@2
    72
        	ESenHttpDelete,
williamr@2
    73
        	ESenHttpGet,
williamr@2
    74
            ESenHttpPost        	
williamr@2
    75
            };
williamr@2
    76
		/**
williamr@2
    77
		 * HttpVersion Enumeration
williamr@2
    78
		 */    		            
williamr@2
    79
        enum TSenHttpVersion
williamr@2
    80
        	{
williamr@2
    81
        	ESenHttp10,
williamr@2
    82
        	ESenHttp11
williamr@2
    83
            };            
williamr@2
    84
        /**
williamr@2
    85
        * Basic constructor.
williamr@2
    86
        * @return a pointer to new CSenHttpTransportProperties class instance.
williamr@2
    87
        */
williamr@2
    88
        IMPORT_C static CSenHttpTransportProperties* NewL();
williamr@2
    89
        /**
williamr@2
    90
        * Basic constructor.
williamr@2
    91
        * @return a pointer to new CSenHttpTransportProperties class instance.
williamr@2
    92
        */
williamr@2
    93
        IMPORT_C static CSenHttpTransportProperties* NewLC();
williamr@2
    94
williamr@2
    95
        /**
williamr@2
    96
        * Basic constructor.
williamr@2
    97
		* @param aXmlUtf8 
williamr@2
    98
    	* @param aParser It is a XML reader        
williamr@2
    99
        * @return a pointer to new CSenHttpTransportProperties class instance.
williamr@2
   100
        */
williamr@2
   101
        IMPORT_C static CSenHttpTransportProperties* NewL(const TDesC8& aXmlUtf8,
williamr@2
   102
                                                          CSenXmlReader& aParser);
williamr@2
   103
williamr@2
   104
        /**
williamr@2
   105
        * Basic constructor.
williamr@2
   106
		* @param aXmlUtf8 
williamr@2
   107
    	* @param aParser It is a XML reader        
williamr@2
   108
        * @return a pointer to new CSenHttpTransportProperties class instance.
williamr@2
   109
        */
williamr@2
   110
        IMPORT_C static CSenHttpTransportProperties* NewLC(const TDesC8& aXmlUtf8,
williamr@2
   111
                                                           CSenXmlReader& aParser);
williamr@2
   112
williamr@2
   113
        /**
williamr@2
   114
        * Basic constructor.
williamr@2
   115
		* @param aElement
williamr@2
   116
        * @return a pointer to new CSenHttpTransportProperties class instance.
williamr@2
   117
        */
williamr@2
   118
        IMPORT_C static CSenHttpTransportProperties* NewL(const CSenElement& aElement);
williamr@2
   119
        /**
williamr@2
   120
        * Basic constructor.
williamr@2
   121
		* @param aElement 
williamr@2
   122
        * @return a pointer to new CSenHttpTransportProperties class instance.
williamr@2
   123
        */
williamr@2
   124
        IMPORT_C static CSenHttpTransportProperties* NewLC(const CSenElement& aElement);
williamr@2
   125
         
williamr@2
   126
        /**
williamr@2
   127
        * Gets the IAP ID.
williamr@2
   128
        * @param aCurrentIapId  A TUint32 reference to be filled in with the
williamr@2
   129
        *                       value of the IAP ID.
williamr@2
   130
        * @return               KErrNone if no error, or some of the system
williamr@2
   131
        *                       wide error codes.
williamr@2
   132
        */
williamr@2
   133
        virtual TInt IapIdL(TUint32& aCurrentIapId);
williamr@2
   134
williamr@2
   135
        /**
williamr@2
   136
        * Sets the IAP ID.
williamr@2
   137
        * @param aIapId is the new IAP ID.
williamr@2
   138
        */
williamr@2
   139
        virtual void SetIapIdL(TUint32 aIapId);
williamr@2
   140
williamr@2
   141
        /**
williamr@2
   142
        * Gets the Proxy Port.
williamr@2
   143
        * @param aProxyPort  A TInt reference to be filled in with the
williamr@2
   144
        *                    value of the Proxy Port.
williamr@2
   145
        * @return            KErrNone if no error, or some of the system
williamr@2
   146
        *                    wide error codes.
williamr@2
   147
        */
williamr@2
   148
        virtual TInt ProxyPortL(TInt& aProxyPort);
williamr@2
   149
williamr@2
   150
        /**
williamr@2
   151
        * Sets the Proxy Port.
williamr@2
   152
        * @param aProxyPort is the new Proxy Port.
williamr@2
   153
        */
williamr@2
   154
        virtual void SetProxyPortL(TInt aProxyPort);
williamr@2
   155
williamr@2
   156
        /**
williamr@2
   157
        * Gets the Proxy Host.
williamr@2
   158
        * @param aProxyHost  A TPtrC8 reference to be filled in with the
williamr@2
   159
        *                    value of the Proxy Host.
williamr@2
   160
        * @return            KErrNone if no error, or some of the system
williamr@2
   161
        *                    wide error codes.
williamr@2
   162
        */
williamr@2
   163
        virtual TInt ProxyHostL(TPtrC8& aProxyHost);
williamr@2
   164
williamr@2
   165
        /**
williamr@2
   166
        * Sets the Proxy Host.
williamr@2
   167
        * @param aProxyHost is the new Proxy Host.
williamr@2
   168
        */
williamr@2
   169
        virtual void SetProxyHostL(const TDesC8& aProxyHost);
williamr@2
   170
        
williamr@2
   171
        /**
williamr@2
   172
        * Gets the Proxy Usage flag.
williamr@2
   173
        * @param aProxyUsage A TBool reference to be filled in with the
williamr@2
   174
        *                    value of the Proxy Usage.
williamr@2
   175
        * @return            KErrNone if no error, or some of the system
williamr@2
   176
        *                    wide error codes.
williamr@2
   177
        */
williamr@2
   178
        virtual TInt ProxyUsageL(TBool& aProxyUsage);
williamr@2
   179
williamr@2
   180
        /**
williamr@2
   181
        * Sets the Proxy Usage flag.
williamr@2
   182
        * @param aProxyUsage is the new value for Proxy Usage.
williamr@2
   183
        */
williamr@2
   184
        virtual void SetProxyUsageL(TBool aProxyUsage);
williamr@2
   185
williamr@2
   186
        /**
williamr@2
   187
        * Gets the information if SecureDialog is shown or not.
williamr@2
   188
        * @param aProxyUsage A TBool reference to be filled in with the
williamr@2
   189
        *                    value of the SecureDialog flag.
williamr@2
   190
        * @return            KErrNone if no error, or some of the system
williamr@2
   191
        *                    wide error codes.
williamr@2
   192
        */
williamr@2
   193
        virtual TInt SecureDialogL(TBool& aSecureDialog);
williamr@2
   194
williamr@2
   195
        /**
williamr@2
   196
        * Sets the flag which controls showing of SecureDialog.
williamr@2
   197
        * @param aSecureDialog is the new value for SecureDialog flag.
williamr@2
   198
        */
williamr@2
   199
        virtual void SetSecureDialogL(TBool aSecureDialog);
williamr@2
   200
        
williamr@2
   201
        /**
williamr@2
   202
        * Gets the information if IAPDialog is shown or not.
williamr@2
   203
        * @param aIAPDialog A TBool reference to be filled in with the
williamr@2
   204
        *                   value of the IAPDialog flag.
williamr@2
   205
        * @return           KErrNone if no error, or some of the system
williamr@2
   206
        *                   wide error codes.
williamr@2
   207
        */
williamr@2
   208
//        virtual TInt IAPDialogL(TBool& aIAPDialog);
williamr@2
   209
williamr@2
   210
        /**
williamr@2
   211
        * Sets the flag which controls showing of IAPDialog.
williamr@2
   212
        * @param aIAPDialog is the new value for IAPDialog flag.
williamr@2
   213
        */
williamr@2
   214
//        virtual void SetIAPDialogL(TBool aIAPDialog);
williamr@2
   215
williamr@2
   216
        /**
williamr@2
   217
        * Gets the Content Type.
williamr@2
   218
        * @param aContentType A TPtrC8 reference to be filled in with the
williamr@2
   219
        *                     value of the Content Type.
williamr@2
   220
        * @return             KErrNone if no error, or some of the system
williamr@2
   221
        *                     wide error codes.
williamr@2
   222
        */
williamr@2
   223
        virtual TInt ContentTypeL(TPtrC8& aContentType);
williamr@2
   224
        
williamr@2
   225
        /**
williamr@2
   226
        * Sets the Content Type.
williamr@2
   227
        * @param aContentType is the new Content Type.
williamr@2
   228
        */
williamr@2
   229
        virtual void SetContentTypeL(const TDesC8& aContentType);
williamr@2
   230
        
williamr@2
   231
        /**
williamr@2
   232
        * Gets the SoapAction.
williamr@2
   233
        * @param aSoapAction A TPtrC8 reference to be filled in with the
williamr@2
   234
        *                    value of the SoapAction.
williamr@2
   235
        * @return            KErrNone if no error, or some of the system
williamr@2
   236
        *                    wide error codes.
williamr@2
   237
        */
williamr@2
   238
        virtual TInt SoapActionL(TPtrC8& aSoapAction);
williamr@2
   239
        
williamr@2
   240
        /**
williamr@2
   241
        * Sets the Soap Action.
williamr@2
   242
        * @param aSoapAction is the new Soap Action.
williamr@2
   243
        */
williamr@2
   244
        virtual void SetSoapActionL(const TDesC8& aSoapAction);
williamr@2
   245
        
williamr@2
   246
        /**
williamr@2
   247
        * Gets the UserAgent.
williamr@2
   248
        * @param aUserAgent  A TPtrC8 reference to be filled in with the
williamr@2
   249
        *                    value of the UserAgent.
williamr@2
   250
        * @return            KErrNone if no error, or some of the system
williamr@2
   251
        *                    wide error codes.
williamr@2
   252
        */
williamr@2
   253
        virtual TInt UserAgentL(TPtrC8& aUserAgent);
williamr@2
   254
        
williamr@2
   255
        /**
williamr@2
   256
        * Sets the UserAgent.
williamr@2
   257
        * @param aUserAgent is the new User Agent.
williamr@2
   258
        */
williamr@2
   259
        virtual void SetUserAgentL(const TDesC8& aUserAgent);
williamr@2
   260
williamr@2
   261
        /**
williamr@2
   262
        * Gets the Accept.
williamr@2
   263
        * @param aAccept     A TPtrC8 reference to be filled in with the
williamr@2
   264
        *                    value of the Accept.
williamr@2
   265
        * @return            KErrNone if no error, or some of the system
williamr@2
   266
        *                    wide error codes.
williamr@2
   267
        */
williamr@2
   268
        virtual TInt AcceptL(TPtrC8& aAccept);
williamr@2
   269
        
williamr@2
   270
        /**
williamr@2
   271
        * Sets the Accept.
williamr@2
   272
        * @param aAccept is the new Accept value.
williamr@2
   273
        */
williamr@2
   274
        virtual void SetAcceptL(const TDesC8& aAccept);
williamr@2
   275
        
williamr@2
   276
        /**
williamr@2
   277
        * Gets the Http method.
williamr@2
   278
        * @param aHttpMethod A TSenHttpMethod reference to be filled in with
williamr@2
   279
        *                    the value of the Http method.
williamr@2
   280
        * @return            KErrNone if no error, or some of the system
williamr@2
   281
        *                    wide error codes.
williamr@2
   282
        */
williamr@2
   283
        virtual TInt HttpMethodL(TSenHttpMethod& aHttpMethod);
williamr@2
   284
        
williamr@2
   285
        /**
williamr@2
   286
        * Sets the Http method.
williamr@2
   287
        * @param aHttpMethod is the new Http method.
williamr@2
   288
        */
williamr@2
   289
        virtual void SetHttpMethodL(TSenHttpMethod aHttpMethod);
williamr@2
   290
williamr@2
   291
        /**
williamr@2
   292
        * Gets the Http version.
williamr@2
   293
        * @param aHttpVersion A TSenHttpVersion reference to be filled in with
williamr@2
   294
        *                     the value of the Http version.
williamr@2
   295
        * @return             KErrNone if no error, or some of the system
williamr@2
   296
        *                     wide error codes.
williamr@2
   297
        */
williamr@2
   298
        virtual TInt HttpVersionL(TSenHttpVersion& aHttpVersion);
williamr@2
   299
        
williamr@2
   300
        /**
williamr@2
   301
        * Sets the Http version.
williamr@2
   302
        * @param aHttpVersion is the new Http version.
williamr@2
   303
        */
williamr@2
   304
        virtual void SetHttpVersionL(TSenHttpVersion aHttpVersion);        
williamr@2
   305
williamr@2
   306
        /**
williamr@2
   307
        * Gets the Http header.
williamr@2
   308
        * @param aHeaderName  Name of the Http header.
williamr@2
   309
        * @param aValue       A TPtrC8 reference to be filled in with the
williamr@2
   310
        *                     value of the Http header.
williamr@2
   311
        * @return             KErrNone if no error, or some of the system
williamr@2
   312
        *                     wide error codes.
williamr@2
   313
        */
williamr@2
   314
        virtual TInt HttpHeaderL(const TDesC8& aHeaderName, TPtrC8& aValue);
williamr@2
   315
        
williamr@2
   316
        /**
williamr@2
   317
        * Sets the Http header.
williamr@2
   318
        * @param aHeaderName  Name of the Http header.
williamr@2
   319
        * @param aValue       Value of the Http header
williamr@2
   320
        */
williamr@2
   321
        virtual void SetHttpHeaderL(const TDesC8& aHeaderName,
williamr@2
   322
                                    const TDesC8& aValue);
williamr@2
   323
williamr@2
   324
williamr@2
   325
        /**
williamr@2
   326
        * Gets the device ID
williamr@2
   327
        * @param aDeviceID  A TPtrC8 reference to be filled in with the
williamr@2
   328
        *                    value of the Device ID.
williamr@2
   329
        * @return            KErrNone if no error, or some of the system
williamr@2
   330
        *                    wide error codes.
williamr@2
   331
        */
williamr@2
   332
        virtual TInt DeviceIDL(TPtrC8& aDeviceID);
williamr@2
   333
williamr@2
   334
        /**
williamr@2
   335
        * Sets the Device ID.
williamr@2
   336
        * @param aDeviceID is the new Device ID.
williamr@2
   337
        */
williamr@2
   338
        virtual void SetDeviceIDL(const TDesC8& aDeviceID);
williamr@2
   339
williamr@2
   340
        /**
williamr@2
   341
        * Gets download folder for incoming BLOB (binary large objects)
williamr@2
   342
        * @param aDownloadFolder - A TPtrC8 reference to be filled in with the
williamr@2
   343
        *                    value of the shared, public folder for downloaded 
williamr@2
   344
        *                    content
williamr@2
   345
        * @return            KErrNone if no error, or some of the system
williamr@2
   346
        *                    wide error codes.
williamr@2
   347
        */
williamr@2
   348
        virtual TInt DownloadFolderL(TPtrC8& aDownloadFolder);
williamr@2
   349
        
williamr@2
   350
        /**
williamr@2
   351
        * Sets download folder for incoming BLOB (binary large objects)
williamr@2
   352
        * @param aDownloadFolder - shared, public folder for downloaded content
williamr@2
   353
        */
williamr@2
   354
        virtual void SetDownloadFolderL(const TDesC8& aDownloadFolder);
williamr@2
   355
             
williamr@2
   356
        /**
williamr@2
   357
        * Gets filename of file attachment
williamr@2
   358
        * @param aCid - cid for filename
williamr@2
   359
        * @param aFileName - filename of file attachment with current cid
williamr@2
   360
        * @return            KErrNone if no error, or some of the system
williamr@2
   361
        *                    wide error codes.
williamr@2
   362
        */
williamr@2
   363
        virtual TInt FileAttachmentL(const TDesC8& aCid, HBufC8*& aFileName);
williamr@2
   364
        
williamr@2
   365
        /**
williamr@2
   366
        * Sets filename of file attachment
williamr@2
   367
        * @param aCid - cid for filename
williamr@2
   368
        * @param aFileName - filename of file attachment with current cid
williamr@2
   369
        * @return            KErrNone if no error, or some of the system
williamr@2
   370
        *                    wide error codes.
williamr@2
   371
        */
williamr@2
   372
        virtual TInt SetFileAttachmentL(const TDesC8& aCid, const TDesC8& aFileName);
williamr@2
   373
williamr@2
   374
        /**
williamr@2
   375
        * Apply binding.
williamr@2
   376
        * @param aSoapVersion is a soap1.2 or soap1.1.
williamr@2
   377
        */
williamr@2
   378
        virtual void ApplyBindingL(TSOAPVersion aSoapVersion);
williamr@2
   379
williamr@2
   380
        /**
williamr@2
   381
        * Gets namespace of Microsoft schema
williamr@2
   382
        * @param aMwsNamespace - namespace 
williamr@2
   383
        * @return            KErrNone if no error, or some of the system
williamr@2
   384
        *                    wide error codes.
williamr@2
   385
        */
williamr@2
   386
        virtual TInt MwsNamespaceL(TPtrC8& aMwsNamespace);
williamr@2
   387
        
williamr@2
   388
        /**
williamr@2
   389
        * Sets namespace of Microsoft schema
williamr@2
   390
        * @param aMwsNamespace - namespace
williamr@2
   391
        * @return            KErrNone if no error, or some of the system
williamr@2
   392
        *                    wide error codes.
williamr@2
   393
        */
williamr@2
   394
        virtual void SetMwsNamespaceL(const TDesC8& aMwsNamespace);
williamr@2
   395
williamr@2
   396
        // From MSenProperties
williamr@2
   397
        virtual void SetReader(CSenXmlReader& aReader);
williamr@2
   398
        virtual TSenPropertiesClassType PropertiesClassType();
williamr@2
   399
        virtual void WriteToL(RWriteStream& aWriteStream);
williamr@2
   400
        virtual void ReadFromL(const TDesC8& aBuffer);
williamr@2
   401
        virtual HBufC8* AsUtf8L();
williamr@2
   402
        virtual HBufC8* AsUtf8LC();
williamr@2
   403
        virtual TBool IsSafeToCast(TSenPropertiesClassType aClass);
williamr@2
   404
        virtual MSenProperties* CloneL() const;
williamr@2
   405
        
williamr@2
   406
        virtual TInt SetPropertyL(const TDesC8& aName, const TDesC8& aValue);
williamr@2
   407
        virtual TInt PropertyL(const TDesC8& aName, TPtrC8& aValue);        
williamr@2
   408
        virtual TInt SetPropertyL(const TDesC8& aName, const TDesC8& aValue, const TDesC8& aType);
williamr@2
   409
        virtual TInt PropertyL(const TDesC8& aName, TPtrC8& aValue, TPtrC8& aType);
williamr@2
   410
        virtual TInt SetIntPropertyL(const TDesC8& aName, const TInt aValue);
williamr@2
   411
        virtual TInt IntPropertyL(const TDesC8& aName, TInt& aValue);
williamr@2
   412
        virtual TInt SetBoolPropertyL(const TDesC8& aName, const TBool aValue);        
williamr@2
   413
        virtual TInt BoolPropertyL(const TDesC8& aName, TBool& aValue);
williamr@2
   414
        virtual TInt SetOmittedL(const TDesC8& aName, TBool aValue);
williamr@2
   415
        virtual TInt RemovePropertyL(const TDesC8& aName);
williamr@2
   416
williamr@2
   417
       /**
williamr@2
   418
        * Destructor.
williamr@2
   419
        */
williamr@2
   420
        virtual ~CSenHttpTransportProperties();
williamr@2
   421
williamr@2
   422
    protected: // base class functions
williamr@2
   423
williamr@2
   424
        virtual void BaseConstructL(const TDesC8& aLocalname, 
williamr@2
   425
                                    const TDesC8& aXml,
williamr@2
   426
                                    CSenXmlReader* aParser = NULL);
williamr@2
   427
williamr@2
   428
        virtual void BaseConstructL(const TDesC8& aNamespace, 
williamr@2
   429
                                    const TDesC8& aLocalname, 
williamr@2
   430
                                    const TDesC8& aXml,
williamr@2
   431
                                    CSenXmlReader* aParser = NULL);
williamr@2
   432
williamr@2
   433
        virtual void BaseConstructL(const TDesC8& aNamespace, 
williamr@2
   434
                                    const TDesC8& aLocalname, 
williamr@2
   435
                                    const TDesC8& aQualifiedName, 
williamr@2
   436
                                    const TDesC8& aXml,
williamr@2
   437
                                    CSenXmlReader* aParser = NULL);
williamr@2
   438
williamr@2
   439
        virtual void BaseConstructL(const CSenElement& aElement);
williamr@2
   440
williamr@2
   441
	public:
williamr@2
   442
        /**
williamr@2
   443
        * Sets the SNAP ID.
williamr@2
   444
        * @param aSnapId is the new SNAP ID.
williamr@2
   445
        */
williamr@2
   446
		virtual void SetSnapIdL(TUint32 aSnapId);
williamr@2
   447
williamr@2
   448
        /**
williamr@2
   449
        * Gets the SNAP ID.
williamr@2
   450
        * @param aCurrentSnapId  A TUint32 reference to be filled in with the
williamr@2
   451
        *                       value of the SNAP ID.
williamr@2
   452
        * @return               KErrNone if no error, or some of the system
williamr@2
   453
        *                       wide error codes.
williamr@2
   454
        */
williamr@2
   455
        virtual TInt SnapIdL(TUint32& aCurrentSnapId);
williamr@2
   456
    protected:
williamr@2
   457
        /**
williamr@2
   458
        * Constructor.
williamr@2
   459
        */
williamr@2
   460
        CSenHttpTransportProperties();
williamr@2
   461
    private:
williamr@2
   462
        HBufC8* AdaptDblQutesLC(const TDesC8& aValue);
williamr@2
   463
    };
williamr@2
   464
williamr@2
   465
#endif // SEN_HTTP_TRANSPORT_PROPERTIES_H