diff -r 000000000000 -r 8466d47a6819 meetingrequest/mrtasks/inc/cesmrtaskbase.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/meetingrequest/mrtasks/inc/cesmrtaskbase.h Thu Dec 17 08:39:21 2009 +0200 @@ -0,0 +1,105 @@ +/* +* Copyright (c) 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: Interface definition for ESMR task factory implementation +* +*/ + + +#ifndef C_ESMRTASKBASE_H +#define C_ESMRTASKBASE_H + +#include +#include "mesmrtask.h" + +class MESMRCalDbMgr; +class MESMRMeetingRequestEntry; +class CMRMailboxUtils; + +/** + * CESMRTaskBase is base class for ES MR tasks + * + * @lib esmrtasks.lib + */ +class CESMRTaskBase : public CBase, + public MESMRTask + { +public: + + /** + * C++ destructor. + */ + virtual ~CESMRTaskBase(); + +protected:// Implementation + + /** + * C++ constructor + * @param aCalDbMgr Reference to cal db manager. + */ + CESMRTaskBase( + MESMRCalDbMgr& aCalDbMgr, + MESMRMeetingRequestEntry& aEntry, + CMRMailboxUtils& aMRMailboxUtils ); + + /** + * Stores entry to calendar DB + */ + void StoreEntryToDbL(); + + /** + * Base class's EPOC 2nd phase constructor. + */ + void BaseConstructL(); + + /** + * Fetches reference to cal db manager. + * @return Reference to cal db manager. + */ + inline MESMRCalDbMgr& CalDbMgr(); + + /** + * Fetches reference to es mr calendar entry. + * @return Reference to es mr calendar entry. + */ + inline MESMRMeetingRequestEntry& ESMREntry(); + + /** + * Fetches the reference to mr mailbox utilities. + * @return reference to mr mailbox utilities. + */ + inline CMRMailboxUtils& MailboxUtils(); + +private: // Data + + /** + * Reference to cal db manager + * Not own. + */ + MESMRCalDbMgr& iCalDbMgr; + + /** + * Reference to ES MR calendar entry + * Not Own. + */ + MESMRMeetingRequestEntry& iEntry; + /** + * Reference to mr mailbox utilities + * Not own. + */ + CMRMailboxUtils& iMRMailboxUtils; + }; + +#include "cesmrtaskbase.inl" + +#endif // C_ESMRTASKBASE_H