RAgendaServ Class Reference

class RAgendaServ : public RSessionBase

The client interface to the agenda server.

This class accesses agenda data by sending messages synchronously to the server. This allows shared access to an agenda file by more than one client.

Most functions in this class should not be used directly. If there is a corresponding version of the function in the model class, that should be used instead.

Note that a separate instance of the RAgendaServ class is required for each agenda file that is open. Only one file can be open at any one time in the same server session.

The API is used as follows:

RAgendaServ* agnServer = RAgendaServ::NewL(); // allocate and construct server session
CleanupStack::PushL(agnServer); // ensure object is deleted
agnServer->Connect(); // connect to the server
CleanupClosePushL(*agnServer); // ensure that the session's Close() method gets called
CAgnEntryModel* model = CAgnEntryModel::NewL(); // allocate and construct model
CleanupStack::PushL(model);
model->SetServer(agnServer); // set model's server session pointer
model->OpenL(fileName) // open file using server
// ...Use agenda model API as normal - invokes corresponding server functions
CleanupStack::PopAndDestroy(3); // model, close session with server, agnServer

Inherits from

Public Member Functions
~RAgendaServ()
voidAddCategoryToListL(const TDesC &, TInt64)
TAgnEntryId AddEntryL(CAgnEntry &, TInt64)
voidAddSessionL(const CCalSessionImpl &, TInt &)
TBool AgendaFileExistsL(const TDesC &)
voidCancelChangeNotification(TInt, TUint8)
voidCancelTask(TInt64)
TInt CategoryCountL(TInt64)
CAgnCategory *CategoryL(TInt, TInt64)
voidCloseAgenda(TInt)
voidCommitL(TCalCollectionId)
TInt Connect()
voidCreateAgendaFileL(const TDesC &)
CAgnSimpleEntry *CreateDumySimpleEntryL()
TBool CreateEntryIteratorL(TInt64)
TInt DecreaseRef()
voidDeleteAgendaFileL(const TDesC &, TInt)
voidDeleteEntryByGuidL(const TDesC8 &, TBool, TInt64)
voidDeleteEntryL(TAgnEntryId, TCalCollectionId)
voidDeleteEntryL(const RArray< TCalLocalUid > &, TCalCollectionId)
voidDeleteSimpleEntry(CAgnSimpleEntry *)
voidDestroyInstanceIterator(TInt)
voidDisableChangeBroadcast(TInt64)
voidEnableChangeBroadcast(TInt64)
voidEntriesReferencingFileAttachmentL(RArray< TCalLocalUid > &, const CAgnAttachment &, TInt64)
TBool EntryIteratorNextL(TInt64)
CAgnAttachment *FetchAttachmentByIdL(TUint32, TInt64)
voidFetchAttachmentsL(CCalAttachmentIteratorImpl &, CCalAttachmentManager::TSortOrder, TInt64)
voidFetchEntryByGuidL(const TDesC8 &, RPointerArray< CAgnEntry > &, TInt64)
CAgnEntry *FetchEntryByIteratorL(TInt64)
CAgnEntry *FetchEntryL(TAgnEntryId &, TInt64)
CAgnEntry *FetchEntryL(TCalLocalUid, TInt64)
voidFetchFileHandleL(RFile &, TUint32, TInt64)
voidFetchSimpleEntriesByGuidL(const TDesC8 &, RPointerArray< CAgnSimpleEntry > &, RArray< TInt >)
voidFilterCategoryL(CArrayFixSeg< TAgnEntryId > &, TInt64)
voidFilterCategorySynchronouslyL(const CAgnCategory &, TCalCollectionId)
voidFindInstancesL(RArray< TInt64 > &, CArrayFix< TAgnInstance > &, const TFindInstanceParams &)
CCalCalendarInfoImpl *GetCalendarInfoLC(const TDesC &, CCalSessionImpl &)
voidGetChangesSinceLastNotificationL(RArray< TCalChangeEntry > &, TCalCollectionId, TCalFileId &)
voidGetEntryUidsSinceDateL(RArray< TCalLocalUid > &, const TTime &, TInt64)
voidGetFileChangesSinceLastNotificationL(RPointerArray< CAgnFileChangeInfo > &, TInt)
HBufC8 *GetPropertyValueL(const TDesC &, TStreamId)
CAgnSimpleEntry *GetSimpleEntryL(const TAgnEntryId &, TCalCollectionId)
CAgnSimpleEntry *GetSimpleEntryL(TCalCollectionId, TUint32)
voidGetSimpleEntryL(const RArray< TAgnInstance > &, RPointerArray< CAgnSimpleEntry > &)
voidIncreaseRef()
TInt InstanceIteratorCountL(TInt)
TInt InstanceIteratorLocateIndexL(TInt, TAgnInstance &)
voidInstanceIteratorNextL(TInt, CArrayFix< TAgnInstance > &, TInt)
voidInstanceIteratorPreviousL(TInt, CArrayFix< TAgnInstance > &, TInt)
CDesCArray *ListAgendaFilesL()
RAgendaServ *NewL()
voidNextInstancesL(const RArray< TInt64 >, CArrayFix< TAgnInstance > &, const TFindInstanceParams &)
voidOpenAgendaL(const CCalSessionImpl &, const TDesC &, CalCommon::TCalFileVersionSupport &, TInt64 &, TCalCollectionId &)
voidPreviousInstancesL(const RArray< TInt64 >, CArrayFix< TAgnInstance > &, TFindInstanceParams &)
TBool RemoveSession(const CCalSessionImpl &)
voidRequestChangeNotification(TRequestStatus &, TInt, TUint8)
voidRequestProgress(TRequestStatus &, TCalCollectionId)
CAgnContent *RestoreAlarmActionL(TStreamId, TInt64)
HBufC *RestoreTextL(TStreamId, TInt64)
voidRollback(TCalCollectionId)
voidSetCalendarInfoL(const TDesC &, const CCalCalendarInfoImpl &)
voidSetChangeNotificationParametersL(MCalChangeCallBack2::TChangeEntryType, TBool, TTime, TTime, TInt64)
voidSetEnablePubSubNotificationsL(TBool, TInt64)
TInt SetUpdateAlarm(TBool, TInt64)
CAgnSimpleEntryAllocator &SimpleEntryAllocator()
voidStartBuildIndex(TBool, TRequestStatus &, TCalCollectionId)
voidStartCategoryTaskL(TBool, TRequestStatus &, const CAgnCategory &, CCalAsyncTaskManager::TAsyncAction, TCalCollectionId)
voidStartTidyByDateL(TBool, TRequestStatus &, const TAgnFilter &, const TTime &, const CalCommon::TCalTimeRange &, TCalCollectionId)
TStreamId StoreAlarmActionL(const CAgnContent &)
TTime TzRulesLastModifiedDateL(TInt64)
voidUpdateEntryL(CAgnEntry &, TBool, TCalCollectionId)
TVersion Version()
voidWaitUntilLoadedL(TCalCollectionId)
TInt _DebugRequestAllocatedCellsL()
TInt _DebugRequestAllocatedHeapSizeL()
void_DebugSetHeapFailL(TInt, TInt)
void__dbgClearTzClientCacheL(TBool)
Private Member Functions
RAgendaServ()
voidConstructL()
CAgnEntry *CreateEntryFromBufferStreamL(RReadStream &)
CBufFlat *CreateTransmitBufferL(TInt)
TInt DoConnect()
voidExternalizeFilterL(const TAgnFilter &, RWriteStream &)
TBool FindSession(const CCalSessionImpl &)
CAgnSimpleEntry *InternalizeSimpleEntryL(RReadStream &)
voidLoadingInstancesFromBufferL(CArrayFix< TAgnInstance > &, TInt)
voidPanic(TAgnClientPanic)
CAgnEntry *ReadEntryFromServerSessionL(TInt)
voidSendFileAttachmentHandlesL(CAgnEntry &, TInt64)
TInt ServerRequestL(TInt, TAny *, TAny *, TAny *, TAny *)
TInt StartServer()
voidTransferFileHandleToServerL(TCalLocalUid, TInt, CAgnAttachmentFile &, TInt64)
voidWriteBinaryDataToNewAttachmentFileL(CAgnEntry &, TInt, TInt64)
Inherited Functions
RHandleBase::Attributes()const
RHandleBase::BTraceId()const
RHandleBase::Close()
RHandleBase::DoExtendedClose()
RHandleBase::Duplicate(const RThread &,TOwnerType)
RHandleBase::FullName()const
RHandleBase::FullName(TDes &)const
RHandleBase::Handle()const
RHandleBase::HandleInfo(THandleInfo *)
RHandleBase::Name()const
RHandleBase::NotifyDestruction(TRequestStatus &)
RHandleBase::Open(const TFindHandleBase &,TOwnerType)
RHandleBase::OpenByName(const TDesC &,TOwnerType,TInt)
RHandleBase::RHandleBase()
RHandleBase::RHandleBase(TInt)
RHandleBase::SetHandle(TInt)
RHandleBase::SetHandleNC(TInt)
RSessionBase::CreateSession(RServer2,const TVersion &)
RSessionBase::CreateSession(RServer2,const TVersion &,TInt)
RSessionBase::CreateSession(RServer2,const TVersion &,TInt,TIpcSessionType,const TSecurityPolicy *,TRequestStatus *)
RSessionBase::CreateSession(const TDesC &,const TVersion &)
RSessionBase::CreateSession(const TDesC &,const TVersion &,TInt)
RSessionBase::CreateSession(const TDesC &,const TVersion &,TInt,TIpcSessionType,const TSecurityPolicy *,TRequestStatus *)
RSessionBase::CreateSession(const TDesC &,const TVersion &,TInt,TRequestStatus *)
RSessionBase::Open(RMessagePtr2,TInt,TOwnerType)
RSessionBase::Open(RMessagePtr2,TInt,const TSecurityPolicy &,TOwnerType)
RSessionBase::Open(TInt,TOwnerType)
RSessionBase::Open(TInt,const TSecurityPolicy &,TOwnerType)
RSessionBase::Send(TInt)const
RSessionBase::Send(TInt,const TIpcArgs &)const
RSessionBase::SendReceive(TInt)const
RSessionBase::SendReceive(TInt,TRequestStatus &)const
RSessionBase::SendReceive(TInt,const TIpcArgs &)const
RSessionBase::SendReceive(TInt,const TIpcArgs &,TRequestStatus &)const
RSessionBase::SetReturnedHandle(TInt)
RSessionBase::SetReturnedHandle(TInt,RHandleBase &)
RSessionBase::SetReturnedHandle(TInt,const TSecurityPolicy &)
RSessionBase::ShareAuto()
RSessionBase::ShareProtected()
Inherited Enumerations
RHandleBase:TAttributes
RSessionBase:TAttachMode
Private Attributes
CBufFlat *iBuffer
RPointerArray< CCalSessionImpl >iCalSessions
TInt iLastSessionId
TInt iReferenceCount
CAgnSimpleEntryAllocator *iSimpleEntryAllocator
Inherited Attributes
RHandleBase::iHandle

