CGroupContentSubscriptionItem Class Reference

class CGroupContentSubscriptionItem : public CXIMPSubscriptionItemBase

PSC group list subscription implementation

Since
S60 v3.2

Inherits from

Public Member Functions
~CGroupContentSubscriptionItem ()
IMPORT_C void AddOrRenewSubscriberL ( MXIMPPscContext *)
IMPORT_C void Clean ()
IMPORT_C const CXIMPIdentityImp & GroupId ()
IMPORT_C TBool GroupMemberExistsL (CPresentityGroupMemberInfoImp &)
IMPORT_C TInt IdentityOrder (const CXIMPIdentityImp *, const CGroupContentSubscriptionItem &)
IMPORT_C TBool IsGroupMemberUpdatedL (CPresentityGroupMemberInfoImp &)
CPresentityGroupMemberInfoImp & MemberAt ( TInt )
TInt MemberCount ()
CGroupContentSubscriptionItem * NewLC ( MXIMPItemParentBase &, const CXIMPIdentityImp &)
IMPORT_C TInt Order (const CGroupContentSubscriptionItem &, const CGroupContentSubscriptionItem &)
void RegisterEventObserverL ( MGroupContentEventObserver *)
IMPORT_C void SetAddedListL ( RPrGrpMemInfoImpArray *)
IMPORT_C void SetNewListL ( RPrGrpMemInfoImpArray *)
IMPORT_C void SetRemovedListL ( RPrGrpMemInfoImpArray *)
void SynthesiseSubscriptionEventToAllCtxsL ()
void SynthesiseSubscriptionEventToL ( MXIMPPscContext *, TBool )
void UnregisterEventObserver ( MGroupContentEventObserver *)
Private Member Functions
CGroupContentSubscriptionItem ( MXIMPItemParentBase &)
void CleanExpired ()
void ConstructL (const CXIMPIdentityImp &)
void InformObserversL ()
Inherited Functions
CBase::CBase()
CBase::Delete(CBase *)
CBase::operator new(TUint)
CBase::operator new(TUint,TAny *)
CBase::operator new(TUint,TLeave)
CBase::operator new(TUint,TLeave,TUint)
CBase::operator new(TUint,TUint)
CBase::~CBase()
CObject::AccessCount()const
CObject::CObject()
CObject::Close()
CObject::Dec()
CObject::Extension_(TUint,TAny *&,TAny *)
CObject::FullName()const
CObject::Inc()
CObject::Name()const
CObject::Open()
CObject::Owner()const
CObject::SetName(const TDesC *)
CObject::SetNameL(const TDesC *)
CObject::SetOwner(CObject *)
CObject::UniqueID()const
CObject::~CObject()
CXIMPSubscriptionItemBase::ActivateSubscriberL(CXIMPSubscriptionItemBase *)
CXIMPSubscriptionItemBase::ActivateSubscriberL(MXIMPPscContext *)
CXIMPSubscriptionItemBase::AddSubscriberL(CXIMPSubscriptionItemBase *)
CXIMPSubscriptionItemBase::AddSubscriberL(MXIMPPscContext *)
CXIMPSubscriptionItemBase::BaseConstructL()
CXIMPSubscriptionItemBase::CXIMPSubscriptionItemBase(MXIMPItemParentBase &)
CXIMPSubscriptionItemBase::ChangeStatusAfterAdd()
CXIMPSubscriptionItemBase::ChangeStatusAfterRemove()
CXIMPSubscriptionItemBase::CleanIfExpired()
CXIMPSubscriptionItemBase::Context(TInt)
CXIMPSubscriptionItemBase::ContextCount()const
CXIMPSubscriptionItemBase::CountOfSubscribers()
CXIMPSubscriptionItemBase::DataSubscriptionState()
CXIMPSubscriptionItemBase::ForceClose()
CXIMPSubscriptionItemBase::IsContext(MXIMPPscContext *)const
CXIMPSubscriptionItemBase::OrderOfContexts(const MXIMPPscContext &,const MXIMPPscContext &)
CXIMPSubscriptionItemBase::OrderOfItems(const CXIMPSubscriptionItemBase &,const CXIMPSubscriptionItemBase &)
CXIMPSubscriptionItemBase::RemoveSubscriber(CXIMPSubscriptionItemBase *)
CXIMPSubscriptionItemBase::RemoveSubscriber(MXIMPPscContext *)
CXIMPSubscriptionItemBase::SetDataSubscriptionStateL(CXIMPDataSubscriptionStateImp &)
CXIMPSubscriptionItemBase::StatusLC(MXIMPPscContext *)const
CXIMPSubscriptionItemBase::SubscriptionStatus(MXIMPPscContext *)
CXIMPSubscriptionItemBase::UpdateExpirationL()
CXIMPSubscriptionItemBase::UpdateSubscriptionStateL(TSubscriptionEvent)
CXIMPSubscriptionItemBase::~CXIMPSubscriptionItemBase()
Inherited Enumerations
CXIMPSubscriptionItemBase:TSubscriptionEvent
CXIMPSubscriptionItemBase:TSubscriptionStatus
Private Attributes
RPrGrpMemInfoImpArray * iAdded
RPrGrpMemInfoImpArray * iCurrentMembers
RPointerArray < MGroupContentEventObserver > iEventObservers
CXIMPIdentityImp * iGroupId
RPrGrpMemInfoImpArray * iRemoved
RPrGrpMemInfoImpArray * iUpdated
Inherited Attributes
CXIMPSubscriptionItemBase::iContexts
CXIMPSubscriptionItemBase::iExpireTime
CXIMPSubscriptionItemBase::iItems
CXIMPSubscriptionItemBase::iParent
CXIMPSubscriptionItemBase::iPreContexts
CXIMPSubscriptionItemBase::iPreItems
CXIMPSubscriptionItemBase::iSubscriptionState

