#include <mw/chttpformencoder.h>
class CHTTPFormEncoder : public CBase, public MHTTPDataSupplier |
Public Member Functions | |
---|---|
~CHTTPFormEncoder() | |
IMPORT_C void | AddFieldL(const TDesC8 &, const TDesC8 &) |
virtual TBool | GetNextDataPart(TPtrC8 &) |
IMPORT_C CHTTPFormEncoder * | NewL() |
virtual TInt | OverallDataSize() |
virtual void | ReleaseData() |
virtual TInt | Reset() |
A data supplier class that is used to build up data that is to be encoded to application/x-www-form-urlencoded.
A client will create an instance of this class and add name/value pairs. They then use this as the data supplier for the body of an http request that is a forms submission.
The name and value must both be supplied in the correct character encoding that you want to send to the server. This then gets url encoded.
IMPORT_C | ~CHTTPFormEncoder | ( | ) |
Parameters | |
---|---|
aFieldName | A name. This must not be empty |
aFieldValue | A value. This may be an empty descriptor |
Leave Codes | |
---|---|
KErrNoMemory | There was not enough memory |
KErrArgument | aFieldName was empty |
Panic Codes | |
---|---|
Will | panic if called after the first data has been supplied or OverallDataSize has been called |
Reimplemented from MHTTPDataSupplier::GetNextDataPart(TPtrC8 &)
Obtain a data part from the supplier. The data is guaranteed to survive until a call is made to ReleaseData().
Parameters | |
---|---|
aDataPart | - the data part |
IMPORT_C CHTTPFormEncoder * | NewL | ( | ) | [static] |
TInt | OverallDataSize | ( | ) | [virtual] |
Reimplemented from MHTTPDataSupplier::OverallDataSize()
Obtain the overall size of the data being supplied, if known to the supplier. Where a body of data is supplied in several parts this size will be the sum of all the part sizes. If the size is not known, KErrNotFound is returned; in this case the client must use the return code of GetNextDataPart to find out when the data is complete.
void | ReleaseData | ( | ) | [virtual] |
Reimplemented from MHTTPDataSupplier::ReleaseData()
Release the current data part being held at the data supplier. This call indicates to the supplier that the part is no longer needed, and another one can be supplied, if appropriate.
TInt | Reset | ( | ) | [virtual] |
Reimplemented from MHTTPDataSupplier::Reset()
Reset the data supplier. This indicates to the data supplier that it should return to the first part of the data. This could be used in a situation where the data consumer has encountered an error and needs the data to be supplied afresh. Even if the last part has been supplied (i.e. GetNextDataPart has returned ETrue), the data supplier should reset to the first part.
If the supplier cannot reset it should return an error code; otherwise it should return KErrNone, where the reset will be assumed to have succeeded