Constructor & Destructor Documentation

RAgendaServ()

RAgendaServ()[private]

~RAgendaServ()

~RAgendaServ()

The destructor frees all resources owned by the server, prior to its destruction.

Member Functions Documentation

AddCategoryToListL(const TDesC &, TInt64)

voidAddCategoryToListL(const TDesC &aName,
TInt64aFileId
)

adds a category to the list capability

WriteUserData

Parameters

const TDesC & aName
TInt64 aFileId

AddEntryL(CAgnEntry &, TInt64)

TAgnEntryId AddEntryL(CAgnEntry &aEntry,
TInt64aFileId
)

Add a new enty to the server capability

WriteUserData

capability

ReadUserData

Parameters

CAgnEntry & aEntry
TInt64 aFileId

AddSessionL(const CCalSessionImpl &, TInt &)

voidAddSessionL(const CCalSessionImpl &aSession,
TInt &aSessionId
)

Parameters

const CCalSessionImpl & aSession
TInt & aSessionId

AgendaFileExistsL(const TDesC &)

TBool AgendaFileExistsL(const TDesC &aFileName)

Parameters

const TDesC & aFileName

CancelChangeNotification(TInt, TUint8)

voidCancelChangeNotification(TIntaSessionId,
TUint8aNotificaitonType
)

