CContactMatcher Class Reference

class CContactMatcher : public CBase

CContactMatcher class is an API for contact matching.

Before a method starts executing a Virtual Phonebook operation, it checks if there's an older asynchronous operation already in execution. If there is, synchronous methods leave with error code KErrInUse. Asynchronous methods complete the request with same error code.

If phone backup/restore has been detected, using methods which require Virtual Phonebook is not possible normally. Instead those methods leave with error code KErrAccessDenied. Once EStoreBackupRestoreCompleted event has been received, methods can be called normally.

VPbkEngine.lib
Since
3.1

Inherits from

Public Member Functions
~CContactMatcher()
IMPORT_C voidCancelOperation()
IMPORT_C voidCloseStoresL()
IMPORT_C TIntContactHasFieldOfTypeL(TAiwAddressSelectType, const MVPbkStoreContact &)
IMPORT_C MPbk2ContactNameFormatter &ContactNameFormatterL()
IMPORT_C const MVPbkFieldTypeList &FieldTypes()
IMPORT_C CVPbkContactManager &GetContactManager()
IMPORT_C MVPbkContactStoreList &GetContactStoresL()
IMPORT_C TPtrC8GetFieldDataBinaryL(const MVPbkStoreContact &, const MVPbkFieldType &)
IMPORT_C TTimeGetFieldDataDateTimeL(const MVPbkStoreContact &, const MVPbkFieldType &)
IMPORT_C TPtrCGetFieldDataTextL(const MVPbkStoreContact &, const MVPbkFieldType &)
IMPORT_C HBufC *GetNameL(MVPbkStoreContactFieldCollection &)
IMPORT_C voidGetStoreContactL(const MVPbkContactLink &, MVPbkStoreContact **)
IMPORT_C voidGetStoreContactL(const MVPbkContactLink &, MVPbkStoreContact **, TRequestStatus &)
IMPORT_C voidIsOwnNumberL(const TDesC &, TBool &)
IMPORT_C voidIsOwnNumberL(const TDesC &, TRequestStatus &)
IMPORT_C voidMatchDataL(const TDesC &, const MVPbkFieldTypeList &, CVPbkContactLinkArray &)
IMPORT_C voidMatchDataL(const MDesC16Array &, const MVPbkFieldTypeList &, CVPbkContactLinkArray &, const TCallBack &)
IMPORT_C voidMatchDataL(const TDesC &, const MVPbkFieldTypeList &, CVPbkContactLinkArray &, TRequestStatus &)
IMPORT_C voidMatchPhoneNumberL(const TDesC &, TInt, CVPbkPhoneNumberMatchStrategy::TVPbkPhoneNumberMatchFlags, CVPbkContactLinkArray &)
IMPORT_C voidMatchPhoneNumberL(const TDesC &, TInt, CVPbkPhoneNumberMatchStrategy::TVPbkPhoneNumberMatchFlags, CVPbkContactLinkArray &, TRequestStatus &)
IMPORT_C CContactMatcher *NewL(RFs *)
IMPORT_C CContactMatcher *NewLC(RFs *)
IMPORT_C voidOpenAllStoresL()
IMPORT_C voidOpenAllStoresL(TRequestStatus &)
IMPORT_C voidOpenDefaultMatchStoresL()
IMPORT_C voidOpenDefaultMatchStoresL(TRequestStatus &)
IMPORT_C voidOpenOwnNumberStoresL()
IMPORT_C voidOpenOwnNumberStoresL(TRequestStatus &)
IMPORT_C voidOpenStoreL(const CVPbkContactStoreUriArray &)
IMPORT_C voidOpenStoreL(const CVPbkContactStoreUriArray &, TRequestStatus &)
Private Member Functions
CContactMatcher(RFs *)
voidCleanupNumberMatch()
voidConstructL()
voidCopyFindResultsL(MVPbkContactLinkArray *)
MVPbkContactFieldSelector *CreateFieldTypeSelectorLC(TInt)
voidFindCompleteL(MVPbkContactLinkArray *)
voidFindFailed(TInt)
const MVPbkStoreContactField *FindField(const MVPbkStoreContact &, const MVPbkFieldType &)
voidFindFromStoreFailed(MVPbkContactStore &, TInt)
voidFindFromStoreSucceededL(MVPbkContactStore &, MVPbkContactLinkArray *)
voidFindFromStoresOperationComplete()
voidFreeOldOperation()
CVPbkContactStoreUriArray *GetStoreArrayLC(const TDesC &(*[])())
voidHandleStoreEventL(MVPbkContactStore &, TVPbkContactStoreEvent)
voidInitOperation(TRequestStatus *)
voidInitOperationL(TMethodId)
voidInitOperationL(TMethodId, TRequestStatus *)
voidMatchPhoneNumberCommonL(const TDesC &, TInt, CVPbkPhoneNumberMatchStrategy::TVPbkPhoneNumberMatchFlags)
voidOpenComplete()
voidOpenStoreCommonL(const CVPbkContactStoreUriArray &)
voidOpenStoreL(const TDesC &(*[])())
voidOpenStoreL(const TDesC &(*[])(), TRequestStatus &)
voidOperationComplete(TInt)
voidOperationFailed(TInt)
voidRemoveSimilarEmailAddressesL(const TDesC &, CVPbkContactLinkArray &, const MVPbkFieldTypeList &)
voidStoreReady(MVPbkContactStore &)
voidStoreUnavailable(MVPbkContactStore &, TInt)
voidVPbkSingleContactOperationComplete(MVPbkContactOperationBase &, MVPbkStoreContact *)
voidVPbkSingleContactOperationFailed(MVPbkContactOperationBase &, TInt)
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()
Private Member Enumerations
enumTMethodId {
ENoMethod = 0, EMatchPhoneNumber, EMatchData, EGetStoreContact, EOpenStore, ECloseStores
}
enumTMethodStatus { EIdle = 0, EExecuting, EFinished }
Private Attributes
CActiveSchedulerWait iASchedulerWait
TMethodId iApiMethod
TMethodStatus iApiMethodStatus
TBool iBackup
TRequestStatus *iClientStatus
CVPbkContactManager *iContactManager
TInt iError
RFs *iFsSession
CVPbkPhoneNumberMatchStrategy *iMatchStrategy
MPbk2ContactNameFormatter *iNameFormatter
MVPbkContactOperationBase *iOperation
RResourceFile iResourceFile
TBool iResourceFileInitialized
CVPbkContactLinkArray *iResultContactLinkArray
TInt iResultContactLinkCnt
MVPbkStoreContact **iResultStoreContact
CPbk2SortOrderManager *iSortOrderManager
CVPbkContactStoreUriArray *iStoreUris
CVPbkPhoneNumberMatchStrategy::TConfig *iStratConfig
TBool iSync

