phoneengine/PhoneCntFinder/ContactService/inc/cphcntcontactmatchstrategy.h
branchRCL_3
changeset 23 40a3f856b14d
parent 14 b8d67d6176f5
equal deleted inserted replaced
22:94dc1107e8b2 23:40a3f856b14d
    18 
    18 
    19 #ifndef CPHCNTCONTACTMATCHSTRATEGY_H
    19 #ifndef CPHCNTCONTACTMATCHSTRATEGY_H
    20 #define CPHCNTCONTACTMATCHSTRATEGY_H
    20 #define CPHCNTCONTACTMATCHSTRATEGY_H
    21 
    21 
    22 #include <e32base.h>
    22 #include <e32base.h>
    23 #include <cenrepnotifyhandler.h>
       
    24 #include <CVPbkPhoneNumberMatchStrategy.h>
    23 #include <CVPbkPhoneNumberMatchStrategy.h>
    25 
    24 
    26 #include "mphcntcontactmatchstrategy.h"
    25 #include "mphcntcontactmatchstrategy.h"
    27 #include "mphcntcontactstoreeventobserver.h"
    26 #include "mphcntcontactstoreeventobserver.h"
    28 
    27 
    29 class CVPbkContactManager;
    28 class CVPbkContactManager;
    30 class MVPbkContactFindObserver;
    29 class MVPbkContactFindObserver;
    31 class CVPbkPhoneNumberMatchStrategy;
    30 class CVPbkPhoneNumberMatchStrategy;
    32 class CRepository;
       
    33 class CVPbkContactStoreUriArray;
    31 class CVPbkContactStoreUriArray;
    34 class CPhCntContactStoreUris;
    32 class CPhCntContactStoreUris;
    35 class CCntRawPhoneNumberExtractor;
    33 class CCntRawPhoneNumberExtractor;
    36 
    34 
    37 /**
    35 /**
    41  *  @since S60 v3.1
    39  *  @since S60 v3.1
    42  */
    40  */
    43 NONSHARABLE_CLASS( CPhCntContactMatchStrategy ) :
    41 NONSHARABLE_CLASS( CPhCntContactMatchStrategy ) :
    44     public CBase,
    42     public CBase,
    45     public MPhCntContactMatchStrategy,
    43     public MPhCntContactMatchStrategy,
    46     private MCenRepNotifyHandlerCallback,
       
    47     private MPhCntContactStoreEventObserver
    44     private MPhCntContactStoreEventObserver
    48     {
    45     {
    49 public:
    46 public:
    50 
    47 
    51     /**
    48     /**
   114      * @see MPhCntContactStoreEventObserver.
   111      * @see MPhCntContactStoreEventObserver.
   115      */
   112      */
   116     void ContactStoreAvailabilityChanged();
   113     void ContactStoreAvailabilityChanged();
   117 
   114 
   118     /**
   115     /**
   119      * Removes postfix from aNumber and starts the matching.
       
   120      */
       
   121     void MatchL( const TDesC& aNumber );
       
   122 
       
   123     /**
       
   124      * Method to ease unit testing. Creates the actual instance of iMatchStrategy.
   116      * Method to ease unit testing. Creates the actual instance of iMatchStrategy.
   125      */
   117      */
   126     virtual TInt DoCreateMatchStrategy();
   118     virtual TInt DoCreateMatchStrategy();
   127     
   119     
   128     /**
   120     /**
   147      * Match strategy.
   139      * Match strategy.
   148      * Own.
   140      * Own.
   149      */
   141      */
   150     CVPbkPhoneNumberMatchStrategy* iMatchStrategy;
   142     CVPbkPhoneNumberMatchStrategy* iMatchStrategy;
   151 
   143 
   152     /**
       
   153      * Central repository instance, for getting
       
   154      * number of numbers used with contact matching.
       
   155      * Own.
       
   156      */
       
   157     CRepository* iCenRepSession;
       
   158 
       
   159     /**
       
   160      * For getting notifications of number of numbers
       
   161      * used with contact matching changes.
       
   162      * Own.
       
   163      */
       
   164     CCenRepNotifyHandler* iCenRepNotifyHandler;
       
   165 
       
   166      /**
   144      /**
   167       * Contact manager is needed with match strategy.
   145       * Contact manager is needed with match strategy.
   168       * Not own.
   146       * Not own.
   169       */
   147       */
   170     CVPbkContactManager& iContactManager;
   148     CVPbkContactManager& iContactManager;
   187       * Own.
   165       * Own.
   188       */
   166       */
   189     CVPbkContactStoreUriArray* iUriArray;
   167     CVPbkContactStoreUriArray* iUriArray;
   190 
   168 
   191     /**
   169     /**
   192      * Number of digits used with matching.
       
   193      */
       
   194     TInt iNumberOfDigits;
       
   195 
       
   196     /**
       
   197      * Number extractor.
   170      * Number extractor.
   198      * Own.
   171      * Own.
   199      */
   172      */
   200     CCntRawPhoneNumberExtractor* iNumberExtractor;
   173     CCntRawPhoneNumberExtractor* iNumberExtractor;
   201 
   174