diff -r 000000000000 -r 8e480a14352b messagingfw/biomsgfw/T_BIOMSG/INC/parsers.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/messagingfw/biomsgfw/T_BIOMSG/INC/parsers.h Mon Jan 18 20:36:02 2010 +0200 @@ -0,0 +1,336 @@ +// Copyright (c) 2003-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: +// + +#ifndef __PARSERS_H +#define __PARSERS_H + +#include "testframeparse.h" +#include "harness.h" + +// +// This class parses the main section +class CBioMainSectionParser : public CBaseSectionParser + { +public: + static CBioMainSectionParser* NewL(CMainTestHarness& aMainTest, CTestScript& aScript); + +protected: + void ConstructL(); + inline CBioMainSectionParser(CMainTestHarness& aMainTest, CTestScript& aScript) : CBaseSectionParser(aScript), iMainTest(aMainTest) {} + void LogComment(const TDesC& aComment); + +private: + CMainTestHarness& iMainTest; +}; + +// +// This class parses the bio_client_test command in the main section +class CBioMainCommandsParser : public CBaseCommandParser +{ +public: + void ProcessL(); + static CBioMainCommandsParser* NewL(CTestScript& aScript, CMainTestHarness& aMainTest); + +private: + void ConstructL(); + inline CBioMainCommandsParser(CTestScript& aScript, CMainTestHarness& aMainTest) : iMainTest(aMainTest), iScript(aScript) {} + CMainTestHarness& iMainTest; + CTestScript& iScript; +}; + +// +// This class parses the client secion specified in the bio_client_test cmd +class CBioClientSectionParser : public CBaseSectionParser +{ +public: + static CBioClientSectionParser* NewL(CClientTestHarness& aTest, CTestScript& aScript, const TDesC& aNewSectionName); + +protected: + void LogComment(const TDesC& aComment); + void ConstructL(const TDesC& aNewSectionName); + inline CBioClientSectionParser(CClientTestHarness& aTest, CTestScript& aScript) : CBaseSectionParser(aScript), iClientTest(aTest), iScript(aScript) {} + +private: + CClientTestHarness& iClientTest; + CTestScript& iScript; +}; + +// +// This class parses the commands in the client secion +class CBioClientCommandsParser : public CBaseCommandParser +{ +public: + void ProcessL(); + static CBioClientCommandsParser* NewL(CClientTestHarness& aMainTest); + +private: + void ConstructL(); + inline CBioClientCommandsParser(CClientTestHarness& aClientTest) : iClientTest(aClientTest) {} + CClientTestHarness& iClientTest; +}; + +// +// This class parses the SmsSettings section +class CBioSmsSettingsSectionParser : public CBaseSectionParser +{ +public: + static CBioSmsSettingsSectionParser* NewL(CClientTestHarness& aTest, CTestScript& aScript, const TDesC& aNewSectionName); + +protected: + void LogComment(const TDesC& aComment); + void ConstructL(const TDesC& aNewSectionName); + inline CBioSmsSettingsSectionParser(CClientTestHarness& aTest, CTestScript& aScript) : CBaseSectionParser(aScript), iClientTest(aTest), iScript(aScript) {} + +private: + CClientTestHarness& iClientTest; + CTestScript& iScript; +}; + +// +// This class handles the Sms commands +class CBioSmsSettingsCommandsParser : public CBaseCommandParser +{ +public: + void ProcessL(); + static CBioSmsSettingsCommandsParser* NewL(CClientTestHarness& aMainTest); +private: + void ConstructL(); + inline CBioSmsSettingsCommandsParser(CClientTestHarness& aClientTest) : iClientTest(aClientTest) {} + CClientTestHarness& iClientTest; +}; + +// +// This class parses the Pop3Settings section +class CBioPop3SettingsSectionParser : public CBaseSectionParser +{ +public: + static CBioPop3SettingsSectionParser* NewL(CClientTestHarness& aTest, CTestScript& aScript, const TDesC& aNewSectionName); + +protected: + void LogComment(const TDesC& aComment); + void ConstructL(const TDesC& aNewSectionName); + inline CBioPop3SettingsSectionParser(CClientTestHarness& aTest, CTestScript& aScript) : CBaseSectionParser(aScript), iClientTest(aTest), iScript(aScript) {} + +private: + CClientTestHarness& iClientTest; + CTestScript& iScript; +}; + +// +// This class parses the Pop3Settings section +class CBioPop3NamedSettingsSectionParser : public CBaseSectionParser +{ +public: + static CBioPop3NamedSettingsSectionParser* NewL(CClientTestHarness& aTest, CTestScript& aScript, const TDesC& aNewSectionName, const TDesC& aSettingsName); + +protected: + void LogComment(const TDesC& aComment); + void ConstructL(const TDesC& aNewSectionName, const TDesC& aSettingsName); + inline CBioPop3NamedSettingsSectionParser(CClientTestHarness& aTest, CTestScript& aScript) : CBaseSectionParser(aScript), iClientTest(aTest), iScript(aScript) {} + +private: + CClientTestHarness& iClientTest; + CTestScript& iScript; +}; + +// +// This class handles the POP3 commands +class CBioPop3SettingsCommandsParser : public CBaseCommandParser +{ +public: + void ProcessL(); + static CBioPop3SettingsCommandsParser* NewL(CClientTestHarness& aMainTest); +private: + void ConstructL(); + inline CBioPop3SettingsCommandsParser(CClientTestHarness& aClientTest) : iClientTest(aClientTest) {} + CClientTestHarness& iClientTest; +}; + +// +// This class parses the SMTPSettings section +class CBioSmtpSettingsSectionParser : public CBaseSectionParser +{ +public: + static CBioSmtpSettingsSectionParser* NewL(CClientTestHarness& aTest, CTestScript& aScript, const TDesC& aNewSectionName); + +protected: + void LogComment(const TDesC& aComment); + void ConstructL(const TDesC& aNewSectionName); + inline CBioSmtpSettingsSectionParser(CClientTestHarness& aTest, CTestScript& aScript) : CBaseSectionParser(aScript), iClientTest(aTest), iScript(aScript) {} + +private: + CClientTestHarness& iClientTest; + CTestScript& iScript; +}; + +// +// This class parses the SmtpSettings section +class CBioSmtpNamedSettingsSectionParser : public CBaseSectionParser +{ +public: + static CBioSmtpNamedSettingsSectionParser* NewL(CClientTestHarness& aTest, CTestScript& aScript, const TDesC& aNewSectionName, const TDesC& aSettingsName); + +protected: + void LogComment(const TDesC& aComment); + void ConstructL(const TDesC& aNewSectionName, const TDesC& aSettingsName); + inline CBioSmtpNamedSettingsSectionParser(CClientTestHarness& aTest, CTestScript& aScript) : CBaseSectionParser(aScript), iClientTest(aTest), iScript(aScript) {} + +private: + CClientTestHarness& iClientTest; + CTestScript& iScript; +}; + + +// +// This class handles the SMTP commands +class CBioSmtpSettingsCommandsParser : public CBaseCommandParser +{ +public: + void ProcessL(); + static CBioSmtpSettingsCommandsParser* NewL(CClientTestHarness& aMainTest); +private: + void ConstructL(); + inline CBioSmtpSettingsCommandsParser(CClientTestHarness& aClientTest) : iClientTest(aClientTest) {} + CClientTestHarness& iClientTest; +}; + + +// +// This class parses the ImapSettings section +class CBioImapSettingsSectionParser : public CBaseSectionParser +{ +public: + static CBioImapSettingsSectionParser* NewL(CClientTestHarness& aTest, CTestScript& aScript, const TDesC& aNewSectionName); + +protected: + void LogComment(const TDesC& aComment); + void ConstructL(const TDesC& aNewSectionName); + inline CBioImapSettingsSectionParser(CClientTestHarness& aTest, CTestScript& aScript) : CBaseSectionParser(aScript), iClientTest(aTest), iScript(aScript) {} + +private: + CClientTestHarness& iClientTest; + CTestScript& iScript; +}; + + + +// +// This class parses the ImapSettings section +class CBioImapNamedSettingsSectionParser : public CBaseSectionParser +{ +public: + static CBioImapNamedSettingsSectionParser* NewL(CClientTestHarness& aTest, CTestScript& aScript, const TDesC& aNewSectionName, const TDesC& aSettingsName); + +protected: + void LogComment(const TDesC& aComment); + void ConstructL(const TDesC& aNewSectionName, const TDesC& aSettingsName); + inline CBioImapNamedSettingsSectionParser(CClientTestHarness& aTest, CTestScript& aScript) : CBaseSectionParser(aScript), iClientTest(aTest), iScript(aScript) {} + +private: + CClientTestHarness& iClientTest; + CTestScript& iScript; +}; + + +// +// This class handles the Imap commands +class CBioImapSettingsCommandsParser : public CBaseCommandParser +{ +public: + void ProcessL(); + static CBioImapSettingsCommandsParser* NewL(CClientTestHarness& aMainTest); +private: + void ConstructL(); + inline CBioImapSettingsCommandsParser(CClientTestHarness& aClientTest) : iClientTest(aClientTest) {} + CClientTestHarness& iClientTest; +}; + +// +// This class parses the CommDB section +class CBioCommDBSectionParser : public CBaseSectionParser +{ +public: + static CBioCommDBSectionParser* NewL(CClientTestHarness& aTest, CTestScript& aScript, const TDesC& aTableName, const TDesC& aNewSectionName); + void SectionFinishedL(TTestDebugInfo& aDebugInfo); + +protected: + void LogComment(const TDesC& aComment); + void ConstructL(const TDesC& aTableName, const TDesC& aNewSectionName); + inline CBioCommDBSectionParser(CClientTestHarness& aTest, CTestScript& aScript) : CBaseSectionParser(aScript), iClientTest(aTest), iScript(aScript) {} + +private: + CClientTestHarness& iClientTest; + CTestScript& iScript; +}; + +// +// This class handles the CommDB commands +class CBioCommDBCommandParser : public CBaseCommandParser +{ +public: + void ProcessL(); + static CBioCommDBCommandParser* NewL(CClientTestHarness& aMainTest, const TDesC& aTableName); + void SectionFinishedL(TTestDebugInfo& aDebugInfo); + +private: + void ConstructL(); + inline CBioCommDBCommandParser(CClientTestHarness& aClientTest, const TDesC& aTableName) : iClientTest(aClientTest), iTableName(aTableName) {} + +private: + CClientTestHarness& iClientTest; + TBuf<50> iTableName; +}; + +// +// This class parses the gen_msg_from_section section +class CBioGenMsgCommandParser; +class CBioGenMsgSectionParser : public CBaseSectionParser +{ +public: + static CBioGenMsgSectionParser* NewL(CClientTestHarness& aTest, CTestScript& aScript, const TDesC& aNewSectionName); + void SectionFinishedL(); + +protected: + void LogComment(const TDesC& aComment); + void ConstructL(const TDesC& aNewSectionName); + inline CBioGenMsgSectionParser(CClientTestHarness& aTest, CTestScript& aScript) : CBaseSectionParser(aScript), iClientTest(aTest), iScript(aScript) {} + +private: + CClientTestHarness& iClientTest; + CTestScript& iScript; + CBioGenMsgCommandParser* iCmdParser; // Created, but NOT owned by us. +}; + +// +// This class parses the commands in the gen_msg_from_section section +class CBioGenMsgCommandParser : public CBaseCommandParser +{ +public: + void ProcessL(); + static CBioGenMsgCommandParser* NewL(CClientTestHarness& aMainTest); + void SectionFinishedL(); + +private: + void ConstructL(); + inline CBioGenMsgCommandParser(CClientTestHarness& aClientTest) : iClientTest(aClientTest) {} + inline ~CBioGenMsgCommandParser() { delete iBuffer; } + +private: + CClientTestHarness& iClientTest; + HBufC* iBuffer; + TBIOMessageType iMsgType; +}; + +#endif