Constructor & Destructor Documentation

CContactMatcher(RFs *)

CContactMatcher(RFs *aFsSession)[private]

C++ Constructor.

Parameters

RFs * aFsSession

~CContactMatcher()

IMPORT_C~CContactMatcher()

C++ destructor.

Member Functions Documentation

CancelOperation()

IMPORT_C voidCancelOperation()

Cancels asynchronous operation.

CleanupNumberMatch()

voidCleanupNumberMatch()[private]

CloseStoresL()

IMPORT_C voidCloseStoresL()

Closes all currently open contact stores including OwnNumber stores.

ConstructL()

voidConstructL()[private]

Second phase constructor

ContactHasFieldOfTypeL(TAiwAddressSelectType, const MVPbkStoreContact &)

IMPORT_C TIntContactHasFieldOfTypeL(TAiwAddressSelectTypeaAddressSelectType,
const MVPbkStoreContact &aContact
)

Finds out if the contact has the right field, support for phonenumber, email and mms

Parameters

TAiwAddressSelectType aAddressSelectTypeis the address type looked for aContact is the contact from which the data is searched from
const MVPbkStoreContact & aContact

ContactNameFormatterL()

IMPORT_C MPbk2ContactNameFormatter &ContactNameFormatterL()

Returns reference to the contact name formatter. Object is created if not used earlier.

CopyFindResultsL(MVPbkContactLinkArray *)

voidCopyFindResultsL(MVPbkContactLinkArray *aResults)[private]

Parameters

MVPbkContactLinkArray * aResults

CreateFieldTypeSelectorLC(TInt)

MVPbkContactFieldSelector *CreateFieldTypeSelectorLC(TIntaResId)[private]

Parameters

TInt aResId

FieldTypes()

IMPORT_C const MVPbkFieldTypeList &FieldTypes()const

Returns the global list of possible field types.

FindCompleteL(MVPbkContactLinkArray *)