Parameters

TInt aSessionId
TUint8 aNotificaitonType

CancelTask(TInt64)

voidCancelTask(TInt64aFileId)

capability

None

Parameters

TInt64 aFileId

CategoryCountL(TInt64)

TInt CategoryCountL(TInt64aFileId)

returns the number of categories in the category list capability

None

Parameters

TInt64 aFileId

CategoryL(TInt, TInt64)

CAgnCategory *CategoryL(TIntaIndex,
TInt64aFileId
)

returns a category created from the category at aIndex in the category list capability

ReadUserData

Parameters

TInt aIndex
TInt64 aFileId

CloseAgenda(TInt)

voidCloseAgenda(TIntaSessionId)

Closes the file that is open in the current agenda server session. capability

None

Parameters

TInt aSessionId

CommitL(TCalCollectionId)

voidCommitL(TCalCollectionIdaCalCollectionId)

capability

WriteUserData

Parameters

TCalCollectionId aCalCollectionId

Connect()

TInt Connect()

Connects the client process to the agenda server.

This function must be called before the server can be used.

An error code. KErrNone if successful.

ConstructL()

voidConstructL()[private]

CreateAgendaFileL(const TDesC &)

voidCreateAgendaFileL(const TDesC &aFileName)

capability

WriteUserData

Parameters

const TDesC & aFileName

CreateDumySimpleEntryL()

CAgnSimpleEntry *CreateDumySimpleEntryL()

CreateEntryFromBufferStreamL(RReadStream &)

CAgnEntry *CreateEntryFromBufferStreamL(RReadStream &readStream)const [private]

Parameters

RReadStream & readStream

CreateEntryIteratorL(TInt64)

TBool CreateEntryIteratorL(TInt64aFileId)

Creates an iterator for iterating though all the entries in the file.

This may be used for activities such as merging or finding. The function returns EFalse if no entries are available. If any entries are available, the iterator is set to the first one.

Although this API does not have a trailing L it can leave

capability

None

ETrue if there are entries in the file. EFalse if there are none.

Parameters

TInt64 aFileId

CreateTransmitBufferL(TInt)

CBufFlat *CreateTransmitBufferL(TIntaBufferSize)const [private]

Checks the size of the incoming buffer, and if it is larger than the size of the buffer already defined, allocates enough space in aBuffer, and transfers the data from the server

capability

ReadUserData

Parameters

TInt aBufferSize

DecreaseRef()

TInt DecreaseRef()

DeleteAgendaFileL(const TDesC &, TInt)

