/*
* 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: CLS list change observer abstract class definition
*
*/
#ifndef MESMRCLSLISTSOBSERVER_H
#define MESMRCLSLISTSOBSERVER_H
// INCLUDES
#include <e32base.h>
#include "cesmrclsitem.h" // CESMRClsItem
/**
* Freestyle email application's cls list change observer interface
*/
class MESMRClsListsObserver
{
public:
/**
* Notifies the observer to update shown contact list with new matching items array
* Observer should save the pointer for further usage. Everytime this UpdateL method
* is called new pointer should be saved. Ownership is trasfered to the observer.
* Observer should delete all the items and reset the array when new is received.
*
* First items in the array are the one found in contacts which have email address.
* After first items are matches from MRU list. Last items are contact matches which don't
* have email address.
*
* @param aMatchingItems list of matching contact and MRU list items
*/
virtual void ArrayUpdatedL( RPointerArray<CESMRClsItem>& aMatchingItems ) = 0;
/**
* Notify if error occured during the fill operation for the matching items array
*
* @param aErrorCode type of failure of the array operation
*/
virtual void OperationErrorL( TInt aErrorCode )= 0;
};
#endif // CESMRCLSLISTSOBSERVER_H
// End of File