diff -r 2bb96f4ecad8 -r 8e7494275d3a contentctrl_plat/ds_agenda_handler_plugin_api/inc/nsmlagendaadapterhandler.h --- a/contentctrl_plat/ds_agenda_handler_plugin_api/inc/nsmlagendaadapterhandler.h Thu Aug 19 09:41:17 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,168 +0,0 @@ -/* -* Copyright (c) 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 C_NSMLAGENDA_ADAPTERHANDLERPLUGIN_H -#define C_NSMLAGENDA_ADAPTERHANDLERPLUGIN_H - -// SYSTEM INCLUDES -#include -#include -#include -#include -#include -#include -#include - -// Constants -const TUid KAgendaAdapterHandlerInterfaceUid = { 0x20029F14 }; - -/** -* Interface definition for ECoM plug-in adapters -*/ -class CNSmlAgendaAdapterHandler: public CBase - { - public: - /** - * Ecom interface static factory method implementation. - * @param aImpUid Ecom's implementation uid - * @return A pointer to the created instance of CNSmlAgendaAdapterHandler - */ - static inline CNSmlAgendaAdapterHandler* NewL(TUid aImpUid); - - /** - * Destructor - */ - virtual ~CNSmlAgendaAdapterHandler(); - - public: - /** - * Determines the Server supported folder properties - * - * @param aServerDataStoreFormat Class structure of server device information - * - */ - virtual void CheckServerSupportForFolder( const CSmlDataStoreFormat& aServerDataStoreFormat ) = 0; - - /** - * Retrieve the folder from the Organizer db - * - * @param aUid variable specifing which Folder to be fetched - * @param aStream on return will have the Folder details - * - */ - virtual void FetchFolderL( const TSmlDbItemUid aUid, RBufWriteStream& aStream ) = 0; - - /** - * Determine the list of folders in the Organizer db owned by the calling application - * - * @param aFolderUidArray array on return will have UID's of owned folders - * - */ - virtual void SynchronizableCalendarIdsL( CArrayFixFlat* aFolderUidArray ) = 0; - - /** - * Create a folder on to Organizer db - * - * @param aStream containing the folder details to be created with - * @return TCalLocalUid of the newly created folder - * - */ - virtual TCalLocalUid CreateFolderL( RBufReadStream& aStream ) = 0; - - /** - * Replace the existing folder with updated info - * - * @param aUid determines folder to act upon - * @param aStream containing the folder information to be updated - * @param aSyncStatus updated folders current syncstatus - * - */ - virtual void ReplaceFolderL( const TCalLocalUid& aUid, RBufReadStream& aStream, TBool& aSyncStatus ) = 0; - - /** - * Retrieves the foldername - * - * @param aUid of the folder whose name to be determined - * @return HBufC* name of the folder - * - */ - virtual HBufC* FolderNameL( TSmlDbItemUid aUid ) = 0; - - /** - * Retrieve the calendar sync capability supported by the device - * - * @param aStringPool - * @return CSmlDataStoreFormat* Class structure of supported capabilities - * - */ - virtual CSmlDataStoreFormat* StoreFormatL( RStringPool& aStringPool ) = 0; - - /** - * Create a snap shot item - * - * @param aUid of folder whose snapshot to be created - * @retrun TNSmlSnapshotItem class - * - */ - virtual TNSmlSnapshotItem CreateFolderSnapShotItemL( const TCalLocalUid& aUid ) = 0; - - /** - * Determine the folder owner - * - * @return TInt uid of the owner application - * - */ - virtual TInt DeviceSyncOwner() = 0; - - /** - * Determines the sync status of the folder - * - * @param aUid determine the folder whose sync status to be retrieved - * @return TBool sync status - * - */ - virtual TBool FolderSyncStatusL( TSmlDbItemUid aUid ) = 0; - - /** - * Determines the sync status of the folder - * - * @param aFolderName determine the folder whose sync status to be retrieved - * @return TBool sync status - * - */ - virtual TBool FolderSyncStatusL( HBufC* aFolderName ) = 0; - - public: - /** - * Variable to hold the Plugin's Opaque Data - */ - HBufC8* iOpaqueData; - - private: - /** - * Used internally to create ECOM implementation - */ - TUid iDtor_ID_Key; - - }; - -#include "nsmlagendaadapterhandler.inl" - -#endif // C_NSMLAGENDA_ADAPTERHANDLERPLUGIN_H - -// End of File -