voidDeleteAgendaFileL(const TDesC &aFileName,
TIntaSessionId
)

capability

WriteUserData

Parameters

const TDesC & aFileName
TInt aSessionId

DeleteEntryByGuidL(const TDesC8 &, TBool, TInt64)

voidDeleteEntryByGuidL(const TDesC8 &aGuid,
TBoolaCommitAndNotify,
TInt64aFileId
)

capability

WriteUserData

Parameters

const TDesC8 & aGuid
TBool aCommitAndNotify
TInt64 aFileId

DeleteEntryL(TAgnEntryId, TCalCollectionId)

voidDeleteEntryL(TAgnEntryIdaEntryId,
TCalCollectionIdaCalCollectionId
)

capability

WriteUserData

Parameters

TAgnEntryId aEntryId
TCalCollectionId aCalCollectionId

DeleteEntryL(const RArray< TCalLocalUid > &, TCalCollectionId)

voidDeleteEntryL(const RArray< TCalLocalUid > &aIds,
TCalCollectionIdaCalCollectionId
)

capability

WriteUserData

Parameters

const RArray< TCalLocalUid > & aIds
TCalCollectionId aCalCollectionId

DeleteSimpleEntry(CAgnSimpleEntry *)

voidDeleteSimpleEntry(CAgnSimpleEntry *aSimpleEntry)

Deletes a sort entry from the sort entry allocator (a specialised memory handler for sort entry objects).

A sort entry is an entry in an agenda index. The function frees the sort entry object and puts it on the free list.

Parameters

CAgnSimpleEntry * aSimpleEntryPointer to the simple entry to delete.

DestroyInstanceIterator(TInt)

voidDestroyInstanceIterator(TIntaIteratorId)

Destroy instance iterator with specified iterator id capability

ReadUserData

Parameters

TInt aIteratorId

DisableChangeBroadcast(TInt64)

voidDisableChangeBroadcast(TInt64aFileId)

Parameters

TInt64 aFileId

DoConnect()

TInt DoConnect()[private]

EnableChangeBroadcast(TInt64)

voidEnableChangeBroadcast(TInt64aFileId)

Parameters

TInt64 aFileId

EntriesReferencingFileAttachmentL(RArray< TCalLocalUid > &, const CAgnAttachment &, TInt64)

voidEntriesReferencingFileAttachmentL(RArray< TCalLocalUid > &aUids,
const CAgnAttachment &aAttachment,
TInt64aFileId
)

Fetch local UIDs of all entries that reference the attachment specified. capability

ReadUserData

Parameters

RArray< TCalLocalUid > & aUids
const CAgnAttachment & aAttachment
TInt64 aFileId

EntryIteratorNextL(TInt64)

TBool EntryIteratorNextL(TInt64aFileId)

Moves the entry iterator to the next entry.

Returns EFalse if no more entries exist.

Although this API does not have a trailing L it can leave

capability

None

ETrue if there is are more entries. EFalse if there are no more entries.

Parameters

TInt64 aFileId

ExternalizeFilterL(const TAgnFilter &, RWriteStream &)

voidExternalizeFilterL(const TAgnFilter &aFilter,
RWriteStream &aStream
)const [private]

Parameters

const TAgnFilter & aFilter
RWriteStream & aStream

FetchAttachmentByIdL(TUint32, TInt64)

CAgnAttachment *FetchAttachmentByIdL(TUint32aAttachUid,
TInt64aFileId
)

Parameters

TUint32 aAttachUid
TInt64 aFileId

FetchAttachmentsL(CCalAttachmentIteratorImpl &, CCalAttachmentManager::TSortOrder, TInt64)

voidFetchAttachmentsL(CCalAttachmentIteratorImpl &aIteratorImpl,
CCalAttachmentManager::TSortOrderaSortOrder,
TInt64aFileId
)

Fetch all file attachments in the order specified and add them to the iterator. capability

ReadUserData

Parameters

CCalAttachmentIteratorImpl & aIteratorImpl
CCalAttachmentManager::TSortOrder aSortOrder
TInt64 aFileId

FetchEntryByGuidL(const TDesC8 &, RPointerArray< CAgnEntry > &, TInt64)

voidFetchEntryByGuidL(const TDesC8 &aGuid,
RPointerArray< CAgnEntry > &aList,
TInt64aFileId
)const

capability

ReadUserData

Parameters

const TDesC8 & aGuid
RPointerArray< CAgnEntry > & aList
TInt64 aFileId

FetchEntryByIteratorL(TInt64)

CAgnEntry *FetchEntryByIteratorL(TInt64aFileId)

Retrieves the ID for the entry at the current iterator position.

The ID can be used to retrieve the entry using CAgnEntryModel::FetchEntryL().

capability

None

The ID for the entry at the current iterator position

Parameters

TInt64 aFileId

FetchEntryL(TAgnEntryId &, TInt64)

CAgnEntry *FetchEntryL(TAgnEntryId &aId,
TInt64aFileId
)const

Fetches a complete entry from the server capability

