MMsvEntryObserver Class Reference

#include <mw/msvapi.h>

class MMsvEntryObserver
Public Member Enumerations
enumTMsvEntryEvent { EMsvEntryChanged, EMsvNewChildren, EMsvDeletedChildren, EMsvChildrenChanged, ..., EMsvEntryMoved }
Public Member Functions
pure virtual voidHandleEntryEventL(TMsvEntryEvent, TAny *, TAny *, TAny *)

Detailed Description

Provides the interface for notification of events associated with an entry.

The types of event are given in the enumeration TMsvEntryEvent. Clients can provide an object that implements the interface, and set it to be notified through CMsvEntry::AddObserverL().

Member Enumeration Documentation

Enum TMsvEntryEvent

Defines entry event types.


The entry has been changed, either as a result of a CMsvEntry::ChangeL() or by another client.


New children have been created. aArg1 points to a CMsvEntrySelection contain the ID of the new children.


Children have been deleted. aArg1 points to a CMsvEntrySelection contain the ID of the deleted children.


One or more of the children have been changed. aArg1 points to a CMsvEntrySelection containing the IDs of the changed children.


The entry has been deleted by another client. The context is now invalid.


The context has become invalid. The entry has been changed, but the CMsvEntry was unable to update the context. The context will only become valid by a successful CMsvEntry::SetEntryL() call. aArg1 points to a TInt containing the error code for the invalid context.


Some new children have been created, but CMsvEntry was unable to retrieve the data from the Message Server. The children will be correct only after a successful call to CMsvEntry::SetEntryL().


An error has occurred such that the status of the children is unknown and probably invalid. aArg1 points to a TInt containing the error code for the invalid context


The current entry has been moved by another client. The CMsvEntry has already been updated to reflect the new parent.

Member Function Documentation

HandleEntryEventL ( TMsvEntryEvent, TAny *, TAny *, TAny * )

TAny *aArg1,
TAny *aArg2,
TAny *aArg3
)[pure virtual]

Indicates when called by a CMsvEntry object that an event has occurred.

The type of event is indicated by the value of aEvent. The interpretation of the aArg1-3 values depends on this type. For most event types, the action that is taken, for example, updating the display, is client-specific. Most clients will need to handle events that make the current context invalid: EMsvContextInvalid and EMsvEntryDeleted.

An implementation can leave if an error occurs. The leave is not trapped by the framework, so the error code may be displayed to the user.

aEventIndicates the event type.
aArg1Event-specific argument value
aArg2Event-specific argument value
aArg3Event-specific argument value