voidFindCompleteL(MVPbkContactLinkArray *aResults)[private]

Called when find is complete. Callee takes ownership of the results. In case of an error during find, the aResults may contain only partial results of the find.

Parameters

MVPbkContactLinkArray * aResultsArray of contact links that matched the find. Callee must take ownership of this object in the end of the function, ie. in case the function does not leave.

FindFailed(TInt)

voidFindFailed(TIntaError)[private]

Called in case the find fails for some reason.

Parameters

TInt aErrorOne of the system wide error codes.

FindField(const MVPbkStoreContact &, const MVPbkFieldType &)

const MVPbkStoreContactField *FindField(const MVPbkStoreContact &aContact,
const MVPbkFieldType &aFType
)const [private]

Parameters

const MVPbkStoreContact & aContact
const MVPbkFieldType & aFType

FindFromStoreFailed(MVPbkContactStore &, TInt)

voidFindFromStoreFailed(MVPbkContactStore &aStore,
TIntaError
)[private]

This function is called if/when there were errors while searching from a store.

Parameters

MVPbkContactStore & aStoreis the store from which the search was done.
TInt aErroris the error code.

FindFromStoreSucceededL(MVPbkContactStore &, MVPbkContactLinkArray *)

voidFindFromStoreSucceededL(MVPbkContactStore &aStore,
MVPbkContactLinkArray *aResultsFromStore
)[private]

Called when find is complete on a single store. Callee takes ownership of the results. In case of an error during find, the aResultsFromStore may contain only partial results of the find.

Parameters

MVPbkContactStore & aStoreis the store from which the contacts were searched from
MVPbkContactLinkArray * aResultsFromStoreArray of contact links that matched the find. Callee must take ownership of this object in the end of the function, ie. in case the function does not leave.

FindFromStoresOperationComplete()

voidFindFromStoresOperationComplete()[private]

Called when find is complete.

FreeOldOperation()

voidFreeOldOperation()[private]

GetContactManager()

IMPORT_C CVPbkContactManager &GetContactManager()

Returns reference to the contactmanager

GetContactStoresL()

IMPORT_C MVPbkContactStoreList &GetContactStoresL()

Returns the used contact store list, needed for e.g. aiw fetch

GetFieldDataBinaryL(const MVPbkStoreContact &, const MVPbkFieldType &)

IMPORT_C TPtrC8GetFieldDataBinaryL(const MVPbkStoreContact &aStoreContact,
const MVPbkFieldType &aFieldType
)const

Returns a pointer to contact's field data of given field type. If the field type isn't found from contact, return value is KNullDesC8. NOTE: this works only for field types of storage type EVPbkFieldStorageTypeBinary. For other types, leaves with error code KErrArgument.

Parameters

const MVPbkStoreContact & aStoreContactThe contact from which field data should be returned.
const MVPbkFieldType & aFieldTypeField's type.

GetFieldDataDateTimeL(const MVPbkStoreContact &, const MVPbkFieldType &)

IMPORT_C TTimeGetFieldDataDateTimeL(const MVPbkStoreContact &aStoreContact,
const MVPbkFieldType &aFieldType
)const

Returns a pointer to contact's field data of given field type. If the field type isn't found from contact, return value is "1.1.1111". (d.m.yyyy). NOTE: this works only for field types of storage type EVPbkFieldStorageTypeDateTime. For other types, leaves with error code KErrArgument.

Parameters

const MVPbkStoreContact & aStoreContactThe contact from which field data should be returned.
const MVPbkFieldType & aFieldTypeField's type.

GetFieldDataTextL(const MVPbkStoreContact &, const MVPbkFieldType &)

IMPORT_C TPtrCGetFieldDataTextL(const MVPbkStoreContact &aStoreContact,
const MVPbkFieldType &aFieldType
)const

Returns a pointer to contact's field data of given field type. If the field type isn't found from contact, return value is KNullDesC. NOTE: this works only for field types of storage type EVPbkFieldStorageTypeText. For other types, leaves with error code KErrArgument.

Parameters

const MVPbkStoreContact & aStoreContactThe contact from which field data should be returned.
const MVPbkFieldType & aFieldTypeField's type.

GetNameL(MVPbkStoreContactFieldCollection &)

IMPORT_C HBufC *GetNameL(MVPbkStoreContactFieldCollection &aFieldCollection)

