adaptationlayer/tsy/nokiatsy_dll/inc/cmmphonebookoperationwrite.h
changeset 7 fa67e03b87df
parent 5 8ccc39f9d787
child 8 6295dc2169f3
equal deleted inserted replaced
6:942573423a60 7:fa67e03b87df
    63         /**
    63         /**
    64         * Two-phased constructor.
    64         * Two-phased constructor.
    65         */
    65         */
    66         static CMmPhoneBookOperationWrite* NewL(
    66         static CMmPhoneBookOperationWrite* NewL(
    67             CMmPhoneBookStoreMessHandler* aMmPhoneBookStoreMessHandler,
    67             CMmPhoneBookStoreMessHandler* aMmPhoneBookStoreMessHandler,
       
    68             CMmUiccMessHandler* aUiccMessHandler,
    68             const CMmDataPackage* aDataPackage );
    69             const CMmDataPackage* aDataPackage );
    69 
    70 
    70         /**
    71         /**
    71         * Destructor.
    72         * Destructor.
    72         */
    73         */
    80         * @return Pointer to operation.
    81         * @return Pointer to operation.
    81         */
    82         */
    82         static CMmPhoneBookOperationWrite* Build(
    83         static CMmPhoneBookOperationWrite* Build(
    83             TName aPhonebookType,
    84             TName aPhonebookType,
    84             TInt aIpc );
    85             TInt aIpc );
    85 
    86         
    86   private:
       
    87 
       
    88         /**
    87         /**
    89         * By default Symbian OS constructor is private.
    88         * By default Symbian OS constructor is private.
    90         */
    89         */
    91         CMmPhoneBookOperationWrite();
    90         CMmPhoneBookOperationWrite();
    92 
    91         
    93         /**
    92     protected:
    94         * Class attributes are created in ConstructL.
    93         
    95         */
    94         /**
    96         void ConstructL();
    95         * Creates and sends ISI message in order to read MBI Profile form first record
    97 
    96         * @param aTraId Transaction id
    98         /**
    97         * @param aIndex Location index
    99         * Separates different IPC requests for each other.
    98         * @param aDataToWrite Entry to write
   100         *
    99         * @return KErrNone or error value
   101         * @param aIpc Identify number of request.
   100         */
   102         * @param aDataPackage Packaged data.
   101         TInt UiccPbReqReadMBI( TUint8 aIndex, TUint8 aTransId );
   103         * @return KErrNone or error value.
   102 
   104         */
   103         /**
   105         TInt UICCCreateReq(
   104         * Creates and sends ISI message in order to wite an entry to SIM
   106             TInt aIpc,
   105         *
   107             const CMmDataPackage* aDataPackage,
   106         * @param aTraId Transaction id
   108             TUint8 aTransId );
   107         * @param aIndex Location index
       
   108         * @param aDataToWrite Entry to write
       
   109         * @return KErrNone or error value
       
   110         */
       
   111         TInt UiccPbReqWriteL(
       
   112             TUint8 aTraId,
       
   113             TInt16 aIndex,
       
   114             CPhoneBookStoreEntry& aDataToWrite );
   109 
   115 
   110         /**
   116         /**
   111         * Handles SimPbResp ISI -message
   117         * Handles SimPbResp ISI -message
   112         *
   118         *
   113         * @param aIsiMessage
   119         * @param aIsiMessage
   119                 TInt aStatus,
   125                 TInt aStatus,
   120                 TUint8 aDetails,
   126                 TUint8 aDetails,
   121                 const TDesC8& aFileData,
   127                 const TDesC8& aFileData,
   122                 TInt aTransId );
   128                 TInt aTransId );
   123 
   129 
       
   130 
       
   131 
       
   132   private:
       
   133 
       
   134 
       
   135         /**
       
   136         * Class attributes are created in ConstructL.
       
   137         */
       
   138         void ConstructL();
       
   139 
       
   140         /**
       
   141         * Separates different IPC requests for each other.
       
   142         *
       
   143         * @param aIpc Identify number of request.
       
   144         * @param aDataPackage Packaged data.
       
   145         * @return KErrNone or error value.
       
   146         */
       
   147         TInt UICCCreateReq(
       
   148             TInt aIpc,
       
   149             const CMmDataPackage* aDataPackage,
       
   150             TUint8 aTransId );
       
   151 
   124         /**
   152         /**
   125         * Handles HandleWriteReadEntryResp aFileData
   153         * Handles HandleWriteReadEntryResp aFileData
   126         *
   154         *
   127         * @param aFileData
   155         * @param aFileData
   128         * @param aTransId - Transaction id received
   156         * @param aTransId - Transaction id received
   246         * @param aTraId Transaction id
   274         * @param aTraId Transaction id
   247         * @param aIndex Location index
   275         * @param aIndex Location index
   248         * @param aDataToWrite Entry to write
   276         * @param aDataToWrite Entry to write
   249         * @return KErrNone or error value
   277         * @return KErrNone or error value
   250         */
   278         */
   251         TInt UiccPbReqWriteL(
       
   252             TUint8 aTraId,
       
   253             TInt16 aIndex,
       
   254             CPhoneBookStoreEntry& aDataToWrite );
       
   255 
       
   256         /**
       
   257         * Creates and sends ISI message in order to wite an entry to SIM
       
   258         *
       
   259         * @param aTraId Transaction id
       
   260         * @param aIndex Location index
       
   261         * @param aDataToWrite Entry to write
       
   262         * @return KErrNone or error value
       
   263         */
       
   264         TInt UiccPBReqWriteEntry(
   279         TInt UiccPBReqWriteEntry(
   265                 TUint16 aFileId,
   280                 TUint16 aFileId,
   266                 TUint8 aIndex,
   281                 TUint8 aIndex,
   267                 TUint8 aTraId,
   282                 TUint8 aTraId,
   268                 CPhoneBookStoreEntry& aDataToWrite );
   283                 CPhoneBookStoreEntry& aDataToWrite );
   321                 TUint16 aFileId,
   336                 TUint16 aFileId,
   322                 TUint16 aFileIdExt,
   337                 TUint16 aFileIdExt,
   323                 TUint8 aIndex,
   338                 TUint8 aIndex,
   324                 TUint8 aTransId );
   339                 TUint8 aTransId );
   325         
   340         
   326         /**
       
   327         * Creates and sends ISI message in order to read MBI Profile form first record
       
   328         * @param aTraId Transaction id
       
   329         * @param aIndex Location index
       
   330         * @param aDataToWrite Entry to write
       
   331         * @return KErrNone or error value
       
   332         */
       
   333         TInt UiccPbReqReadMBI( TUint8 aIndex, TUint8 aTransId );
       
   334 
       
   335         
   341         
   336         /**
   342         /**
   337         * Creates and sends ISI message in order to write MBI Profile form first record
   343         * Creates and sends ISI message in order to write MBI Profile form first record
   338         * @param aTraId Transaction id
   344         * @param aTraId Transaction id
   339         * @param aIndex Location index
   345         * @param aIndex Location index
   343         TInt UiccPBReqWriteMBIProfile( TUint8 aTransId, TUint8 aIndex, TUint8 aOperationType );
   349         TInt UiccPBReqWriteMBIProfile( TUint8 aTransId, TUint8 aIndex, TUint8 aOperationType );
   344     public:     // Data
   350     public:     // Data
   345         // None
   351         // None
   346 
   352 
   347     protected:  // Data
   353     protected:  // Data
   348         // none
       
   349 
       
   350     private:    // Data
       
   351 
       
   352         // Attribute to hold the write enty while delete -request is on
   354         // Attribute to hold the write enty while delete -request is on
   353         CPhoneBookStoreEntry* iPhoneBookEntry;
   355         CPhoneBookStoreEntry* iPhoneBookEntry;
   354 
   356 
   355         // Keep track on current write -phase
   357         // Keep track on current write -phase
   356         TPBWritePhases iCurrentWritePhase;
   358         TPBWritePhases iCurrentWritePhase;
       
   359 
       
   360         // Attribute Store the information if it is location search
       
   361         TBool iLocationSearch;
   357         
   362         
   358         // Array to Store new EXT records
   363         // Array to Store new EXT records
   359         RArray<TInt> iExtRecordArrayToBeWrite;
   364         RArray<TInt> iExtRecordArrayToBeWrite;
   360         
   365         
   361         // Array to store EXT record nos to be delete
   366         // Array to store EXT record nos to be delete
   362        RArray<TInt> iExtRecordArrayToBeDelete; 
   367        RArray<TInt> iExtRecordArrayToBeDelete; 
   363        
   368        
       
   369        // Store the no of ext records already written
       
   370        TUint8 iExtRecordWritten;
       
   371        
       
   372         
       
   373     private:    // Data
       
   374 
       
   375 
   364        // EXT record number to be read
   376        // EXT record number to be read
   365        TInt iExtRecordNo;
   377        TInt iExtRecordNo;
   366        
       
   367        // Store the no of ext records already written
       
   368        TUint8 iExtRecordWritten;
       
   369        
       
   370        // Attribute Store the information if it is location search
       
   371        TBool iLocationSearch;
       
   372        
   378        
   373        // Attribute to store the information if delete EXT operation going on 
   379        // Attribute to store the information if delete EXT operation going on 
   374        TBool iExtDeleteOperation;
   380        TBool iExtDeleteOperation;
   375        
   381        
   376        // For Free Entry Search
   382        // For Free Entry Search