1.1 --- a/epoc32/include/cntsync.h Tue Mar 16 16:12:26 2010 +0000
1.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
1.3 @@ -1,135 +0,0 @@
1.4 -// Copyright (c) 2001-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 the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members
1.8 -// which accompanies this distribution, and is available
1.9 -// at the URL "http://www.symbianfoundation.org/legal/licencesv10.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 -#ifndef __CNTSYNC_H__
1.20 -#define __CNTSYNC_H__
1.21 -
1.22 -
1.23 -#include <e32base.h>
1.24 -#include <cntdef.h>
1.25 -
1.26 -class CContactICCEntry;
1.27 -class MContactSynchroniser
1.28 -/**
1.29 -Abstract interface for a contacts phonebook synchroniser.
1.30 -
1.31 -It should be inherited by classes which implement the phonebook
1.32 -synchroniser API. The plug-in should have a second UID of
1.33 -0x101F4A6E (KUidContactSynchroniserDll).
1.34 -
1.35 -@internalAll
1.36 -*/
1.37 - {
1.38 -public:
1.39 - /**
1.40 - @internalAll
1.41 - */
1.42 - enum TValidateOperation
1.43 - {
1.44 - ERead, /** Check a cached ICC contact can be read */
1.45 - ESearch, /** Check a cached ICC contact can be searched */
1.46 - EEdit /** Check a cached ICC contact can be edited */
1.47 - };
1.48 -public:
1.49 - /*
1.50 - A CContactICCEntry is wanted for read/search or edit.
1.51 - */
1.52 - virtual TInt ValidateContact(TValidateOperation aOp, TContactItemId aId) = 0;
1.53 - /*
1.54 - A CContactICCEntry has being added/edited.
1.55 - */
1.56 - virtual TInt ValidateWriteContact(CContactICCEntry& aContactItem) = 0;
1.57 - /*
1.58 - A CContactICCEntry is being deleted from the database.
1.59 - */
1.60 - virtual TInt DeleteContact(TContactItemId aId) = 0;
1.61 - /*
1.62 - Release resources used by Phonebook Synchroniser. Called prior to unloading plug-in.
1.63 - */
1.64 - virtual void Release() = 0;
1.65 - /*
1.66 - A new CContactICCEntry has been added to the database.
1.67 - (Called after ValidateWriteContact() and database write has completed.)
1.68 - */
1.69 - virtual void UpdatePostWriteL(const CContactICCEntry& aContactItem) = 0;
1.70 -
1.71 - /*
1.72 - Id of template contact for specified phonebook
1.73 - */
1.74 - virtual TContactItemId ICCTemplateIdL(TUid aPhonebookUid) = 0;
1.75 -
1.76 - /*
1.77 - Id of contact group for specified phonebook
1.78 - */
1.79 - virtual TContactItemId GroupIdL(TUid aPhonebookUid) = 0;
1.80 -
1.81 - /*
1.82 - Request notifiction of Synchronisation state changes for specified phonebook
1.83 - */
1.84 - virtual void NotifySyncStateChange(TRequestStatus& aStatus, TUid aPhonebookUid) = 0;
1.85 - /*
1.86 - Cancel notification of Synchronisation state changes for specified phonebook
1.87 - */
1.88 - virtual void CancelNotifyRequest(TUid aPhonebookUid) = 0;
1.89 - /*
1.90 - Test Synchronisation state changes for specified phonebook
1.91 - */
1.92 - virtual TBool IsSynchronisedL(TUid aPhonebookUid) = 0;
1.93 -
1.94 - /*
1.95 - List of Phonebooks supported by Phonebook Synchroniser that may be present on the ICC.
1.96 - */
1.97 - virtual TInt PhonebookList(RArray<TUid>& aPhonebookList) = 0;
1.98 -
1.99 -private:
1.100 - IMPORT_C virtual void MContactSynchroniser_Reserved_1();
1.101 - };
1.102 -
1.103 -
1.104 -/** The UID for the default phone book synchroniser ECom plugin interface
1.105 -*/
1.106 -const TUid KUidEcomCntPhBkSyncInterface = {0x102035FD};
1.107 -
1.108 -class CContactSynchroniser : public CBase, public MContactSynchroniser
1.109 -/**
1.110 -Abstract interface for a ECom contacts phonebook synchroniser plugin
1.111 -
1.112 -It should be inherited by classes which implement the phonebook
1.113 -synchroniser API in a platform secured environment. The ECom plug-in interface uid is
1.114 -KUidEcomCntPhBkSyncInterface
1.115 -@internalAll
1.116 -*/
1.117 - {
1.118 -public:
1.119 - // From MContactSynchroniser
1.120 - virtual TInt ValidateContact(TValidateOperation aOp, TContactItemId aId) = 0;
1.121 - virtual TInt ValidateWriteContact(CContactICCEntry& aContactItem) = 0;
1.122 - virtual TInt DeleteContact(TContactItemId aId) = 0;
1.123 - virtual void Release() = 0;
1.124 - virtual void UpdatePostWriteL(const CContactICCEntry& aContactItem) = 0;
1.125 - virtual TContactItemId ICCTemplateIdL(TUid aPhonebookUid) = 0;
1.126 - virtual TContactItemId GroupIdL(TUid aPhonebookUid) = 0;
1.127 - virtual void NotifySyncStateChange(TRequestStatus& aStatus, TUid aPhonebookUid) = 0;
1.128 - virtual void CancelNotifyRequest(TUid aPhonebookUid) = 0;
1.129 - virtual TBool IsSynchronisedL(TUid aPhonebookUid) = 0;
1.130 - virtual TInt PhonebookList(RArray<TUid>& aPhonebookList) = 0;
1.131 -public:
1.132 - static CContactSynchroniser* NewL();
1.133 - IMPORT_C virtual ~CContactSynchroniser();
1.134 -private:
1.135 - TUid iDtor_ID_Key;
1.136 - };
1.137 -
1.138 -#endif