Returns the name of the contact in the same format as MPbk2ContactNameFormatter

Parameters

MVPbkStoreContactFieldCollection & aFieldCollectionThe fieldcollection of the contact

GetStoreArrayLC(const TDesC &(*[])())

CVPbkContactStoreUriArray *GetStoreArrayLC(const TDesC &(*[])()aFuncPtrs)[private, static]

Parameters

const TDesC &(*[])() aFuncPtrs

GetStoreContactL(const MVPbkContactLink &, MVPbkStoreContact **)

IMPORT_C voidGetStoreContactL(const MVPbkContactLink &aContactLink,
MVPbkStoreContact **aStoreContact
)

Gets a store contact from a contact link.

Parameters

const MVPbkContactLink & aContactLinkThe link from which store contact should be returned.
MVPbkStoreContact ** aStoreContactPointer to store contact. Client must take the ownership immediately.

GetStoreContactL(const MVPbkContactLink &, MVPbkStoreContact **, TRequestStatus &)

IMPORT_C voidGetStoreContactL(const MVPbkContactLink &aContactLink,
MVPbkStoreContact **aStoreContact,
TRequestStatus &aStatus
)

Gets a store contact from a contact link. Asynchronous version. Parameters like in the synchronous version, but status code is returned in aStatus.

Parameters

const MVPbkContactLink & aContactLink
MVPbkStoreContact ** aStoreContact
TRequestStatus & aStatusCompletion status of the request. Values: KErrNone = success, otherwise an error code.

HandleStoreEventL(MVPbkContactStore &, TVPbkContactStoreEvent)

voidHandleStoreEventL(MVPbkContactStore &aContactStore,
TVPbkContactStoreEventaStoreEvent
)[private]

Called when changes occur in the contact store. TVPbkContactStoreEvent, MVPbkContactStoreObserver.h

Parameters

MVPbkContactStore & aContactStore
TVPbkContactStoreEvent aStoreEventEvent that has occured.

InitOperation(TRequestStatus *)

voidInitOperation(TRequestStatus *aStatus)[private]

Parameters

TRequestStatus * aStatus

InitOperationL(TMethodId)

voidInitOperationL(TMethodIdaApiMethod)[private]

Parameters

TMethodId aApiMethod

InitOperationL(TMethodId, TRequestStatus *)

voidInitOperationL(TMethodIdaApiMethod,
TRequestStatus *aStatus
)[private]

Parameters

TMethodId aApiMethod
TRequestStatus * aStatus

IsOwnNumberL(const TDesC &, TBool &)

IMPORT_C voidIsOwnNumberL(const TDesC &aSearch,
TBool &aResult
)

Determines whether a phone number is OwnNumber. Synchronous version. The method searches for the number from currently open stores. In order to use SIM's ISDN store, it should be the only open store. Can be opened with OpenOwnNumberStoresL().

Parameters

const TDesC & aSearchPhone number to search for
TBool & aResultBoolean result.

IsOwnNumberL(const TDesC &, TRequestStatus &)

IMPORT_C voidIsOwnNumberL(const TDesC &aSearch,
TRequestStatus &aStatus
)

Determines whether a phone number is OwnNumber. Asynchronous version. The method searches for the number from currently open stores. In order to use SIM's ISDN store, it should be the only open store. Can be opened with OpenOwnNumberStoresL().

Parameters

const TDesC & aSearchPhone number to search for
TRequestStatus & aStatusRequest status containing the result and possible error code. KErrNone = TRUE, KErrNotFound = FALSE, other value = system wide error code.

MatchDataL(const TDesC &, const MVPbkFieldTypeList &, CVPbkContactLinkArray &)

IMPORT_C voidMatchDataL(const TDesC &aSearch,
const MVPbkFieldTypeList &aFieldTypes,
CVPbkContactLinkArray &aLinkArray
)

Finds contacts with field data that match the search string. Contacts are searched from all currently open contact stores. Matching is done from field types given by the method caller. The list of all possible field types can be fetched from the wrapper using FieldTypes().

Parameters

const TDesC & aSearchSearch string
const MVPbkFieldTypeList & aFieldTypesList of field types included in matching.
CVPbkContactLinkArray & aLinkArrayLinks to matching contacts are returned in this array that method caller provides.

MatchDataL(const MDesC16Array &, const MVPbkFieldTypeList &, CVPbkContactLinkArray &, const TCallBack &)

