Attempt to represent the S^2->S^3 header reorganisation as a series of "hg rename" operations
1 // Copyright (c) 2001-2009 Nokia Corporation and/or its subsidiary(-ies).
2 // All rights reserved.
3 // This component and the accompanying materials are made available
4 // under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members
5 // which accompanies this distribution, and is available
6 // at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
8 // Initial Contributors:
9 // Nokia Corporation - initial contribution.
20 @warning : This file contains Rose Model ID comments - please do not delete
23 #ifndef __RHEADERFIELD_H__
24 #define __RHEADERFIELD_H__
28 #include <http/thttphdrval.h>
29 #include <http/rhttppropertyset.h>
30 #include <http/rhttpheaders.h>
32 // Forward declarations
34 class THeaderFieldPartIter;
38 The default chunk size for Raw data should be set to the average length of a header field when encoded in
43 const TInt KDefaultRawChunkSize= 32;
46 //##ModelId=3B1E52A50396
49 An proxy object for a single field in an HTTP header. The class is used by
50 implementations of CHeaderCodec in order to manipulate the header at the part and
51 parameter level, or to obtain raw data, during a header encode/decode operation.
58 //##ModelId=3BA6004002BC
59 RHeaderField(CHeaderField& aHeaderField);
62 //##ModelId=3B1E52A503C0
63 RStringF Name() const;
66 //##ModelId=3B1E52A503BF
67 THeaderFieldPartIter PartsL();
70 //##ModelId=3B1E52A503B9
71 void RawDataL(TPtrC8& aRawData);
74 //##ModelId=3BA6004002B2
75 RHTTPHeaders Collection();
78 //##ModelId=3B1E52A503B6
79 void SetPartL(CHeaderFieldPart* aPart, TInt aIndex);
82 //##ModelId=3B1E52A503B4
83 void BeginRawDataL(TInt aChunkSize = KDefaultRawChunkSize);
86 //##ModelId=3B1E52A503AB
87 void WriteRawDataL(const TDesC8& aData);
90 //##ModelId=3B1E52A503AD
91 void WriteRawDataL(TChar aData);
94 //##ModelId=3B1E52A503AA
97 private: // attributes
99 /** The internal representation of this header field
101 //##ModelId=3B1E52A503A2
102 CHeaderField& iHeaderField;
105 inline RHeaderField::RHeaderField(CHeaderField& aHeaderField)
106 : iHeaderField(aHeaderField)
110 #endif // __CHEADERFIELD_H__