ReadUserData

Parameters

TAgnEntryId & aId
TInt64 aFileId

FetchEntryL(TCalLocalUid, TInt64)

CAgnEntry *FetchEntryL(TCalLocalUidaId,
TInt64aFileId
)const

Fetches a complete entry from the server capability

ReadUserData

Parameters

TCalLocalUid aId
TInt64 aFileId

FetchFileHandleL(RFile &, TUint32, TInt64)

voidFetchFileHandleL(RFile &aFileHandle,
TUint32aAttachmentUid,
TInt64aFileId
)

Parameters

RFile & aFileHandle
TUint32 aAttachmentUid
TInt64 aFileId

FetchSimpleEntriesByGuidL(const TDesC8 &, RPointerArray< CAgnSimpleEntry > &, RArray< TInt >)

voidFetchSimpleEntriesByGuidL(const TDesC8 &aUid,
RPointerArray< CAgnSimpleEntry > &aLiteEntries,
RArray< TInt >aCalCollectionIds
)const

Get an array of lite entries from the server

On return the instance ids and lite entries will have corresponding indices in the arrays (Lite-entries are just time information, with no text, etc)

capability

ReadUserData

Parameters

const TDesC8 & aUidThe UID of the lite entries to fetch
RPointerArray< CAgnSimpleEntry > & aLiteEntrieson return will contain the fetched lite entries.
RArray< TInt > aCalCollectionIds

FilterCategoryL(CArrayFixSeg< TAgnEntryId > &, TInt64)

voidFilterCategoryL(CArrayFixSeg< TAgnEntryId > &aEntries,
TInt64aFileId
)

package up step size and category capability

None

Parameters

CArrayFixSeg< TAgnEntryId > & aEntries
TInt64 aFileId

FilterCategorySynchronouslyL(const CAgnCategory &, TCalCollectionId)

voidFilterCategorySynchronouslyL(const CAgnCategory &aCategory,
TCalCollectionIdaCalCollectionId
)

Parameters

const CAgnCategory & aCategory
TCalCollectionId aCalCollectionId

FindInstancesL(RArray< TInt64 > &, CArrayFix< TAgnInstance > &, const TFindInstanceParams &)

voidFindInstancesL(RArray< TInt64 > &aCalCollectionIds,
CArrayFix< TAgnInstance > &aInstances,
const TFindInstanceParams &aParams
)

capability

ReadUserData

Parameters

RArray< TInt64 > & aCalCollectionIds
CArrayFix< TAgnInstance > & aInstances
const TFindInstanceParams & aParams

FindSession(const CCalSessionImpl &)

TBool FindSession(const CCalSessionImpl &aSession)[private]

Parameters

const CCalSessionImpl & aSession

GetCalendarInfoLC(const TDesC &, CCalSessionImpl &)

CCalCalendarInfoImpl *GetCalendarInfoLC(const TDesC &aFilename,
CCalSessionImpl &aSessionImpl
)const

capability

ReadUserData

Parameters

const TDesC & aFilename
CCalSessionImpl & aSessionImpl

GetChangesSinceLastNotificationL(RArray< TCalChangeEntry > &, TCalCollectionId, TCalFileId &)

voidGetChangesSinceLastNotificationL(RArray< TCalChangeEntry > &aChangeItems,
TCalCollectionIdaCalCollectionId,
TCalFileId &aFileId
)

capability

ReadUserData

Parameters

RArray< TCalChangeEntry > & aChangeItems
TCalCollectionId aCalCollectionId
TCalFileId & aFileId

GetEntryUidsSinceDateL(RArray< TCalLocalUid > &, const TTime &, TInt64)

voidGetEntryUidsSinceDateL(RArray< TCalLocalUid > &aUids,
const TTime &aFilter,
TInt64aFileId
)

Place the uids of entries that have a last changed data greater than aDate and which meet the selection criteria specified in aFilter into the aUids array. capability

None

Parameters

RArray< TCalLocalUid > & aUids
const TTime & aFilter
TInt64 aFileId

GetFileChangesSinceLastNotificationL(RPointerArray< CAgnFileChangeInfo > &, TInt)

voidGetFileChangesSinceLastNotificationL(RPointerArray< CAgnFileChangeInfo > &aAgnFileChangeInfo,
TIntaSessionId
)

Parameters

RPointerArray< CAgnFileChangeInfo > & aAgnFileChangeInfo
TInt aSessionId

GetPropertyValueL(const TDesC &, TStreamId)

HBufC8 *GetPropertyValueL(const TDesC &aFilename,
TStreamIdaStreamId
)const

capability

ReadUserData

Parameters

const TDesC & aFilename
TStreamId aStreamId

GetSimpleEntryL(const TAgnEntryId &, TCalCollectionId)

CAgnSimpleEntry *GetSimpleEntryL(const TAgnEntryId &aId,
TCalCollectionIdaCalCollectionId
)const

Get a lite entry from the server (Lite-entries are just time information, with no text, etc) capability

ReadUserData

Parameters