IMPORT_C voidMatchDataL(const MDesC16Array &aSearchStrings,
const MVPbkFieldTypeList &aFieldTypes,
CVPbkContactLinkArray &aLinkArray,
const TCallBack &aWordParserCallBack
)

Finds contacts with field data that match the search string. Contacts are searched from all currently open contact stores. Matching is done from field types given by the method caller. The list of all possible field types can be fetched from the wrapper using FieldTypes().

Parameters

const MDesC16Array & aSearchStringsSearch strings
const MVPbkFieldTypeList & aFieldTypesList of field types included in matching.
CVPbkContactLinkArray & aLinkArrayLinks to matching contacts are returned in this array that method caller provides.
const TCallBack & aWordParserCallBackis the callback function to the parser

MatchDataL(const TDesC &, const MVPbkFieldTypeList &, CVPbkContactLinkArray &, TRequestStatus &)

IMPORT_C voidMatchDataL(const TDesC &aSearch,
const MVPbkFieldTypeList &aFieldTypes,
CVPbkContactLinkArray &aLinkArray,
TRequestStatus &aStatus
)

Finds contacts with field data that match the search string. Asynchronous version. Searching is done according to parameters like in the synchronous version, but status code is returned in aStatus.

Parameters

const TDesC & aSearch
const MVPbkFieldTypeList & aFieldTypes
CVPbkContactLinkArray & aLinkArray
TRequestStatus & aStatusCompletion status of the request. Values: KErrNone = success, otherwise an error code.

MatchPhoneNumberCommonL(const TDesC &, TInt, CVPbkPhoneNumberMatchStrategy::TVPbkPhoneNumberMatchFlags)

voidMatchPhoneNumberCommonL(const TDesC &aData,
TIntaDigits,
CVPbkPhoneNumberMatchStrategy::TVPbkPhoneNumberMatchFlagsaFlags
)[private]

MatchPhoneNumberL(const TDesC &, TInt, CVPbkPhoneNumberMatchStrategy::TVPbkPhoneNumberMatchFlags, CVPbkContactLinkArray &)

IMPORT_C voidMatchPhoneNumberL(const TDesC &aSearch,
TIntaDigits,
CVPbkPhoneNumberMatchStrategy::TVPbkPhoneNumberMatchFlagsaFlags,
CVPbkContactLinkArray &aLinkArray
)

Finds contacts with phone numbers that match the search string. Synchronous version. Contacts are searched from all currently open contact stores. Matching is done from the end of the phone number. Note: If the search string is shorter than 7 digits, matching from Phone memory contact store works ONLY if the phone number is exactly the same as the search string. Example: Search string "567" would find phone number "567", but not "1234567". From SIM stores both numbers would be found.

Parameters

const TDesC & aSearchSearch string
TInt aDigitsNumber of digits to match from the end of phone number.
CVPbkPhoneNumberMatchStrategy::TVPbkPhoneNumberMatchFlags aFlagsSearch all or stop at first match. See enum values from CVPbkPhoneNumberMatchStrategy.h
CVPbkContactLinkArray & aLinkArrayLinks to matching contacts are returned in this array that method caller provides.

MatchPhoneNumberL(const TDesC &, TInt, CVPbkPhoneNumberMatchStrategy::TVPbkPhoneNumberMatchFlags, CVPbkContactLinkArray &, TRequestStatus &)

IMPORT_C voidMatchPhoneNumberL(const TDesC &aSearch,
TIntaDigits,
CVPbkPhoneNumberMatchStrategy::TVPbkPhoneNumberMatchFlagsaFlags,
CVPbkContactLinkArray &aLinkArray,
TRequestStatus &aStatus
)

Finds contacts with phone numbers that match the search string. Asynchronous version. Searching is done according to parameters like in the synchronous version, but status code is returned in aStatus.

Parameters

const TDesC & aSearch
TInt aDigits
CVPbkPhoneNumberMatchStrategy::TVPbkPhoneNumberMatchFlags aFlags
CVPbkContactLinkArray & aLinkArray
TRequestStatus & aStatusCompletion status of the request. Values: KErrNone = success, otherwise an error code.

NewL(RFs *)

IMPORT_C CContactMatcher *NewL(RFs *aFsSession)[static]

Two-phase constructor for CContactMatcher class.

Parameters

RFs * aFsSessionFile server session.

