RHTTPHeaders Class Reference
The collection of headers (or more correctly, header fields) associated with a message. Header (fields) can be created, read and modified. They may be composed of several parts (by repeated invocations of API methods, see below) and may be assigned one or more parameters. Individual field parts and parameters take values described using
THTTPHdrVal
.
RHTTPMessage
THTTPHdrVal
Public Member Functions
|
|
RHTTPHeaders
()
|
IMPORT_C
TInt
|
FieldPartsL
(
RStringF
)
|
IMPORT_C
THTTPHdrFieldIter
|
Fields
()
|
IMPORT_C
TInt
|
GetField
(
RStringF
,
TInt
,
THTTPHdrVal
&)
|
IMPORT_C
TInt
|
GetParam
(
RStringF
,
RStringF
,
THTTPHdrVal
&,
TInt
)
|
IMPORT_C
TInt
|
GetRawField
(
RStringF
,
TPtrC8
&)
|
IMPORT_C void
|
GetRawFieldL
(
RStringF
,
TPtrC8
&)
|
IMPORT_C void
|
RemoveAllFields
()
|
IMPORT_C
TInt
|
RemoveField
(
RStringF
)
|
IMPORT_C
TInt
|
RemoveFieldPart
(
RStringF
,
TInt
)
|
IMPORT_C
TInt
|
SetField
(
RStringF
,
THTTPHdrVal
)
|
IMPORT_C
TInt
|
SetField
(
RStringF
,
THTTPHdrVal
,
RStringF
,
THTTPHdrVal
)
|
IMPORT_C void
|
SetFieldL
(
RStringF
,
THTTPHdrVal
)
|
IMPORT_C void
|
SetFieldL
(
RStringF
,
THTTPHdrVal
,
RStringF
,
THTTPHdrVal
)
|
IMPORT_C void
|
SetParamL
(
RStringF
,
RStringF
,
THTTPHdrVal
,
TInt
)
|
IMPORT_C
TInt
|
SetRawField
(
RStringF
, const
TDesC8
&, const
TDesC8
&)
|
IMPORT_C void
|
SetRawFieldL
(
RStringF
, const
TDesC8
&, const
TDesC8
&)
|
Constructor & Destructor Documentation
RHTTPHeaders()
RHTTPHeaders
|
(
|
)
|
[inline]
|
Member Functions Documentation
FieldPartsL(RStringF)
Getter methods Methods for reading data. Obtain the number of parts in the named header field's value, Simple headers are created with a single part following one call to SetFieldL. Subsequent calls to SetFieldL create additional parts if the field exists already.
-
leave
-
KErrNoMemory
Fields()
Access the fields within this header collection, via an iterator. Each application of the iterator returns the name of the next field type. This may then be accessed via
RHTTPHeaders
methods.
GetField(RStringF, TInt, THTTPHdrVal &)
Obtain the named header field's value. The index of a part within the field must be specified. Parts are indexed from 0 and fields with only one part return the entire field for index 0
Parameters
RStringF
aFieldName
|
The header name
|
TInt
aPartIdx
|
The index of the part
|
THTTPHdrVal
& aHeaderValue
|
The header field value
|
GetParam(RStringF, RStringF, THTTPHdrVal &, TInt)
Obtain the value of a named parameter, associated with the named header field. An optional index to a part within the header field may be supplied, if not it is assumed that it is the first part.
Parameters
RStringF
aFieldName
|
The header name
|
RStringF
aParamName
|
The parameter name
|
THTTPHdrVal
& aReturn
|
The returned value. Note that this must be Copy()d by the caller, if it wants to keep the value.
|
TInt
aPartIdx = 0
|
The optional index of the part
|
GetRawField(RStringF, TPtrC8 &)
Obtain an Raw representation of the named header field's value. Note that general client use of this method is strongly discouraged since it exposes the Raw representation of particular headers. However it may be needed for some cases where received headers could not be decoded by
HTTP
. It will normally be used internally when preparing header data to be transmitted with a request. Note that this API may not return the field values for all the headers.
Parameters
RStringF
aFieldName
|
The field name, e.g, 'Content-Type'
|
TPtrC8
& aRawFieldData
|
The field's data content, in an appropriate Raw form
|
GetRawFieldL(RStringF, TPtrC8 &)
IMPORT_C void
|
GetRawFieldL
|
(
|
RStringF
|
aFieldName,
|
|
TPtrC8
&
|
aRawFieldData
|
|
)
|
const
|
RemoveAllFields()
IMPORT_C void
|
RemoveAllFields
|
(
|
)
|
|
Remove all the fields of this header collection
RemoveField(RStringF)
Remove, entirely, the named header field from the header collection. All its parts and associated parameters (where they exist) are also removed.
RemoveFieldPart(RStringF, TInt)
Remove a single part of a header field. Just the part and any associated paramters are removed. If this results in no parts being present in the header then it will also be removed
Parameters
RStringF
aFieldName
|
The header name
|
TInt
aIndex
|
The particular part of the field to be removed
|
SetField(RStringF, THTTPHdrVal)
SetField(RStringF, THTTPHdrVal, RStringF, THTTPHdrVal)
SetFieldL(RStringF, THTTPHdrVal)
Setter Methods Methods for writing data. Set a named field in the header. On the first instance that this API method is used for a given field name, the first will be created. On subsequent calls, the same field will be extended to have several parts, with a new part created to hold the supplied value.
Parameters
RStringF
aFieldName
|
The field name, e.g, 'Content-Type'
|
THTTPHdrVal
aFieldValue
|
The field value, e.g. 'text/html'
|
SetFieldL(RStringF, THTTPHdrVal, RStringF, THTTPHdrVal)
Set a named field in the header, and associate with it the supplied parameter. If the field doesn't already exist it will be created along with a parameter; if it does exist, then a new part will be created along with the parameter.
Parameters
RStringF
aFieldName
|
The field name, e.g. 'Accept'
|
THTTPHdrVal
aFieldValue
|
The field value. e.g. 'text/plain'
|
RStringF
aParamName
|
The parameter name, e.g. 'q'
|
THTTPHdrVal
aParamValue
|
The parameter value, e.g. '0.3'
|
SetParamL(RStringF, RStringF, THTTPHdrVal, TInt)
Set a parameter in an existing header.
-
leave
-
KErrNotFoud if the field, or the part within the field doesn't exist
Parameters
RStringF
aFieldName
|
The field name, e.g. 'Accept'
|
RStringF
aParamName
|
The parameter name, e.g. 'q'
|
THTTPHdrVal
aParamValue
|
The parameter value, e.g. '0.3'
|
TInt
aPartIdx
|
The part of the header to add the parameter to
|
SetRawField(RStringF, const TDesC8 &, const TDesC8 &)
SetRawFieldL(RStringF, const TDesC8 &, const TDesC8 &)
IMPORT_C void
|
SetRawFieldL
|
(
|
RStringF
|
aFieldName,
|
|
const
TDesC8
&
|
aRawFieldData,
|
|
const
TDesC8
&
|
aFieldSeparator
|
|
)
|
|
Set a named field in the header to contain the supplied Raw header data. If the header already exists then a LF and the new data will be added to the existing data. This is used to indicate that there are multiple instances of this header
Note that general client use of this method is strongly discouraged since it exposes the raw representation of particular headers. However it may be needed for some cases where headers to be transmitted have no encoding known to
HTTP
. It will normally be used internally when receiving data from a service provider.
Parameters
RStringF
aFieldName
|
The field name, e.g, 'Content-Type'
|
const
TDesC8
& aRawFieldData
|
The field's data content, in a raw form
|
const
TDesC8
& aFieldSeparator
|
The header field separator
|
Member Data Documentation
CHeaders * iImplementation
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.