diff -r 000000000000 -r b16258d2340f applayerprotocols/httptransportfw/Test/T_HttpIntegration/HttpTransactionCmds.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/applayerprotocols/httptransportfw/Test/T_HttpIntegration/HttpTransactionCmds.h Tue Feb 02 01:09:52 2010 +0200 @@ -0,0 +1,132 @@ +// Copyright (c) 2002-2009 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: +// $Header$ +// The header file introducing the collection of HTTP command classes +// of the Integration Harness framework. +// on: aug 2002, +// +// + +#ifndef __HTTPTRANSACTIONCMDS_H__ +#define __HTTPTRANSACTIONCMDS_H__ + +//----------------------------------------------------------------------------- +// Command: The 'TRANSACTION' command which creates a transaction in the named session etc + +class CTestTransaction; + +class CCmdTransaction : public CCmdBase +{ +public: + + static CCmdTransaction *NewL (TInt, const TDesC& aKeyphrase, const TDesC& aHelpPhrase); + static CCmdTransaction *NewLC(TInt, const TDesC& aKeyphrase, const TDesC& aHelpPhrase); + virtual ~CCmdTransaction(); + + // helper defs and methods for Transaction processing + enum TTransactionModes + { + EIdleTransaction, + EGetTransaction, + EPostTransaction, + EHeadTransaction, + ETraceTransaction, + + // add new modes above this line + EMaxTransactionModes + }; + +protected: + + void ConstructL(TInt aCommandId, const TDesC& aKeyphrase, const TDesC& aHelpPhrase); + CCmdTransaction() {}; // ensure a concrete class! + +public: + TInt ProcessL (const TDesC& aCommand); + +// private methods for our own personal use! +private: + + TBool checkConnectionExists(TPtrC &); + TBool checkMethodExists(TPtrC &); + TInt ParseCmdArgs( const TDesC& aCommand, TPtrC& aTransName, TPtrC& aConName, TPtrC& aTransMthd, + TPtrC& aTransURI, TPtrC& aPostData); + void ShowTransactions(); + + + void CloseTransaction(RHTTPTransaction &); + +private: + + TInt iExpectedError; + TBool iExpectError; + TInt iTestFail; + TInt iExpectedStatusCode; + THTTPEvent iReceivedError; + TInt iTransactionIndex; + HTTP::TStrings eStrIndex; + TBool iHasARequestBody; + TInt iExpectedNumberRedirects; + + TInt iSessionEventIndex; + TInt iTransactionEventIndex; +}; + +class CCmdEndTransaction : public CCmdBase +{ +public: + + static CCmdEndTransaction *NewL (TInt, const TDesC& aKeyphrase, const TDesC& aHelpPhrase); + static CCmdEndTransaction *NewLC(TInt, const TDesC& aKeyphrase, const TDesC& aHelpPhrase); + virtual ~CCmdEndTransaction(); + +protected: + + void ConstructL(TInt aCommandId, const TDesC& aKeyphrase, const TDesC& aHelpPhrase); + CCmdEndTransaction() {}; // ensure a concrete class! + +public: + TInt ProcessL (const TDesC& aCommand); + +// private methods for our own personal use! +private: + + TInt ParseCmdArgs( const TDesC& aCommand, TPtrC& aTransName); +}; + +class CCmdShowTransaction : public CCmdBase +{ +public: + + static CCmdShowTransaction *NewL (TInt, const TDesC& aKeyphrase, const TDesC& aHelpPhrase); + static CCmdShowTransaction *NewLC(TInt, const TDesC& aKeyphrase, const TDesC& aHelpPhrase); + virtual ~CCmdShowTransaction(); + +protected: + + void ConstructL(TInt aCommandId, const TDesC& aKeyphrase, const TDesC& aHelpPhrase); + CCmdShowTransaction() {}; // ensure a concrete class! + +public: + TInt ProcessL (const TDesC& aCommand); +}; + +//----------------------------------------------------------------------------- + +#endif // __HTTPTRANSACTIONCMDS_H__ + +//----------------------------------------------------------------------------- +// End of File +//----------------------------------------------------------------------------- +