NewLC(RFs *)

IMPORT_C CContactMatcher *NewLC(RFs *aFsSession)[static]

Two-phase constructor for CContactMatcher class. Like NewL(), but also places instance on cleanup stack.

Parameters

RFs * aFsSession

OpenAllStoresL()

IMPORT_C voidOpenAllStoresL()

Opens all contact stores for future match operations. NOTE: does not open OwnNumber store.

Exceptions
KErrNotSupported

when none of the stores opens

KErrGeneral

if some stores are already open

OpenAllStoresL(TRequestStatus &)

IMPORT_C voidOpenAllStoresL(TRequestStatus &aStatus)

Opens all contact stores for future match operations. Asynchronous version. NOTE: does not open OwnNumber store.

Parameters

TRequestStatus & aStatusCompletion status of the request. KErrNone - at least one store opened successfully KErrNotSupported - all stores failed to open KErrGeneral - if some stores are already open

OpenComplete()

voidOpenComplete()[private]

Called when the opening process is complete, ie. all stores have been reported either failed or successfully opened.

OpenDefaultMatchStoresL()

IMPORT_C voidOpenDefaultMatchStoresL()

Opens default contact stores for future match operations. Used to find local aliases to phone numbers and email addresses NOTE: does not open OwnNumber store or fixed dialing store Opens the stores in the default preference order

Exceptions
KErrNotSupported

when none of the stores opens

KErrGeneral

if some stores are already open

OpenDefaultMatchStoresL(TRequestStatus &)

IMPORT_C voidOpenDefaultMatchStoresL(TRequestStatus &aStatus)

Opens default contact stores for future match operations. Used to find local aliases to phone numbers and email addresses Asynchronous version. NOTE: does not open OwnNumber store or fixed dialing store Opens the stores in the default preference order

Parameters

TRequestStatus & aStatusCompletion status of the request. KErrNone - at least one store opened successfully KErrNotSupported - all stores failed to open KErrGeneral - if some stores are already open

OpenOwnNumberStoresL()

IMPORT_C voidOpenOwnNumberStoresL()

Opens all OwnNumber stores for future match operations.

Exceptions
KErrNotSupported

when none of the stores opens

KErrGeneral

if some stores are already open

OpenOwnNumberStoresL(TRequestStatus &)

IMPORT_C voidOpenOwnNumberStoresL(TRequestStatus &aStatus)

Opens all OwnNumber stores for future match operations.

Parameters

TRequestStatus & aStatusCompletion status of the request. KErrNone - at least one store opened successfully KErrNotSupported - all stores failed to open KErrGeneral - if some stores are already open

OpenStoreCommonL(const CVPbkContactStoreUriArray &)

voidOpenStoreCommonL(const CVPbkContactStoreUriArray &aUriArray)[private]

Parameters

const CVPbkContactStoreUriArray & aUriArray

OpenStoreL(const CVPbkContactStoreUriArray &)

IMPORT_C voidOpenStoreL(const CVPbkContactStoreUriArray &aUriArray)

Opens one or more contact stores for future match operations.

Exceptions
KErrNotSupported

when none of the stores opens

KErrGeneral

if some stores are already open

Parameters

const CVPbkContactStoreUriArray & aUriArrayArray of contact store URIs to be opened.

OpenStoreL(const CVPbkContactStoreUriArray &, TRequestStatus &)

IMPORT_C voidOpenStoreL(const CVPbkContactStoreUriArray &aUriArray,
TRequestStatus &aStatus
)

Opens one or more contact stores for future match operations. Asynchronous version.

Parameters

const CVPbkContactStoreUriArray & aUriArrayArray of contact store URIs to be opened.
TRequestStatus & aStatusCompletion status of the request. KErrNone - at least one store opened successfully KErrNotSupported - all stores failed to open KErrGeneral - if some stores are already open

OpenStoreL(const TDesC &(*[])())

voidOpenStoreL(const TDesC &(*[])()aFuncPtrs)[private]

Parameters

const TDesC &(*[])() aFuncPtrs

OpenStoreL(const TDesC &(*[])(), TRequestStatus &)

voidOpenStoreL(const TDesC &(*[])()aFuncPtrs,
TRequestStatus &aStatus
)[private]

Parameters

const TDesC &(*[])() aFuncPtrs
TRequestStatus & aStatus

OperationComplete(TInt)