const TAgnEntryId & aId
TCalCollectionId aCalCollectionId

GetSimpleEntryL(TCalCollectionId, TUint32)

CAgnSimpleEntry *GetSimpleEntryL(TCalCollectionIdaShortFileId,
TUint32aId
)const

Get a lite entry from the server (Lite-entries are just time information, with no text, etc) capability

ReadUserData

Parameters

TCalCollectionId aShortFileId
TUint32 aId

GetSimpleEntryL(const RArray< TAgnInstance > &, RPointerArray< CAgnSimpleEntry > &)

voidGetSimpleEntryL(const RArray< TAgnInstance > &aEntryIds,
RPointerArray< CAgnSimpleEntry > &aLiteEntries
)const

Get an array of lite entries from the server

On return the instance ids and lite entries will have corresponding indices in the arrays (Lite-entries are just time information, with no text, etc)

capability

ReadUserData

Parameters

const RArray< TAgnInstance > & aEntryIds
RPointerArray< CAgnSimpleEntry > & aLiteEntrieson return will contain the fetched lite entries.

IncreaseRef()

voidIncreaseRef()

InstanceIteratorCountL(TInt)

TInt InstanceIteratorCountL(TIntaIteratorId)const

Get the number of instances stored in an iterator capability

ReadUserData

Parameters

TInt aIteratorId

InstanceIteratorLocateIndexL(TInt, TAgnInstance &)

TInt InstanceIteratorLocateIndexL(TIntaIteratorId,
TAgnInstance &aInstanceId
)

Find the index of the given instance in the iterator. capability

ReadUserData

Parameters

TInt aIteratorId
TAgnInstance & aInstanceId

InstanceIteratorNextL(TInt, CArrayFix< TAgnInstance > &, TInt)

voidInstanceIteratorNextL(TIntaIteratorId,
CArrayFix< TAgnInstance > &aInstances,
TIntaIndex
)const

Fetch the available instances start from specified index capability

ReadUserData

Parameters

TInt aIteratorId
CArrayFix< TAgnInstance > & aInstances
TInt aIndex

InstanceIteratorPreviousL(TInt, CArrayFix< TAgnInstance > &, TInt)

voidInstanceIteratorPreviousL(TIntaIteratorId,
CArrayFix< TAgnInstance > &aInstances,
TIntaIndex
)const

Fetch the previous instances which index are before given index capability

ReadUserData

Parameters

TInt aIteratorId
CArrayFix< TAgnInstance > & aInstances
TInt aIndex

InternalizeSimpleEntryL(RReadStream &)

CAgnSimpleEntry *InternalizeSimpleEntryL(RReadStream &aStream)const [private]

Parameters

RReadStream & aStream

ListAgendaFilesL()

CDesCArray *ListAgendaFilesL()

LoadingInstancesFromBufferL(CArrayFix< TAgnInstance > &, TInt)

voidLoadingInstancesFromBufferL(CArrayFix< TAgnInstance > &aInstances,
TIntaBufSize
)const [private]

Parameters

CArrayFix< TAgnInstance > & aInstances
TInt aBufSize

NewL()

RAgendaServ *NewL()[static]

Constructs a new RAgendaServ, initialising all member data to NULL.

A pointer to the client interface to the agenda server.

NextInstancesL(const RArray< TInt64 >, CArrayFix< TAgnInstance > &, const TFindInstanceParams &)

voidNextInstancesL(const RArray< TInt64 >aFileIds,
CArrayFix< TAgnInstance > &aInstances,
const TFindInstanceParams &aParams
)const

Finds the next instances in the calendar store

capability

ReadUserData

Parameters

const RArray< TInt64 > aFileIds
CArrayFix< TAgnInstance > & aInstancesThe next instances. Note that the instances will be appended to the end of the array
const TFindInstanceParams & aParamsThe filter settings to use when finding the next instances

OpenAgendaL(const CCalSessionImpl &, const TDesC &, CalCommon::TCalFileVersionSupport &, TInt64 &, TCalCollectionId &)

voidOpenAgendaL(const CCalSessionImpl &aSession,
const TDesC &aFileName,
CalCommon::TCalFileVersionSupport &status,
TInt64 &aFileId,
TCalCollectionId &aCollectionId
)

capability

None

Parameters

const CCalSessionImpl & aSession
const TDesC & aFileName
CalCommon::TCalFileVersionSupport & status
TInt64 & aFileId
TCalCollectionId & aCollectionId

Panic(TAgnClientPanic)

voidPanic(TAgnClientPanicaPanic)const [private]

Parameters

TAgnClientPanic aPanic

PreviousInstancesL(const RArray< TInt64 >, CArrayFix< TAgnInstance > &, TFindInstanceParams &)

voidPreviousInstancesL(const RArray< TInt64 >aFileIds,
CArrayFix< TAgnInstance > &aInstances,
TFindInstanceParams &aParams
)const

Finds previous instances in the calendar store

capability

ReadUserData

Parameters