Constructor & Destructor Documentation

CGroupContentSubscriptionItem(MXIMPItemParentBase &)

CGroupContentSubscriptionItem ( MXIMPItemParentBase & aParent ) [private]

Construction

Parameters

MXIMPItemParentBase & aParent

~CGroupContentSubscriptionItem()

~CGroupContentSubscriptionItem ( ) [virtual]
Destruction
  • Remember to inform parent about delete.

Member Functions Documentation

AddOrRenewSubscriberL(MXIMPPscContext *)

IMPORT_C void AddOrRenewSubscriberL ( MXIMPPscContext * aContext )

Add subscriber for group content if it hasn't subscribed already.

Parameters

MXIMPPscContext * aContext

Clean()

IMPORT_C void Clean ( )

Remove the temporary lists.

CleanExpired()

void CleanExpired ( ) [private, virtual]

ConstructL(const CXIMPIdentityImp &)

void ConstructL ( const CXIMPIdentityImp & aGroupId ) [private]

Construction

Parameters

const CXIMPIdentityImp & aGroupId

GroupId()

IMPORT_C const CXIMPIdentityImp & GroupId ( ) const

Access to group id.

GroupMemberExistsL(CPresentityGroupMemberInfoImp &)

IMPORT_C TBool GroupMemberExistsL ( CPresentityGroupMemberInfoImp & aMemberInfo ) const

Check if group member exists.

Parameters

CPresentityGroupMemberInfoImp & aMemberInfo Group member to check

IdentityOrder(const CXIMPIdentityImp *, const CGroupContentSubscriptionItem &)

IMPORT_C TInt IdentityOrder ( const CXIMPIdentityImp * aA,
const CGroupContentSubscriptionItem & aB
) [static]

Used as method for TLinearOrder when ordering items.

Parameters

const CXIMPIdentityImp * aA First object used as key for ordering.
const CGroupContentSubscriptionItem & aB Second object for ordering.

InformObserversL()

void InformObserversL ( ) [private]

Inform observer about change.

IsGroupMemberUpdatedL(CPresentityGroupMemberInfoImp &)