voidOperationComplete(TIntErrorCode =  KErrNone )[private]

Parameters

TInt ErrorCode =  KErrNone

OperationFailed(TInt)

voidOperationFailed(TIntaError)[private]

Parameters

TInt aError

RemoveSimilarEmailAddressesL(const TDesC &, CVPbkContactLinkArray &, const MVPbkFieldTypeList &)

voidRemoveSimilarEmailAddressesL(const TDesC &aData,
CVPbkContactLinkArray &aLinkArray,
const MVPbkFieldTypeList &aFieldTypes
)[private]

Parameters

const TDesC & aData
CVPbkContactLinkArray & aLinkArray
const MVPbkFieldTypeList & aFieldTypes

StoreReady(MVPbkContactStore &)

voidStoreReady(MVPbkContactStore &aContactStore)[private]

Called when a contact store is ready for use.

Parameters

MVPbkContactStore & aContactStore

StoreUnavailable(MVPbkContactStore &, TInt)

voidStoreUnavailable(MVPbkContactStore &aContactStore,
TIntaReason
)[private]

Called when a contact store becomes unavailable. Client may inspect the reason of the unavailability and decide whether or not it will keep the store opened (ie. listen to the store events).

Parameters

MVPbkContactStore & aContactStoreThe store that became unavailable.
TInt aReasonThe reason why the store is unavailable. This is one of the system wide error codes.

VPbkSingleContactOperationComplete(MVPbkContactOperationBase &, MVPbkStoreContact *)

voidVPbkSingleContactOperationComplete(MVPbkContactOperationBase &aOperation,
MVPbkStoreContact *aContact
)[private]

Called when operation is completed.

Parameters

MVPbkContactOperationBase & aOperationthe completed operation.
MVPbkStoreContact * aContactthe contact returned by the operation. Client must take the ownership immediately.

VPbkSingleContactOperationFailed(MVPbkContactOperationBase &, TInt)

voidVPbkSingleContactOperationFailed(MVPbkContactOperationBase &aOperation,
TIntaError
)[private]

Called if the operation fails.

Parameters

MVPbkContactOperationBase & aOperationthe failed operation.
TInt aErrorerror code of the failure.

Member Enumerations Documentation

Enum TMethodId

Enumerators

ENoMethod = 0
EMatchPhoneNumber
EMatchData
EGetStoreContact
EOpenStore
ECloseStores

Enum TMethodStatus

Enumerators

EIdle = 0
EExecuting
EFinished

Member Data Documentation

CActiveSchedulerWait iASchedulerWait

CActiveSchedulerWait iASchedulerWait[private]

TMethodId iApiMethod

TMethodId iApiMethod[private]

TMethodStatus iApiMethodStatus

TMethodStatus iApiMethodStatus[private]

TBool iBackup

TBool iBackup[private]

TRequestStatus * iClientStatus

TRequestStatus *iClientStatus[private]

CVPbkContactManager * iContactManager

CVPbkContactManager *iContactManager[private]

TInt iError

TInt iError[private]

RFs * iFsSession

RFs *iFsSession[private]

CVPbkPhoneNumberMatchStrategy * iMatchStrategy

CVPbkPhoneNumberMatchStrategy *iMatchStrategy[private]

MPbk2ContactNameFormatter * iNameFormatter

MPbk2ContactNameFormatter *iNameFormatter[private]

MVPbkContactOperationBase * iOperation

MVPbkContactOperationBase *iOperation[private]

RResourceFile iResourceFile

RResourceFile iResourceFile[private]

TBool iResourceFileInitialized

TBool iResourceFileInitialized[private]

CVPbkContactLinkArray * iResultContactLinkArray

CVPbkContactLinkArray *iResultContactLinkArray[private]

TInt iResultContactLinkCnt

TInt iResultContactLinkCnt[private]

MVPbkStoreContact ** iResultStoreContact

MVPbkStoreContact **iResultStoreContact[private]

CPbk2SortOrderManager * iSortOrderManager

CPbk2SortOrderManager *iSortOrderManager[private]

CVPbkContactStoreUriArray * iStoreUris

CVPbkContactStoreUriArray *iStoreUris[private]

CVPbkPhoneNumberMatchStrategy::TConfig * iStratConfig

CVPbkPhoneNumberMatchStrategy::TConfig *iStratConfig[private]

TBool iSync

TBool iSync[private]