const RArray< TInt64 > aFileIds
CArrayFix< TAgnInstance > & aInstancesThe previous instances. Note that the instances will be inserted at the begining of the array
TFindInstanceParams & aParamsThe filter settings to use when fidning the previous instances

ReadEntryFromServerSessionL(TInt)

CAgnEntry *ReadEntryFromServerSessionL(TIntaBufferSize)const [private]

Parameters

TInt aBufferSize

RemoveSession(const CCalSessionImpl &)

TBool RemoveSession(const CCalSessionImpl &aSession)

Parameters

const CCalSessionImpl & aSession

RequestChangeNotification(TRequestStatus &, TInt, TUint8)

voidRequestChangeNotification(TRequestStatus &aStatus,
TIntaSessionId,
TUint8aNotificaitonType
)

Parameters

TRequestStatus & aStatus
TInt aSessionId
TUint8 aNotificaitonType

RequestProgress(TRequestStatus &, TCalCollectionId)

voidRequestProgress(TRequestStatus &aStatus,
TCalCollectionIdaCalCollectionId
)

Parameters

TRequestStatus & aStatus
TCalCollectionId aCalCollectionId

RestoreAlarmActionL(TStreamId, TInt64)

CAgnContent *RestoreAlarmActionL(TStreamIdaId,
TInt64aFileId
)

capability

ReadUserData

Parameters

TStreamId aId
TInt64 aFileId

RestoreTextL(TStreamId, TInt64)

HBufC *RestoreTextL(TStreamIdaId,
TInt64aFileId
)

Restore the notes text from the server capability

ReadUserData

Parameters

TStreamId aId
TInt64 aFileId

Rollback(TCalCollectionId)

voidRollback(TCalCollectionIdaCalCollectionId)

capability

WriteUserData

Parameters

TCalCollectionId aCalCollectionId

SendFileAttachmentHandlesL(CAgnEntry &, TInt64)

voidSendFileAttachmentHandlesL(CAgnEntry &aEntry,
TInt64aFileId
)[private]

For all attachments on this entry, find out whether they are file attachments. If it contains a file handle, then it must be transferred to the server through a separate IPC call (TransferFileHandleToServerL). If it contains binary data, then a file handle must be fetched from the server, to which the binary data will be written directly (WriteBinaryDataToNewAttachmentFileL).

Parameters

CAgnEntry & aEntry
TInt64 aFileId

ServerRequestL(TInt, TAny *, TAny *, TAny *, TAny *)

TInt ServerRequestL(TIntaCommand,
TAny *aArg1 = NULL,
TAny *aArg2 = NULL,
TAny *aArg3 = NULL,
TAny *aArg4 = NULL
)const [private]

Parameters

TInt aCommand
TAny * aArg1 = NULL
TAny * aArg2 = NULL
TAny * aArg3 = NULL
TAny * aArg4 = NULL

SetCalendarInfoL(const TDesC &, const CCalCalendarInfoImpl &)

voidSetCalendarInfoL(const TDesC &aFilename,
const CCalCalendarInfoImpl &aCalendarInfo
)const

capability

WriteUserData

Parameters

const TDesC & aFilename
const CCalCalendarInfoImpl & aCalendarInfo

SetChangeNotificationParametersL(MCalChangeCallBack2::TChangeEntryType, TBool, TTime, TTime, TInt64)

voidSetChangeNotificationParametersL(MCalChangeCallBack2::TChangeEntryTypeaEntryType,
TBoolaIncludeUndatedTodos,
TTimeaFilterStartTimeUtc,
TTimeaFilterEndTimeUtc,
TInt64aFileId
)

Parameters

MCalChangeCallBack2::TChangeEntryType aEntryType
TBool aIncludeUndatedTodos
TTime aFilterStartTimeUtc
TTime aFilterEndTimeUtc
TInt64 aFileId

SetEnablePubSubNotificationsL(TBool, TInt64)

voidSetEnablePubSubNotificationsL(TBoolaEnablePubSubNotifacation,
TInt64aFileId
)

Parameters

TBool aEnablePubSubNotifacation
TInt64 aFileId

SetUpdateAlarm(TBool, TInt64)

TInt SetUpdateAlarm(TBoolaUpdateAlarm,
TInt64aFileId
)

Parameters

TBool aUpdateAlarm
TInt64 aFileId

SimpleEntryAllocator()

CAgnSimpleEntryAllocator &SimpleEntryAllocator()const

StartBuildIndex(TBool, TRequestStatus &, TCalCollectionId)

voidStartBuildIndex(TBoolaNeedProgressReport,
TRequestStatus &aStatus,
TCalCollectionIdaCalCollectionId
)

Start building the Indexes asynchronously.

Parameters

TBool aNeedProgressReport
TRequestStatus & aStatus
TCalCollectionId aCalCollectionId

StartCategoryTaskL(TBool, TRequestStatus &, const CAgnCategory &, CCalAsyncTaskManager::TAsyncAction, TCalCollectionId)