IMPORT_C TBool IsGroupMemberUpdatedL ( CPresentityGroupMemberInfoImp & aMemberInfo ) const

Check if group member is updated.

Parameters

CPresentityGroupMemberInfoImp & aMemberInfo Group member to check

MemberAt(TInt)

CPresentityGroupMemberInfoImp & MemberAt ( TInt aIndex )

Access member in index.

Parameters

TInt aIndex

MemberCount()

TInt MemberCount ( ) const

Count of current members

NewLC(MXIMPItemParentBase &, const CXIMPIdentityImp &)

CGroupContentSubscriptionItem * NewLC ( MXIMPItemParentBase & aParent,
const CXIMPIdentityImp & aGroupId
) [static]

Construction

Parameters

MXIMPItemParentBase & aParent
const CXIMPIdentityImp & aGroupId

Order(const CGroupContentSubscriptionItem &, const CGroupContentSubscriptionItem &)

IMPORT_C TInt Order ( const CGroupContentSubscriptionItem & aA,
const CGroupContentSubscriptionItem & aB
) [static]

Used as method for TLinearOrder when ordering items.

Parameters

const CGroupContentSubscriptionItem & aA First object for ordering.
const CGroupContentSubscriptionItem & aB Second object for ordering.

RegisterEventObserverL(MGroupContentEventObserver *)

void RegisterEventObserverL ( MGroupContentEventObserver * aEventObserver )

Register event observer

Parameters

MGroupContentEventObserver * aEventObserver

SetAddedListL(RPrGrpMemInfoImpArray *)

IMPORT_C void SetAddedListL ( RPrGrpMemInfoImpArray * aMemberList )

Set the added list of members. Ownership is transferred!

Parameters

RPrGrpMemInfoImpArray * aMemberList The list of groups

SetNewListL(RPrGrpMemInfoImpArray *)

IMPORT_C void SetNewListL ( RPrGrpMemInfoImpArray * aMemberList )

Set the new list of members. Will create and set the temporary lists for added, removed and updated lists. Ownership is transferred!

Parameters

RPrGrpMemInfoImpArray * aMemberList The list of groups

SetRemovedListL(RPrGrpMemInfoImpArray *)

IMPORT_C void SetRemovedListL ( RPrGrpMemInfoImpArray * aMemberList )

Set the removed list of members. Will set other lists accordingly. Ownership is transferred!

Parameters

RPrGrpMemInfoImpArray * aMemberList The list of groups

SynthesiseSubscriptionEventToAllCtxsL()

void SynthesiseSubscriptionEventToAllCtxsL ( )

SynthesiseSubscriptionEventToL(MXIMPPscContext *, TBool)

void SynthesiseSubscriptionEventToL ( MXIMPPscContext * aContext,
TBool aForceEvent
)

Parameters

MXIMPPscContext * aContext
TBool aForceEvent

UnregisterEventObserver(MGroupContentEventObserver *)

void UnregisterEventObserver ( MGroupContentEventObserver * aEventObserver )

Unregister event observer

Parameters

MGroupContentEventObserver * aEventObserver Canceling observer.

Member Data Documentation

RPrGrpMemInfoImpArray * iAdded

RPrGrpMemInfoImpArray * iAdded [private]

List of added members (new since last update). Own.

RPrGrpMemInfoImpArray * iCurrentMembers

RPrGrpMemInfoImpArray * iCurrentMembers [private]

Current members. Own.

RPointerArray< MGroupContentEventObserver > iEventObservers

RPointerArray < MGroupContentEventObserver > iEventObservers [private]

Event observers of subscription item.

CXIMPIdentityImp * iGroupId

CXIMPIdentityImp * iGroupId [private]

Group identity Own.

RPrGrpMemInfoImpArray * iRemoved

RPrGrpMemInfoImpArray * iRemoved [private]

List of removed members (removed since last update). Own.

RPrGrpMemInfoImpArray * iUpdated

RPrGrpMemInfoImpArray * iUpdated [private]

List of updated members (same as in last update). Own.