CGroupContentSubscriptionItem Class Reference

class CGroupContentSubscriptionItem : public CXIMPSubscriptionItemBase

PSC group list subscription implementation

Since
S60 v3.2

Inherits from

Public Member Functions
~CGroupContentSubscriptionItem()
IMPORT_C voidAddOrRenewSubscriberL(MXIMPPscContext *)
IMPORT_C voidClean()
IMPORT_C const CXIMPIdentityImp &GroupId()
IMPORT_C TBoolGroupMemberExistsL(CPresentityGroupMemberInfoImp &)
IMPORT_C TIntIdentityOrder(const CXIMPIdentityImp *, const CGroupContentSubscriptionItem &)
IMPORT_C TBoolIsGroupMemberUpdatedL(CPresentityGroupMemberInfoImp &)
CPresentityGroupMemberInfoImp &MemberAt(TInt)
TInt MemberCount()
CGroupContentSubscriptionItem *NewLC(MXIMPItemParentBase &, const CXIMPIdentityImp &)
IMPORT_C TIntOrder(const CGroupContentSubscriptionItem &, const CGroupContentSubscriptionItem &)
voidRegisterEventObserverL(MGroupContentEventObserver *)
IMPORT_C voidSetAddedListL(RPrGrpMemInfoImpArray *)
IMPORT_C voidSetNewListL(RPrGrpMemInfoImpArray *)
IMPORT_C voidSetRemovedListL(RPrGrpMemInfoImpArray *)
voidSynthesiseSubscriptionEventToAllCtxsL()
voidSynthesiseSubscriptionEventToL(MXIMPPscContext *, TBool)
voidUnregisterEventObserver(MGroupContentEventObserver *)
Private Member Functions
CGroupContentSubscriptionItem(MXIMPItemParentBase &)
voidCleanExpired()
voidConstructL(const CXIMPIdentityImp &)
voidInformObserversL()
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 voidAddOrRenewSubscriberL(MXIMPPscContext *aContext)

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

Parameters

MXIMPPscContext * aContext

Clean()

IMPORT_C voidClean()

Remove the temporary lists.

CleanExpired()

voidCleanExpired()[private, virtual]

ConstructL(const CXIMPIdentityImp &)

voidConstructL(const CXIMPIdentityImp &aGroupId)[private]

Construction

Parameters

const CXIMPIdentityImp & aGroupId

GroupId()

IMPORT_C const CXIMPIdentityImp &GroupId()const

Access to group id.

GroupMemberExistsL(CPresentityGroupMemberInfoImp &)

IMPORT_C TBoolGroupMemberExistsL(CPresentityGroupMemberInfoImp &aMemberInfo)const

Check if group member exists.

Parameters

CPresentityGroupMemberInfoImp & aMemberInfoGroup member to check

IdentityOrder(const CXIMPIdentityImp *, const CGroupContentSubscriptionItem &)

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

Used as method for TLinearOrder when ordering items.

Parameters

const CXIMPIdentityImp * aAFirst object used as key for ordering.
const CGroupContentSubscriptionItem & aBSecond object for ordering.

InformObserversL()

voidInformObserversL()[private]

Inform observer about change.

IsGroupMemberUpdatedL(CPresentityGroupMemberInfoImp &)

IMPORT_C TBoolIsGroupMemberUpdatedL(CPresentityGroupMemberInfoImp &aMemberInfo)const

Check if group member is updated.

Parameters

CPresentityGroupMemberInfoImp & aMemberInfoGroup member to check

MemberAt(TInt)

CPresentityGroupMemberInfoImp &MemberAt(TIntaIndex)

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 TIntOrder(const CGroupContentSubscriptionItem &aA,
const CGroupContentSubscriptionItem &aB
)[static]

Used as method for TLinearOrder when ordering items.

Parameters

const CGroupContentSubscriptionItem & aAFirst object for ordering.
const CGroupContentSubscriptionItem & aBSecond object for ordering.

RegisterEventObserverL(MGroupContentEventObserver *)

voidRegisterEventObserverL(MGroupContentEventObserver *aEventObserver)

Register event observer

Parameters

MGroupContentEventObserver * aEventObserver

SetAddedListL(RPrGrpMemInfoImpArray *)

IMPORT_C voidSetAddedListL(RPrGrpMemInfoImpArray *aMemberList)

Set the added list of members. Ownership is transferred!

Parameters

RPrGrpMemInfoImpArray * aMemberListThe list of groups

SetNewListL(RPrGrpMemInfoImpArray *)

IMPORT_C voidSetNewListL(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 * aMemberListThe list of groups

SetRemovedListL(RPrGrpMemInfoImpArray *)

IMPORT_C voidSetRemovedListL(RPrGrpMemInfoImpArray *aMemberList)

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

Parameters

RPrGrpMemInfoImpArray * aMemberListThe list of groups

SynthesiseSubscriptionEventToAllCtxsL()

voidSynthesiseSubscriptionEventToAllCtxsL()

SynthesiseSubscriptionEventToL(MXIMPPscContext *, TBool)

voidSynthesiseSubscriptionEventToL(MXIMPPscContext *aContext,
TBoolaForceEvent
)

Parameters

MXIMPPscContext * aContext
TBool aForceEvent

UnregisterEventObserver(MGroupContentEventObserver *)

voidUnregisterEventObserver(MGroupContentEventObserver *aEventObserver)

Unregister event observer

Parameters

MGroupContentEventObserver * aEventObserverCanceling 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.