voidStartCategoryTaskL(TBoolaReportProgress,
TRequestStatus &aStatus,
const CAgnCategory &aCategory,
CCalAsyncTaskManager::TAsyncActionaTask,
TCalCollectionIdaCalCollectionId
)

capability

WriteUserData

Parameters

TBool aReportProgress
TRequestStatus & aStatus
const CAgnCategory & aCategory
CCalAsyncTaskManager::TAsyncAction aTask
TCalCollectionId aCalCollectionId

StartServer()

TInt StartServer()[private, static]

StartTidyByDateL(TBool, TRequestStatus &, const TAgnFilter &, const TTime &, const CalCommon::TCalTimeRange &, TCalCollectionId)

voidStartTidyByDateL(TBoolaReportProgress,
TRequestStatus &aStatus,
const TAgnFilter &aFilter,
const TTime &aTodaysDate,
const CalCommon::TCalTimeRange &aCalTimeRange,
TCalCollectionIdaCalCollectionId
)

Start tidying by ToDo list asynchronously. capability

WriteUserData

capability

ReadUserData

Parameters

TBool aReportProgress
TRequestStatus & aStatus
const TAgnFilter & aFilter
const TTime & aTodaysDate
const CalCommon::TCalTimeRange & aCalTimeRange
TCalCollectionId aCalCollectionId

StoreAlarmActionL(const CAgnContent &)

TStreamId StoreAlarmActionL(const CAgnContent &aAlarmAction)

Parameters

const CAgnContent & aAlarmAction

TransferFileHandleToServerL(TCalLocalUid, TInt, CAgnAttachmentFile &, TInt64)

voidTransferFileHandleToServerL(TCalLocalUidaLocalUid,
TIntaAttachmentIndex,
CAgnAttachmentFile &aFileAttachment,
TInt64aFileId
)[private]

Store a new attachment with a file handle. The file handle is transferred to the Calendar server, which moves the file to the Calendar store. On the server-side, this will also update the entry containing this attachment with the new attachment metadata. capability

WriteUserData

Parameters

TCalLocalUid aLocalUid
TInt aAttachmentIndex
CAgnAttachmentFile & aFileAttachment
TInt64 aFileId

TzRulesLastModifiedDateL(TInt64)

TTime TzRulesLastModifiedDateL(TInt64aFileId)

Get the last modified time for tz rules from time zone server It is called when the client getting the last modified date for an entry since the last modified time of an entry is not updated when tz database is updated. capability

none

Parameters

TInt64 aFileId

UpdateEntryL(CAgnEntry &, TBool, TCalCollectionId)

voidUpdateEntryL(CAgnEntry &aEntry,
TBoolaDeleteChildren,
TCalCollectionIdaCalCollectionId
)

Updates an existing entry on the server capability

WriteUserData

capability

ReadUserData

leave

Parameters

CAgnEntry & aEntry
TBool aDeleteChildren
TCalCollectionId aCalCollectionId

Version()

TVersion Version()const

WaitUntilLoadedL(TCalCollectionId)

voidWaitUntilLoadedL(TCalCollectionIdaCalCollectionId)

Parameters

TCalCollectionId aCalCollectionId

WriteBinaryDataToNewAttachmentFileL(CAgnEntry &, TInt, TInt64)

voidWriteBinaryDataToNewAttachmentFileL(CAgnEntry &aEntry,
TIntaAttachmentIndex,
TInt64aFileId
)[private]

Store a new attachment from binary data. A new file handle is created on the Calendar server, and this is transferred to the client side so that the binary data can be written directly. On the server-side, this will also update the entry containing this attachment with the new attachment metadata. capability

WriteUserData

Parameters

CAgnEntry & aEntry
TInt aAttachmentIndex
TInt64 aFileId

_DebugRequestAllocatedCellsL()

TInt _DebugRequestAllocatedCellsL()

Gets the number of allocated cells in the server space, debug only. capability

None

_DebugRequestAllocatedHeapSizeL()

TInt _DebugRequestAllocatedHeapSizeL()

Gets the number of allocated cells in the server space, debug only. capability

None

_DebugSetHeapFailL(TInt, TInt)

void_DebugSetHeapFailL(TIntaHeapAllocationFailureFlag,
TIntaCount
)

Set heap allocation failure according the arguments, debug only. capability

None

Parameters

TInt aHeapAllocationFailureFlagheap allocation failure flags (RAllocator::TAllocFail)
TInt aCountFail at allocation number aCount

__dbgClearTzClientCacheL(TBool)

void__dbgClearTzClientCacheL(TBoolaRestartCaching)

capability

none

Parameters

TBool aRestartCaching

Member Data Documentation

CBufFlat * iBuffer

CBufFlat *iBuffer[private]

RPointerArray< CCalSessionImpl > iCalSessions

RPointerArray< CCalSessionImpl >iCalSessions[private]

TInt iLastSessionId

TInt iLastSessionId[private]

TInt iReferenceCount

TInt iReferenceCount[private]

CAgnSimpleEntryAllocator * iSimpleEntryAllocator

CAgnSimpleEntryAllocator *iSimpleEntryAllocator[private]