/*
* Copyright (c) 2002 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: SyncML HTTP client
*
*/
#include "nsmlhttp.h"
// Standard headers used by default
_LIT8(KSmlCacheControl, "no-store");
_LIT8(KSmlAcceptCharSet, "utf-8");
_LIT8(KSmlAcceptLanguage, "en");
_LIT8(KSmlContentType, "Content-Type");
_LIT8(KSmlAcceptEncodingType, "Accept-Encoding");
_LIT8(KSmlContentEncodingType, "Content-Encoding");
_LIT8(KSmlContentTypeDS, "application/vnd.syncml+wbxml");
_LIT8(KSmlContentTypeDM, "application/vnd.syncml.dm+wbxml");
_LIT8(KSmlContentDeflate, "deflate");
_LIT(KSmlHttpClientPanic, "HTTP Client Panic");
#define KServerUntrusted -7548 //symbian error code
enum TSmlHttpPanics
{
EReqBodySubmitBufferNotAllocated,
KBodyWithInvalidSize,
KCouldNotNotifyBodyDataPart
};
//============================================================
// Class CHttpEventHandler declaration
// Handles all events for the active transaction.
//
//============================================================
class CHttpEventHandler : public CBase, public MHTTPTransactionCallback
{
public:
virtual ~CHttpEventHandler();
static CHttpEventHandler* NewLC();
static CHttpEventHandler* NewL();
//
// methods from MHTTPTransactionCallback
//
virtual void MHFRunL( RHTTPTransaction aTransaction, const THTTPEvent& aEvent );
virtual TInt MHFRunError( TInt aError, RHTTPTransaction aTransaction, const THTTPEvent& aEvent );
protected:
CHttpEventHandler();
void ConstructL( CNSmlHTTP* aAgent );
private:
CNSmlHTTP* iAgent;
MHTTPDataSupplier* iRespBody;
private:
friend class CNSmlHTTP;
};