applayerprotocols/httptransportfw/Test/T_HttpIntegration/HttpTransactionCmds.h
changeset 0 b16258d2340f
--- /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
+//-----------------------------------------------------------------------------
+