author | mikaruus <mika.a.ruuskanen@nokia.com> |
Thu, 14 Jan 2010 10:44:58 +0200 | |
changeset 5 | 8ccc39f9d787 |
parent 0 | 63b37f68c1ce |
child 7 | fa67e03b87df |
permissions | -rw-r--r-- |
0 | 1 |
/* |
2 |
* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). |
|
3 |
* All rights reserved. |
|
4 |
* This component and the accompanying materials are made available |
|
5 |
* under the terms of the License "Eclipse Public License v1.0" |
|
6 |
* which accompanies this distribution, and is available |
|
7 |
* at the URL "http://www.eclipse.org/legal/epl-v10.html". |
|
8 |
* |
|
9 |
* Initial Contributors: |
|
10 |
* Nokia Corporation - initial contribution. |
|
5
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
11 |
* |
0 | 12 |
* Contributors: |
5
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
13 |
* |
0 | 14 |
* Description: |
15 |
* |
|
16 |
*/ |
|
17 |
||
18 |
#ifndef CMMPHONEBOOKSTOREMESSHANDLER_H |
|
19 |
#define CMMPHONEBOOKSTOREMESSHANDLER_H |
|
20 |
||
21 |
// INCLUDES |
|
22 |
#include <ctsy/serviceapi/cmmgsmphonestorageutility.h> |
|
23 |
#include "mmmmesshandlerbase.h" |
|
24 |
||
25 |
#ifdef INTERNAL_RD_USIM_PHONEBOOK_GAS_AND_AAS |
|
26 |
#include <ctsy/rmmcustomapi.h> |
|
27 |
#endif // INTERNAL_RD_USIM_PHONEBOOK_GAS_AND_AAS |
|
28 |
||
29 |
#include "cmmphonetsender.h" |
|
30 |
#include "cmmphonetreceiver.h" |
|
31 |
#include "nokiatsy_internal_variation.h" |
|
32 |
||
33 |
//UICC |
|
34 |
#include "muiccoperationbase.h" |
|
35 |
#include "cmmuiccmesshandler.h" |
|
36 |
||
37 |
// CONSTANTS |
|
38 |
//none |
|
39 |
||
40 |
// MACROS |
|
5
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
41 |
|
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
42 |
#define UICC_MAX_PB_NUM 8 |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
43 |
|
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
44 |
// LOCAL CONSTANTS AND MACROS |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
45 |
#define TON_NPI_NO_TEL_NBR 0xFF |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
46 |
#define TON_NPI_INTERNATIONAL 0x91 |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
47 |
#define TON_NPI_UNKNOWN 0x00 |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
48 |
#define TON_INTERNATIONAL 0x10 |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
49 |
|
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
50 |
#define MASK_TON_FROM_TON_NPI_BYTE(a) ((a) & 0x70) |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
51 |
#define MASK_LOWER_NIBBLE_OF_BCD(a) ((a) & 0x0f) /* B0000_1111 */ |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
52 |
|
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
53 |
#define UICC_DTMF_CONTROL_DIGIT_CHAR_wait 'w' |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
54 |
#define UICC_DTMF_CONTROL_DIGIT_CHAR 'p' |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
55 |
#define UICC_WILD_VALUE_CHAR '?' |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
56 |
#define UICC_WILD_VALUE_CHAR_ADN 'w' |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
57 |
#define UICC_EXPANSION_CHAR 'e' |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
58 |
#define UICC_INTERNATIONAL_NUM '+' |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
59 |
|
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
60 |
#define UICC_EF_MAX_NAME_LEN 241 |
0 | 61 |
|
62 |
// DATA TYPES |
|
5
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
63 |
//enum |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
64 |
|
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
65 |
enum TPBConfData |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
66 |
{ |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
67 |
ADNConfData = 0, |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
68 |
FDNConfData, |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
69 |
SDNConfData, |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
70 |
MBDNConfData, |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
71 |
VMBXConfData, |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
72 |
MSISDNConfData, |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
73 |
}; |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
74 |
|
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
75 |
struct TPBEntry |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
76 |
{ |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
77 |
RArray<TInt> PBEntryExtRecord; |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
78 |
TBool iEntryPresent; |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
79 |
TUint8 iEntryIndex; |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
80 |
}; |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
81 |
|
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
82 |
struct TPBEntryList |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
83 |
{ |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
84 |
RArray< TPBEntry* > iEntryList; |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
85 |
}; |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
86 |
|
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
87 |
|
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
88 |
class TPrimitiveInitInfo |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
89 |
{ |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
90 |
public: |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
91 |
TPrimitiveInitInfo(); |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
92 |
|
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
93 |
void GetPBEntryFromUICCData( const TDesC8 &aFileData, TDes8& aNumber, TDes8& aName); |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
94 |
|
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
95 |
|
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
96 |
TUint16 iNoOfRecords; // 2 byte long |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
97 |
TUint16 iAlphaStringlength; // 2 byte long |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
98 |
TUint16 iNumlength; // 2 byte long |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
99 |
TUint16 iExtNoOfRec; |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
100 |
TUint8 iMbiRecLen; |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
101 |
TBool iExtension; |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
102 |
}; |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
103 |
|
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
104 |
|
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
105 |
// Struct |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
106 |
|
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
107 |
|
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
108 |
// look up table for BCD digits |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
109 |
|
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
110 |
const TUint8 LookupArray[16]= |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
111 |
{ |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
112 |
'0','1','2','3','4','5','6','7','8','9', /* 0-9 */ |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
113 |
'*', /* 0xA */ |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
114 |
'#', /* 0xB */ |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
115 |
UICC_DTMF_CONTROL_DIGIT_CHAR, /* 0xC, DTMF control digit * separator */ |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
116 |
UICC_WILD_VALUE_CHAR, /* 0xD, 'Wild' value */ |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
117 |
UICC_EXPANSION_CHAR, /* 0xE, Expansion digit */ |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
118 |
}; |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
119 |
|
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
120 |
const TUint8 LookupArrayAdn[16]= |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
121 |
{ |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
122 |
'0','1','2','3','4','5','6','7','8','9', /* 0-9 */ |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
123 |
'*', /* 0xA */ |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
124 |
'#', /* 0xB */ |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
125 |
UICC_DTMF_CONTROL_DIGIT_CHAR, /* 0xC, DTMF control digit * separator */ |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
126 |
UICC_WILD_VALUE_CHAR_ADN, /* 0xD, 'Wild' value */ |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
127 |
UICC_EXPANSION_CHAR, /* 0xE, Expansion digit */ |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
128 |
}; |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
129 |
|
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
130 |
|
0 | 131 |
|
132 |
// EXTERNAL DATA STRUCTURES |
|
133 |
||
134 |
// FUNCTION PROTOTYPES |
|
135 |
//none |
|
136 |
||
137 |
// FORWARD DECLARATIONS |
|
138 |
class TIsiReceiveC; |
|
139 |
class CMmPhoneBookStoreOperationBase; |
|
140 |
class CMmPhoneBookStoreOperationList; |
|
141 |
class CMmMessageRouter; |
|
142 |
//class CMmUiccMessHandler; |
|
143 |
||
144 |
#ifdef INTERNAL_RD_USIM_PHONEBOOK_GAS_AND_AAS |
|
145 |
class CMmPhonebookAlphaString; |
|
146 |
#endif // INTERNAL_RD_USIM_PHONEBOOK_GAS_AND_AAS |
|
147 |
||
148 |
// CLASS DECLARATION |
|
149 |
/** |
|
150 |
* CMmPhoneBookStoreMessHandler is used to create and send GSM-specific |
|
151 |
* PBStore ISI messages to PhoNet via PhoNetSender. It also receives |
|
152 |
* GSM-specific PBStore ISI messages. |
|
153 |
*/ |
|
154 |
class CMmPhoneBookStoreMessHandler |
|
155 |
: public CBase, |
|
156 |
public MMmMessHandlerBase, |
|
157 |
public MMmMessageReceiver, |
|
158 |
public MUiccOperationBase |
|
159 |
{ |
|
160 |
public: // Constructors and destructor |
|
161 |
||
162 |
/** |
|
163 |
* Two-phased constructor. |
|
164 |
*/ |
|
165 |
static CMmPhoneBookStoreMessHandler* NewL( |
|
166 |
CMmMessageRouter* aMessageRouter, |
|
167 |
CMmUiccMessHandler* aUiccMessHandler); |
|
168 |
||
169 |
/** |
|
170 |
* Destructor. |
|
171 |
*/ |
|
172 |
~CMmPhoneBookStoreMessHandler(); |
|
173 |
||
174 |
/** |
|
175 |
* From CMessHandlerBase. This method is the single entry point for |
|
176 |
* requests coming from the Symbian OS layer to this message handler |
|
177 |
* |
|
178 |
* @param aIpc Identify number of request. |
|
179 |
* @param aDataPackage data |
|
180 |
* @return KErrNone or error code |
|
181 |
*/ |
|
182 |
TInt ExtFuncL( |
|
183 |
TInt aIpc, |
|
184 |
const CMmDataPackage* aDataPackage ); |
|
185 |
||
186 |
||
187 |
/** |
|
188 |
* Handles a received message by calling the specific |
|
189 |
* message handling method. |
|
190 |
* |
|
191 |
* @param Transaction id Reference to the received message transaction ID. |
|
192 |
* @param Status |
|
193 |
* @param aFileData reference to Data received in message |
|
194 |
* @return KErrNone or error code |
|
195 |
*/ |
|
5
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
196 |
TInt ProcessUiccMsg( TInt aTransactionId, TInt aStatus, TUint8 aDetails, const TDesC8 &aFileData ); |
0 | 197 |
|
5
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
198 |
/** |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
199 |
* Creates entry point to correct operation. |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
200 |
* |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
201 |
* @param aDataPackage Packaged data |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
202 |
* @param aIpc Identify number of request. |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
203 |
* @return Pointer to operation. |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
204 |
*/ |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
205 |
CMmPhoneBookStoreOperationBase* CreateNewOperationL( |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
206 |
const CMmDataPackage* aDataPackage, |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
207 |
TInt aIpc ); |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
208 |
|
0 | 209 |
/** |
5
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
210 |
* Store Phonebook Entry from UICC -message |
0 | 211 |
* |
5
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
212 |
* @param aName Name |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
213 |
* @param aNumber Number |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
214 |
* @param aEntry Received UICC data |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
215 |
* @param aFileId File ID |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
216 |
* @param const TInt aIndexToRead Index of file |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
217 |
* @param const TBool aMailboxIdExist Is there a mailbox id |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
218 |
* @return none |
0 | 219 |
*/ |
5
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
220 |
static void StorePhonebookEntryL( TDes8& aName, |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
221 |
TDes8& aNumber, |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
222 |
CPhoneBookStoreEntry& aEntry, |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
223 |
const TUint16 aFileId, |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
224 |
const TInt aIndexToRead, |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
225 |
const TBool aMailboxIdExist ); |
0 | 226 |
|
227 |
/** |
|
5
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
228 |
* Handle number to convert in Ascii Format |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
229 |
* @param const TDesC8& aSource: Message to be converted in Ascii |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
230 |
* @param TDes16 aTarget : After conversion data to be staored in |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
231 |
*/ |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
232 |
static void ConvertToUcs2FromBCD( const TDesC8 &aSource,TDes16 &aTarget, const TUint16 aFileData ); |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
233 |
|
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
234 |
/** |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
235 |
* Handle number to convert in BCD format from UCS2 Format |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
236 |
* @param const TDesC16& aSource: Message to be converted in BCD |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
237 |
* @param TDes8 aTarget : After conversion data to be stored in target buffer |
0 | 238 |
*/ |
5
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
239 |
static TInt ConvertToBCDFromUCS2( TDes16 &aSource, TDes8 &aTarget, TUint16 aFileId ); |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
240 |
|
0 | 241 |
/** |
5
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
242 |
* Handle number to convert in BCD format from UCS2 Format |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
243 |
* @param TInt16 aUCSCharacter: Character to be converted |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
244 |
* @param const TUint16 aFileId :File id |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
245 |
* @return The BCD number |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
246 |
*/ |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
247 |
static TInt GetBCDCodeforUCS( TUint16 aUCSCharacter, TUint16 aFileId ); |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
248 |
|
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
249 |
/** |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
250 |
* Sets PhoneBook Entry to PhoneBook Entry List. |
0 | 251 |
* |
5
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
252 |
* @param aStoreEntry. |
0 | 253 |
* @return None |
254 |
*/ |
|
5
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
255 |
void StoreEntryToPhoneBookList( TPBEntry* aStoreEntry, TUint8 aPBIndex ); |
0 | 256 |
|
257 |
/** |
|
5
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
258 |
* Reset phonebook entry in phoneBook entry list. |
0 | 259 |
* |
5
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
260 |
* @param aPbIndex Phonebook index |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
261 |
* @param aPbIndex Entry index |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
262 |
* @return None |
0 | 263 |
*/ |
5
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
264 |
void ResetEntryInPhoneBookList( TUint8 aPbIndex, TInt aEntryIndex ); |
0 | 265 |
|
266 |
/** |
|
5
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
267 |
* Sets PhoneBook Entry to PhoneBook Entry List. |
0 | 268 |
* |
5
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
269 |
* @param aStoreEntry. |
0 | 270 |
* @return None |
271 |
*/ |
|
5
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
272 |
TBool IndexCheckInPBList( TUint8 aIndex, TUint8 aPBIndex, TPBEntry& aEntry ); |
0 | 273 |
|
274 |
/** |
|
5
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
275 |
* Find Index for Present Entry |
0 | 276 |
* |
5
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
277 |
* @param aIndex |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
278 |
* @param aPBIndex |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
279 |
* @return Index for Entry |
0 | 280 |
*/ |
5
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
281 |
TInt GetIndexForPresentEntry( TUint8 aIndex, TUint8 aPBIndex ); |
0 | 282 |
|
283 |
/** |
|
5
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
284 |
* Finds free entry in the List. |
0 | 285 |
* |
5
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
286 |
* @param TUint8 Phonebook index for Phonebook confoguration list |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
287 |
* @return TInt Index number for free entry |
0 | 288 |
*/ |
5
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
289 |
TInt EmptyEntryCheckInPBList( TUint8 aPBIndex ); |
0 | 290 |
|
291 |
/** |
|
292 |
* Gets MBDN phonebook flag. |
|
293 |
* |
|
294 |
* @param None |
|
295 |
* @return Flag if MBDN phonebook is ready or not. |
|
296 |
*/ |
|
297 |
TBool MBDNPhonebook(); |
|
298 |
||
299 |
/** |
|
300 |
* Sets MBDN phonebook flag. |
|
301 |
* |
|
302 |
* @param aBoolean Flag of MBDN phonebook. |
|
303 |
* @return None |
|
304 |
*/ |
|
305 |
void SetMBDNPhonebook( TBool aBoolean ); |
|
306 |
||
307 |
/** |
|
308 |
* Sets number of FDN info. |
|
309 |
* |
|
310 |
* @param aNumber Number of FDN info. |
|
311 |
* @return None |
|
312 |
*/ |
|
313 |
void SetNumberOfFdnInfoResps( TUint8 aNumber ); |
|
314 |
||
315 |
/** |
|
5
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
316 |
* Remove the main Entry Information from Stored list |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
317 |
* |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
318 |
* @param aIndex - Index to be removed. |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
319 |
* @return None |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
320 |
*/ |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
321 |
void UpdateEntryFromList( TPBEntry* aEntry, TUint8 aIndex , TUint8 aPBIndex); |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
322 |
|
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
323 |
/** |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
324 |
* Remove the EXT records Information from Stored list |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
325 |
* |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
326 |
* @param aIndex - Index of Ext record to be removed. |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
327 |
* @return None |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
328 |
*/ |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
329 |
void RemoveExtEntryFromList( TUint8 aIndex, TUint8 aPBIndex); |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
330 |
|
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
331 |
/** |
0 | 332 |
* Gets pointer to CMmMessageRouter class. |
333 |
* |
|
334 |
* @param None |
|
335 |
* @return Pointer to CMmMessageRouter object. |
|
336 |
*/ |
|
337 |
CMmMessageRouter* MessageRouter(); |
|
338 |
||
339 |
||
340 |
/** |
|
341 |
* Gets pointer to CMmUiccMessHandler class |
|
342 |
* |
|
343 |
* @param None |
|
344 |
* @return Pointer to CMmUiccMessHandler object. |
|
345 |
*/ |
|
346 |
CMmUiccMessHandler* UiccMessHandler(); |
|
347 |
||
348 |
/** |
|
349 |
* Gets pointer to CMmPhoNetSender class. |
|
350 |
* |
|
351 |
* @param None |
|
352 |
* @return Pointer to CMmPhoNetSender object. |
|
353 |
*/ |
|
354 |
CMmPhoNetSender* PhoNetSender(); |
|
355 |
||
356 |
protected: |
|
357 |
// None |
|
358 |
||
359 |
private: |
|
360 |
||
361 |
/** |
|
362 |
* By default Symbian OS constructor is private. |
|
363 |
*/ |
|
364 |
CMmPhoneBookStoreMessHandler(); |
|
365 |
||
366 |
/** |
|
367 |
* Class attributes are created in ConstructL. |
|
368 |
*/ |
|
369 |
void ConstructL( |
|
370 |
CMmPhoneBookStoreMessHandler* mmPhoneBookStoreMessHandler, |
|
371 |
CMmUiccMessHandler* aUiccMessHandler); |
|
372 |
||
373 |
/** |
|
374 |
* Gets ISI message from PhoNetReceiver related to SIM_IND |
|
375 |
* |
|
376 |
* @param TIsiReceiveC& aIsiMessage: Received ISI message |
|
377 |
* @return None |
|
378 |
*/ |
|
379 |
void SimInd( const TIsiReceiveC& aIsiMessage ); |
|
380 |
||
381 |
public: // Data |
|
5
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
382 |
// table for All phone books Configuration Data |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
383 |
TPrimitiveInitInfo iPBStoreConf[UICC_MAX_PB_NUM]; |
0 | 384 |
|
385 |
protected: //Data |
|
386 |
// None |
|
387 |
||
388 |
private: // Data |
|
389 |
||
390 |
// Pointer to the Phonet sender |
|
391 |
CMmPhoNetSender* iPhoNetSender; |
|
392 |
||
393 |
//Pointer to the Message router |
|
394 |
CMmMessageRouter* iMessageRouter; |
|
395 |
||
396 |
// Pointer to the UICC Messhandler |
|
397 |
CMmUiccMessHandler* iMmUiccMessHandler; |
|
398 |
||
399 |
// Array for storing objects of operations. |
|
400 |
CMmPhoneBookStoreOperationList* iOperationlist; |
|
401 |
||
402 |
// Number of FDN info responses |
|
403 |
TUint8 iNumberOfFdnInfoResps; |
|
404 |
||
405 |
// to store CardType |
|
406 |
TUint8 iCardType; |
|
407 |
||
5
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
408 |
// Array to Store PhoneBook Entry Status and EXT record no list |
8ccc39f9d787
New release based on our 2010wk02 release
mikaruus <mika.a.ruuskanen@nokia.com>
parents:
0
diff
changeset
|
409 |
TFixedArray< TPBEntryList,UICC_MAX_PB_NUM > iPBEntryList; |
0 | 410 |
}; |
411 |
||
412 |
#endif // CMMPHONEBOOKSTOREMESSHANDLER_H |
|
413 |
||
414 |
// End of File |