CParserGroupedProperty Class Reference

class CParserGroupedProperty : public CParserProperty

A grouped property.

This is a vCard property which may be a member of one or more property groups. It owns an array of descriptors, each of which identifies a group to which the property belongs.

An example of how grouped properties may be useful is for a person with two homes. Each home has an address and telephone number, both of which are to be stored on the vCard. The address and telephone number are grouped for each home. A prefix for the address and telephone number properties is provided: one for each home. Each prefix is stored as a property group.

When the property is externalised, the identities of all the groups to which the property belongs (i.e. the prefixes) are written to the stream before CParserProperty::ExternalizeL() is called.

The class also provides a function which can be used to test whether the property is a member of a given group.

Note that the vCard parser stores all properties using this class; if the vCard property is not grouped then the array of property groups is empty. Conversely, the vCalender parser does not have property groups, and so stores all properties using the CParserProperty base class.

Inherits from

Public Member Functions
CParserGroupedProperty(CDesC8Array *, CArrayPtr< CParserParam > *)
~CParserGroupedProperty()
IMPORT_C voidExternalizeL(RWriteStream &, CVersitParser *)
IMPORT_C TBoolGroup(const TDesC8 &)
const CDesC8Array *Groups()
IMPORT_C CParserGroupedProperty *NewL(CParserPropertyValue &, const TDesC8 &, CDesC8Array *, CArrayPtr< CParserParam > *)
voidSetGroups(CDesC8Array *)
IMPORT_C TBoolSupportsInterface(const TUid &)
Protected Member Functions
CParserGroupedProperty(CParserPropertyValue &, CDesC8Array *, CArrayPtr< CParserParam > *)
Private Member Functions
IMPORT_C voidReserved()
Inherited Functions
CBase::CBase()
CBase::Delete(CBase *)
CBase::Extension_(TUint,TAny *&,TAny *)
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()
CParserProperty::AddParamL(CParserParam *)
CParserProperty::CParserProperty(CArrayPtr< CParserParam > *)
CParserProperty::CParserProperty(CParserPropertyValue &,CArrayPtr< CParserParam > *)
CParserProperty::ConstructSelfL(CParserProperty &,const TDesC8 &)
CParserProperty::DeleteParam(TDesC8 &)
CParserProperty::LoadBinaryValuesFromFilesL(RFs &)
CParserProperty::Name()const
CParserProperty::NameUid()const
CParserProperty::NewL(CParserPropertyValue &,const TDesC8 &,CArrayPtr< CParserParam > *)
CParserProperty::Param(const TDesC8 &)const
CParserProperty::ParamArray()const
CParserProperty::SaveBinaryValuesToFilesL(TInt,const TDesC &,RFs &)
CParserProperty::SetNameL(const TDesC8 &)
CParserProperty::SetNameUid(TUid)
CParserProperty::SetParamArray(CArrayPtr< CParserParam > *)
CParserProperty::SetValue(CParserPropertyValue *)
CParserProperty::Uid()const
CParserProperty::Value()const
CParserProperty::~CParserProperty()
Protected Attributes
CDesC8Array *iArrayOfGroups
Inherited Attributes
CParserProperty::iArrayOfParams
CParserProperty::iPropertyName
CParserProperty::iPropertyNameUid
CParserProperty::iPropertyValue

Constructor & Destructor Documentation

CParserGroupedProperty(CDesC8Array *, CArrayPtr< CParserParam > *)

IMPORT_CCParserGroupedProperty(CDesC8Array *aArrayOfGroups,
CArrayPtr< CParserParam > *aArrayOfParams
)

Parameters

CDesC8Array * aArrayOfGroups
CArrayPtr< CParserParam > * aArrayOfParams

CParserGroupedProperty(CParserPropertyValue &, CDesC8Array *, CArrayPtr< CParserParam > *)

CParserGroupedProperty(CParserPropertyValue &aPropertyValue,
CDesC8Array *aArrayOfGroups,
CArrayPtr< CParserParam > *aArrayOfParams
)[protected]

Parameters

CParserPropertyValue & aPropertyValue
CDesC8Array * aArrayOfGroups
CArrayPtr< CParserParam > * aArrayOfParams

~CParserGroupedProperty()

IMPORT_C~CParserGroupedProperty()

Member Functions Documentation

ExternalizeL(RWriteStream &, CVersitParser *)

IMPORT_C voidExternalizeL(RWriteStream &aStream,
CVersitParser *aVersitParser = NULL
)[virtual]

Parameters

RWriteStream & aStream
CVersitParser * aVersitParser = NULL

Group(const TDesC8 &)

IMPORT_C TBoolGroup(const TDesC8 &aGroup)const

Parameters

const TDesC8 & aGroup

Groups()

const CDesC8Array *Groups()[inline]

Gets the groups to which the property belongs.

Pointer to an array of descriptors. Each one specifies a group name.

NewL(CParserPropertyValue &, const TDesC8 &, CDesC8Array *, CArrayPtr< CParserParam > *)

IMPORT_C CParserGroupedProperty *NewL(CParserPropertyValue &aPropertyValue,
const TDesC8 &aName,
CDesC8Array *aArrayOfGroups,
CArrayPtr< CParserParam > *aArrayOfParams
)[static]

Parameters

CParserPropertyValue & aPropertyValue
const TDesC8 & aName
CDesC8Array * aArrayOfGroups
CArrayPtr< CParserParam > * aArrayOfParams

Reserved()

IMPORT_C voidReserved()[private, virtual]

SetGroups(CDesC8Array *)

voidSetGroups(CDesC8Array *aArrayOfGroups)[inline]

Sets the list of groups to which the property belongs, replacing any existing list.

Parameters

CDesC8Array * aArrayOfGroupsArray of descriptors; each of which specifies a group name. The grouped property takes ownership of the array.

SupportsInterface(const TUid &)

IMPORT_C TBoolSupportsInterface(const TUid &aInterfaceUid)const [virtual]

Parameters

const TUid & aInterfaceUid

Member Data Documentation

CDesC8Array * iArrayOfGroups

CDesC8Array *iArrayOfGroups[protected]