epoc32/include/mw/biocmtm.h
branchSymbian3
changeset 4 837f303aceeb
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/epoc32/include/mw/biocmtm.h	Wed Mar 31 12:33:34 2010 +0100
     1.3 @@ -0,0 +1,83 @@
     1.4 +// Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
     1.5 +// All rights reserved.
     1.6 +// This component and the accompanying materials are made available
     1.7 +// under the terms of "Eclipse Public License v1.0"
     1.8 +// which accompanies this distribution, and is available
     1.9 +// at the URL "http://www.eclipse.org/legal/epl-v10.html".
    1.10 +//
    1.11 +// Initial Contributors:
    1.12 +// Nokia Corporation - initial contribution.
    1.13 +//
    1.14 +// Contributors:
    1.15 +//
    1.16 +// Description:
    1.17 +//
    1.18 +
    1.19 +#if !defined(__CIOCMTM_H__)
    1.20 +#define __BIOCMTM_H__
    1.21 +#if !defined(__E32BASE_H__)
    1.22 +#include <e32base.h>
    1.23 +#endif
    1.24 +#if !defined(__MTCLBASE_H__)
    1.25 +#include <mtclbase.h>
    1.26 +#endif
    1.27 +
    1.28 +#ifndef SYMBIAN_ENABLE_SPLIT_HEADERS  
    1.29 +#include <bsp.h>
    1.30 +#endif
    1.31 +
    1.32 +
    1.33 +
    1.34 +// forward declarations
    1.35 +class CBIODatabase;
    1.36 +
    1.37 +
    1.38 +class CBIOClientMtm : public CBaseMtm
    1.39 +/** BIO client MTM interface.
    1.40 +
    1.41 +The BIO client MTM is simply responsible for requesting BIO message parser 
    1.42 +operations to the BIO Server MTM through InvokeAsyncFunctionL(). Many of the 
    1.43 +other base class functions are implemented to do nothing. 
    1.44 +@publishedPartner
    1.45 +@released
    1.46 +*/
    1.47 +	{
    1.48 +public:
    1.49 +	IMPORT_C static CBIOClientMtm* NewL(CRegisteredMtmDll& aRegisteredMtmDll, CMsvSession& aSession);
    1.50 +	~CBIOClientMtm();
    1.51 +	// from MMsvEntryObserver
    1.52 +	void HandleEntryEvent(TMsvEntryEvent aEvent, TAny* aArg1, TAny* aArg2, TAny* aArg3);
    1.53 +	//
    1.54 +	// from CBaseMtm
    1.55 +	void SaveMessageL(); 
    1.56 +	void LoadMessageL();
    1.57 +	CMsvOperation* ReplyL  (TMsvId aDestination, TMsvPartList aPartlist, TRequestStatus& aCompletionStatus);
    1.58 +	CMsvOperation* ForwardL(TMsvId aDestination, TMsvPartList aPartList, TRequestStatus& aCompletionStatus);
    1.59 +	TMsvPartList ValidateMessage(TMsvPartList aPartList);
    1.60 +	TMsvPartList Find(const TDesC& aTextToFind, TMsvPartList aPartList);
    1.61 +	void AddAddresseeL(const TDesC& aRealAddress);
    1.62 +	void AddAddresseeL(const TDesC& aRealAddress, const TDesC& aAlias);
    1.63 +	void RemoveAddressee(TInt aIndex);
    1.64 +	// --- RTTI functions ---
    1.65 +	TInt QueryCapability(TUid aCapability, TInt& aResponse);
    1.66 +	void InvokeSyncFunctionL(TInt aFunctionId,const CMsvEntrySelection& aSelection, TDes8& aParameter);
    1.67 +	CMsvOperation*  InvokeAsyncFunctionL(TInt aFunctionId,const CMsvEntrySelection& aSelection, TDes8& aParameter, TRequestStatus& aCompletionStatus);
    1.68 +protected:
    1.69 +	//
    1.70 +	// from CBaseMtm
    1.71 +	void ContextEntrySwitched();
    1.72 +	//
    1.73 +private:
    1.74 +	CBIOClientMtm(CRegisteredMtmDll& aRegisteredMtmDll, CMsvSession& aSession);
    1.75 +	void ConstructL();
    1.76 +	//
    1.77 +	void FindInDescriptionL(const TDesC& aTextToFind, TMsvPartList aPartList,TMsvPartList& aFoundList);
    1.78 +	void FindInOriginatorL(const TDesC& aTextToFind, TMsvPartList aPartList,TMsvPartList& aFoundList);
    1.79 +	void FindInBodyL(const TDesC& aTextToFind, TMsvPartList aPartList,TMsvPartList& aFoundList);
    1.80 +private:
    1.81 +	RFs					iFs;
    1.82 +	CBIODatabase*		iBioDatabase;
    1.83 +	};
    1.84 +
    1.85 +
    1.86 +#endif