CContentType Class Reference

class CContentType : public CBase

The content type for a contact item field.

The content type identifies the field's type and the vCard property which the field maps to. It is owned by the field. Field types are defined as UIDs in cntdef.h.

The vCard mapping is optional. It should be specified if the field type alone is not enough to identify the mapping. The possible values for the vCard mapping are defined as UIDs in cntdef.h.

Each field is uniquely identified by the combination of UIDs contained in the content type.

Inherits from

Constructor & Destructor Documentation

CContentType()

CContentType ( ) [private]

CContentType(TUid)

CContentType ( TUid aMapping ) [private]

Parameters

TUid aMapping

~CContentType()

IMPORT_C ~CContentType ( )

Frees all resources owned by the content type object, prior to its destruction.

Member Functions Documentation

AddFieldTypeL(TFieldType)

IMPORT_C void AddFieldTypeL ( TFieldType aFieldType )

Appends a field type to the content type's list of field types.

Note that certain combinations of field types are not valid and should not be used.

Parameters

TFieldType aFieldType The field type to append to the list of field types.

CloneL(const CContentType &)

void CloneL ( const CContentType & aContentType ) [private]

Parameters

const CContentType & aContentType

ConstructL()

void ConstructL ( ) [private]

ContainsFieldType(TFieldType)

IMPORT_C TBool ContainsFieldType ( TFieldType aFieldType ) const

Tests whether the content type object contains the specified field type UID either as the mapping value or in its list of field types.

Parameters

TFieldType aFieldType The field type of interest.

ExternalizeL(RWriteStream &)

void ExternalizeL ( RWriteStream & aStream ) const

Externalises a CContentType object to a write stream.

Parameters

RWriteStream & aStream Stream to which the object should be externalised.

FieldType(TInt)

IMPORT_C TFieldType FieldType ( TInt aIndex ) const

Gets the indexed field type.

Parameters

TInt aIndex Index into the list of field types. The position is relative to zero; i.e. zero implies the first element in the array. This value must be non-negative and less than the number of objects currently within the array otherwise the operator raises a panic.

FieldTypeCount()

IMPORT_C TInt FieldTypeCount ( ) const

Gets the number of field types in the content type's list of field types.

InternalizeAdditionalUidsL(TInt, RReadStream &)

void InternalizeAdditionalUidsL ( TInt aCount,
RReadStream & aStream
)

Parameters

TInt aCount
RReadStream & aStream

InternalizeL(RReadStream &)

void InternalizeL ( RReadStream & aStream )

Internalises a CContentType object from a read stream.

Parameters

RReadStream & aStream Stream from which the object should be internalised.

IsEqual(const CContentType &)

IMPORT_C TBool IsEqual ( const CContentType & aType ) const
Compares two content type objects for equality. Two content type objects are equal according to this method if all following conditions are met:
  • vCard property mapping matches

  • same number of field types

  • main field type matches

  • additional field types and vCard property parameter mappings match

Parameters

const CContentType & aType The content type to compare with this CContentType.

IsEqualForSyncUpdate(const CContentType &)

IMPORT_C TBool IsEqualForSyncUpdate ( const CContentType & aType ) const

Tests whether the content types are suitable to match for synchronisation purpose.

Parameters

const CContentType & aType The content type to compare with this CContentType.

Mapping()

IMPORT_C TUid Mapping ( ) const

Gets the vCard mapping.

NewL()

IMPORT_C CContentType * NewL ( ) [static]

Allocates and constructs a new default CContentType .

The object has no field types and the mapping is set to KNullUid

NewL(TFieldType, TUid)

IMPORT_C CContentType * NewL ( TFieldType aFieldType,
TUid aMapping = KNullUid
) [static]

Allocates and constructs a new CContentType with a single field type and a mapping.

Parameters

TFieldType aFieldType The field type to add to the content type.
TUid aMapping = KNullUid The mapping.

NewL(const CContentType &)

IMPORT_C CContentType * NewL ( const CContentType & aContentType ) [static]

Allocates and constructs a new CContentType based on another one.

Parameters

const CContentType & aContentType The CContentType on which to base the new one.

NewLC(RReadStream &)

CContentType * NewLC ( RReadStream & aStream ) [static]

Constructs a new content type based on a RReadStream .

Parameters

RReadStream & aStream RReadStream containing object to internalize.

RemoveFieldType(TFieldType)

IMPORT_C void RemoveFieldType ( TFieldType aFieldType )

Removes a field type from the list of field types.

Parameters

TFieldType aFieldType The field type to remove from the list of field types.

Reset()

void Reset ( )

SetMapping(TUid)

IMPORT_C void SetMapping ( TUid aMapping )

Sets the vCard mapping.

Parameters

TUid aMapping The new vCard mapping for the content type.

SupportsMultipleLines()

IMPORT_C TBool SupportsMultipleLines ( ) const

Tests whether the content type supports multiple lines of text. If the content type object contains a field type which supports this, either in its list of field types, or as its mapping, the function returns ETrue. Examples of such field types are address fields (type KUidContactFieldAddress) and note fields (type KUidContactFieldNote).

operator==(const CContentType &)

IMPORT_C TBool operator== ( const CContentType & aType ) const
Compares two content type objects for equality. Two content type objects are equal according to this method if all following conditions are met:
  • vCard property mapping matches

  • same number of field types

  • main field type matches

  • additional field types and vCard property parameter mappings match

Parameters

const CContentType & aType The content type to compare with this CContentType. +

Member Data Documentation

CArrayFix< TUid > * iFieldTypes

CArrayFix < TUid > * iFieldTypes [private]

TUid iMapping

TUid iMapping [private]