1 // Copyright (c) 2001-2010 Nokia Corporation and/or its subsidiary(-ies). |
1 // Copyright (c) 2001-2009 Nokia Corporation and/or its subsidiary(-ies). |
2 // All rights reserved. |
2 // All rights reserved. |
3 // This component and the accompanying materials are made available |
3 // This component and the accompanying materials are made available |
4 // under the terms of "Eclipse Public License v1.0" |
4 // under the terms of "Eclipse Public License v1.0" |
5 // which accompanies this distribution, and is available |
5 // which accompanies this distribution, and is available |
6 // at the URL "http://www.eclipse.org/legal/epl-v10.html". |
6 // at the URL "http://www.eclipse.org/legal/epl-v10.html". |
17 |
17 |
18 /** |
18 /** |
19 @file |
19 @file |
20 */ |
20 */ |
21 |
21 |
22 |
|
23 |
|
24 #include "OstTraceDefinitions.h" |
|
25 #ifdef OST_TRACE_COMPILER_IN_USE |
|
26 #include "CSimPhBkUsimStoreTraces.h" |
|
27 #endif |
|
28 |
|
29 #include "CSimPhBkUsimStore.h" |
22 #include "CSimPhBkUsimStore.h" |
30 #include "CSimPhone.h" |
23 #include "CSimPhone.h" |
|
24 #include "Simlog.h" |
31 #include <testconfigfileparser.h> |
25 #include <testconfigfileparser.h> |
32 |
26 |
33 const TUint16 KNpiTonInternational=145; // < The Number Plan Identifier and Type of Number for an international telephone number. |
27 const TUint16 KNpiTonInternational=145; // < The Number Plan Identifier and Type of Number for an international telephone number. |
34 const TUint16 KNpiTonNational=129; // < The Number Plan Identifier and Type of Number for a national telephone number. |
28 const TUint16 KNpiTonNational=129; // < The Number Plan Identifier and Type of Number for a national telephone number. |
35 const TInt KMaxGroups = 10; // < The maximum allowed number of groups associated with a phonebook entry |
29 const TInt KMaxGroups = 10; // < The maximum allowed number of groups associated with a phonebook entry |
93 * @param aMaxEmail The maximum number of email addresses associated with an entry. |
87 * @param aMaxEmail The maximum number of email addresses associated with an entry. |
94 * @param aMaxAdditionalTelNumLen The maximum length of the an additional telephone number. |
88 * @param aMaxAdditionalTelNumLen The maximum length of the an additional telephone number. |
95 * @param aMaxAdditionalTextLen The maximum length of the alpha tag in an additional telephone number. |
89 * @param aMaxAdditionalTextLen The maximum length of the alpha tag in an additional telephone number. |
96 */ |
90 */ |
97 { |
91 { |
98 OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_CONSTRUCTL_1, "Starting to parse Phonebook store additional config parameters..."); |
92 LOGPHBK1("Starting to parse Phonebook store additional config parameters..."); |
99 __ASSERT_ALWAYS(aMaxNumLen<=KPhBkMaxTelNumSize,SimPanic(EPhonebookNameOrNumberTooLarge)); |
93 __ASSERT_ALWAYS(aMaxNumLen<=KPhBkMaxTelNumSize,SimPanic(EPhonebookNameOrNumberTooLarge)); |
100 __ASSERT_ALWAYS(aMaxTextLen<=KPhBkMaxAlphaTagSize,SimPanic(EPhonebookNameOrNumberTooLarge)); |
94 __ASSERT_ALWAYS(aMaxTextLen<=KPhBkMaxAlphaTagSize,SimPanic(EPhonebookNameOrNumberTooLarge)); |
101 |
95 |
102 iPhBkMaxNumSlots=aMaxNumSlots; |
96 iPhBkMaxNumSlots=aMaxNumSlots; |
103 iPhBkMaxTelNumLen=aMaxNumLen; |
97 iPhBkMaxTelNumLen=aMaxNumLen; |
139 TInt ipc, cnt, event; |
133 TInt ipc, cnt, event; |
140 |
134 |
141 ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,0,ipc); |
135 ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,0,ipc); |
142 if(ret!=KErrNone) |
136 if(ret!=KErrNone) |
143 { |
137 { |
144 OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_CONSTRUCTL_2, "WARNING - CONFIGURATION FILE PARSING - Reading element IPC returned %d (element no. %d) from tag %s.",ret,0,KTriggerEventIPC); |
138 LOGPARSERR("ipc",ret,0,&KTriggerEventIPC); |
145 } |
139 } |
146 else |
140 else |
147 iTriggerEventIPC.iIPC=ipc; |
141 iTriggerEventIPC.iIPC=ipc; |
148 |
142 |
149 ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,1,cnt); |
143 ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,1,cnt); |
150 if(ret!=KErrNone) |
144 if(ret!=KErrNone) |
151 { |
145 { |
152 OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_CONSTRUCTL_3, "WARNING - CONFIGURATION FILE PARSING - Reading element CNT returned %d (element no. %d) from tag %s.",ret,1,KTriggerEventIPC); |
146 LOGPARSERR("cnt",ret,1,&KTriggerEventIPC); |
153 } |
147 } |
154 else |
148 else |
155 iTriggerEventIPC.iIPCCnt=cnt; |
149 iTriggerEventIPC.iIPCCnt=cnt; |
156 |
150 |
157 ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,2,event); |
151 ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,2,event); |
158 if(ret!=KErrNone) |
152 if(ret!=KErrNone) |
159 { |
153 { |
160 OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_CONSTRUCTL_4, "WARNING - CONFIGURATION FILE PARSING - Reading element EVENT returned %d (element no. %d) from tag %s.",ret,2,KTriggerEventIPC); |
154 LOGPARSERR("event",ret,2,&KTriggerEventIPC); |
161 } |
155 } |
162 else |
156 else |
163 iTriggerEventIPC.iEvent=RMobilePhone::TMobilePhoneSecurityEvent(event); |
157 iTriggerEventIPC.iEvent=RMobilePhone::TMobilePhoneSecurityEvent(event); |
164 |
158 |
165 } |
159 } |
183 |
177 |
184 ret0=CTestConfig::GetElement(item0->Value(),KStdDelimiter,0,phonebookStore); |
178 ret0=CTestConfig::GetElement(item0->Value(),KStdDelimiter,0,phonebookStore); |
185 if(ret0!=KErrNone) |
179 if(ret0!=KErrNone) |
186 { |
180 { |
187 iPhBkStoreCaps=KDefaultPhBkPhoneStoreCaps; |
181 iPhBkStoreCaps=KDefaultPhBkPhoneStoreCaps; |
188 OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_CONSTRUCTL_5, "WARNING - CONFIGURATION FILE PARSING - Reading element CAPS:PHONEBOOKSTORE returned %d (element no. %d) from tag %s.",ret,0,KPhBkPhoneUSimStoreCaps); |
182 LOGPARSERR("Caps:PhonebookStore",ret,0,&KPhBkPhoneUSimStoreCaps); |
189 } |
183 } |
190 |
184 |
191 if(phonebookStore.MatchF(iPhBkStore)!=0)// Not this PhBkStore type |
185 if(phonebookStore.MatchF(iPhBkStore)!=0)// Not this PhBkStore type |
192 continue; |
186 continue; |
193 |
187 |
194 ret0=CTestConfig::GetElement(item0->Value(),KStdDelimiter,1,phonebookName); |
188 ret0=CTestConfig::GetElement(item0->Value(),KStdDelimiter,1,phonebookName); |
195 if(ret0!=KErrNone) |
189 if(ret0!=KErrNone) |
196 { |
190 { |
197 iPhBkStoreCaps=KDefaultPhBkPhoneStoreCaps; |
191 iPhBkStoreCaps=KDefaultPhBkPhoneStoreCaps; |
198 OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_CONSTRUCTL_6, "WARNING - CONFIGURATION FILE PARSING - Reading element PHONEBOOKNAME returned %d (element no. %d) from tag %s.",ret,1,KPhBkPhoneUSimStoreCaps); |
192 LOGPARSERR("phonebookName",ret,1,&KPhBkPhoneUSimStoreCaps); |
199 } |
193 } |
200 |
194 |
201 if(phonebookName.MatchF(iPhBkStoreName)!=0)// Not this PhBkStoreName type |
195 if(phonebookName.MatchF(iPhBkStoreName)!=0)// Not this PhBkStoreName type |
202 continue; |
196 continue; |
203 |
197 |
204 ret0=CTestConfig::GetElement(item0->Value(),KStdDelimiter,2,value0); |
198 ret0=CTestConfig::GetElement(item0->Value(),KStdDelimiter,2,value0); |
205 if(ret0!=KErrNone) |
199 if(ret0!=KErrNone) |
206 { |
200 { |
207 iPhBkStoreCaps=KDefaultPhBkPhoneStoreCaps; |
201 iPhBkStoreCaps=KDefaultPhBkPhoneStoreCaps; |
208 OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_CONSTRUCTL_7, "WARNING - CONFIGURATION FILE PARSING - Reading element CAPS returned %d (element no. %d) from tag %s.",ret,2,KPhBkPhoneUSimStoreCaps); |
202 LOGPARSERR("caps",ret,2,&KPhBkPhoneUSimStoreCaps); |
209 } |
203 } |
210 else |
204 else |
211 { |
205 { |
212 TUint32 intValue; |
206 TUint32 intValue; |
213 TInt ret = AsciiToNum(value0, intValue); |
207 TInt ret = AsciiToNum(value0, intValue); |
235 * |
229 * |
236 * The store entries comply to the following format: |
230 * The store entries comply to the following format: |
237 * "PhBkStoreEntry = <store name>, <slot number>, <telephone number>, <alphatag>" |
231 * "PhBkStoreEntry = <store name>, <slot number>, <telephone number>, <alphatag>" |
238 */ |
232 */ |
239 { |
233 { |
240 OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_POPULATESTOREFROMCONFIGFILEL_1, "Starting to read Phonebook store entries..."); |
234 LOGPHBK1("Starting to read Phonebook store entries..."); |
241 iPhBkIndividualPause=CfgFile()->ItemValue(KPhBkStoreIndividualReqPause,KDefaultPhBkStoreIndividualReqPause); |
235 iPhBkIndividualPause=CfgFile()->ItemValue(KPhBkStoreIndividualReqPause,KDefaultPhBkStoreIndividualReqPause); |
242 iPhBkBatchPause=CfgFile()->ItemValue(KPhBkStoreBatchReqPause,KDefaultPhBkStoreBatchReqPause); |
236 iPhBkBatchPause=CfgFile()->ItemValue(KPhBkStoreBatchReqPause,KDefaultPhBkStoreBatchReqPause); |
243 |
237 |
244 const CTestConfigItem* item=NULL; |
238 const CTestConfigItem* item=NULL; |
245 TInt ret=KErrNone; |
239 TInt ret=KErrNone; |
260 TInt index; |
254 TInt index; |
261 TUint8 npiTon; |
255 TUint8 npiTon; |
262 ret=GetPhBkUSimEntry(item,parseIndex,phonebookStore,phonebookName,aid,index,telNum,alphaTag,npiTon,alphaTag2); |
256 ret=GetPhBkUSimEntry(item,parseIndex,phonebookStore,phonebookName,aid,index,telNum,alphaTag,npiTon,alphaTag2); |
263 if(ret!=KErrNone) |
257 if(ret!=KErrNone) |
264 { |
258 { |
265 OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_POPULATESTOREFROMCONFIGFILEL_2, "WARNING - CONFIGURATION FILE PARSING - Reading element PHONEBOOK ENTRY returned %d (element no. %d) from tag %s.",ret,index,KPhBkUSimStoreEntry); |
259 LOGPARSERR("Phonebook Entry",ret,index,&KPhBkUSimStoreEntry); |
266 continue; |
260 continue; |
267 } |
261 } |
268 |
262 |
269 if(phonebookStore.MatchF(iPhBkStore)!=0)// Not this PhBkStore type |
263 if(phonebookStore.MatchF(iPhBkStore)!=0)// Not this PhBkStore type |
270 continue; |
264 continue; |
304 iPhBkUSimStoreEntries[index].iAlphaTag2.Copy(alphaTag2); |
298 iPhBkUSimStoreEntries[index].iAlphaTag2.Copy(alphaTag2); |
305 |
299 |
306 ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,parseIndex++,additional); |
300 ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,parseIndex++,additional); |
307 if(ret!=KErrNone) |
301 if(ret!=KErrNone) |
308 { |
302 { |
309 OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_POPULATESTOREFROMCONFIGFILEL_3, "WARNING - CONFIGURATION FILE PARSING - Reading element ADDITIONAL returned %d (element no. %d) from tag %s.",ret,parseIndex,KPhBkUSimStoreEntry); |
303 LOGPARSERR("additional",ret,parseIndex,&KPhBkUSimStoreEntry); |
310 } |
304 } |
311 else |
305 else |
312 { |
306 { |
313 TPtrC8 myName,myNum; |
307 TPtrC8 myName,myNum; |
314 TUint8 myTon; |
308 TUint8 myTon; |
331 } |
325 } |
332 |
326 |
333 ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,parseIndex++,emails); |
327 ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,parseIndex++,emails); |
334 if(ret!=KErrNone) |
328 if(ret!=KErrNone) |
335 { |
329 { |
336 OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_POPULATESTOREFROMCONFIGFILEL_4, "WARNING - CONFIGURATION FILE PARSING - Reading element EMAILS returned %d (element no. %d) from tag %s.",ret,parseIndex,KPhBkUSimStoreEntry); |
330 LOGPARSERR("emails",ret,parseIndex,&KPhBkUSimStoreEntry); |
337 } |
331 } |
338 else |
332 else |
339 { |
333 { |
340 TPtrC8 myemail; |
334 TPtrC8 myemail; |
341 TInt myindex=0; |
335 TInt myindex=0; |
352 } |
346 } |
353 |
347 |
354 ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,parseIndex++,groups); |
348 ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,parseIndex++,groups); |
355 if(ret!=KErrNone) |
349 if(ret!=KErrNone) |
356 { |
350 { |
357 OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_POPULATESTOREFROMCONFIGFILEL_5, "WARNING - CONFIGURATION FILE PARSING - Reading element GROUPS returned %d (element no. %d) from tag %s.",ret,parseIndex,KPhBkUSimStoreEntry); |
351 LOGPARSERR("groups",ret,parseIndex,&KPhBkUSimStoreEntry); |
358 } |
352 } |
359 else |
353 else |
360 { |
354 { |
361 |
355 |
362 TPtrC8 mygroup; |
356 TPtrC8 mygroup; |
376 |
370 |
377 TBool hidden; |
371 TBool hidden; |
378 ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,parseIndex++,hidden); |
372 ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,parseIndex++,hidden); |
379 if(ret!=KErrNone) |
373 if(ret!=KErrNone) |
380 { |
374 { |
381 OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_POPULATESTOREFROMCONFIGFILEL_6, "WARNING - CONFIGURATION FILE PARSING - Reading element EMAILS returned %d (element no. %d) from tag %s.",ret,parseIndex,KPhBkUSimStoreEntry); |
375 LOGPARSERR("emails",ret,parseIndex,&KPhBkUSimStoreEntry); |
382 } |
376 } |
383 else |
377 else |
384 iPhBkUSimStoreEntries[index].iHiddenEntry=hidden; |
378 iPhBkUSimStoreEntries[index].iHiddenEntry=hidden; |
385 |
379 |
386 } |
380 } |
398 TPtrC8 phonebookName, phonebookStore; |
392 TPtrC8 phonebookName, phonebookStore; |
399 |
393 |
400 ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,0,count); |
394 ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,0,count); |
401 if(ret!=KErrNone) |
395 if(ret!=KErrNone) |
402 { |
396 { |
403 OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_POPULATESTOREFROMCONFIGFILEL_7, "WARNING - CONFIGURATION FILE PARSING - Reading element COUNT returned %d (element no. %d) from tag %s.",ret,0,KPhBkError); |
397 LOGPARSERR("count",ret,0,&KPhBkError); |
404 continue; |
398 continue; |
405 } |
399 } |
406 ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,1,error); |
400 ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,1,error); |
407 if(ret!=KErrNone) |
401 if(ret!=KErrNone) |
408 { |
402 { |
409 OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_POPULATESTOREFROMCONFIGFILEL_8, "WARNING - CONFIGURATION FILE PARSING - Reading element ERROR returned %d (element no. %d) from tag %s.",ret,1,KPhBkError); |
403 LOGPARSERR("error",ret,1,&KPhBkError); |
410 continue; |
404 continue; |
411 } |
405 } |
412 |
406 |
413 ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,2,phonebookName); |
407 ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,2,phonebookName); |
414 if(ret!=KErrNone) |
408 if(ret!=KErrNone) |
415 { |
409 { |
416 OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_POPULATESTOREFROMCONFIGFILEL_9, "WARNING - CONFIGURATION FILE PARSING - Reading element PHONEBOOKNAME returned %d (element no. %d) from tag %s.",ret,2,KPhBkError); |
410 LOGPARSERR("phonebookName",ret,2,&KPhBkError); |
417 continue; |
411 continue; |
418 } |
412 } |
419 ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,3,phonebookStore); |
413 ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,3,phonebookStore); |
420 if(ret!=KErrNone) |
414 if(ret!=KErrNone) |
421 { |
415 { |
422 OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_POPULATESTOREFROMCONFIGFILEL_10, "WARNING - CONFIGURATION FILE PARSING - Reading element PHONEBOOKSTORE returned %d (element no. %d) from tag %s.",ret,3,KPhBkError); |
416 LOGPARSERR("phonebookStore",ret,3,&KPhBkError); |
423 //global phonebook error |
417 //global phonebook error |
424 continue; |
418 continue; |
425 } |
419 } |
426 |
420 |
427 if(phonebookName.MatchF(iPhBkStoreName)!=0)// Not this phonebook |
421 if(phonebookName.MatchF(iPhBkStoreName)!=0)// Not this phonebook |
434 entry.iError=error; |
428 entry.iError=error; |
435 TRAP_IGNORE(iPhBkError->AppendL(entry)); |
429 TRAP_IGNORE(iPhBkError->AppendL(entry)); |
436 } |
430 } |
437 PopulateOOBWrite(); |
431 PopulateOOBWrite(); |
438 PopulateOOBDelete(); |
432 PopulateOOBDelete(); |
439 OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_POPULATESTOREFROMCONFIGFILEL_11, "...Finished reading Phonebook store entries..."); |
433 LOGPHBK1("...Finished reading Phonebook store entries..."); |
440 |
434 |
441 if(iPhBkOOBWriteDuration!=-1) |
435 if(iPhBkOOBWriteDuration!=-1) |
442 iOOBWriteTimer->Start(iPhBkOOBWriteDuration,this,ETimerIdPhBkUSimStorOOBWrite); |
436 iOOBWriteTimer->Start(iPhBkOOBWriteDuration,this,ETimerIdPhBkUSimStorOOBWrite); |
443 if(iPhBkOOBDeleteDuration!=-1) |
437 if(iPhBkOOBDeleteDuration!=-1) |
444 iOOBDeleteTimer->Start(iPhBkOOBDeleteDuration,this,ETimerIdPhBkUSimStorOOBDelete); |
438 iOOBDeleteTimer->Start(iPhBkOOBDeleteDuration,this,ETimerIdPhBkUSimStorOOBDelete); |
460 |
454 |
461 TInt count; |
455 TInt count; |
462 TInt ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,parseIndex++,count); |
456 TInt ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,parseIndex++,count); |
463 if(ret!=KErrNone) |
457 if(ret!=KErrNone) |
464 { |
458 { |
465 OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_POPULATEOOBWRITE_1, "WARNING - CONFIGURATION FILE PARSING - Reading element COUNT returned %d (element no. %d) from tag %s.",ret,parseIndex,KOOBPhBkUSimWrite); |
459 LOGPARSERR("count",ret,parseIndex,&KOOBPhBkUSimWrite); |
466 return; |
460 return; |
467 } |
461 } |
468 |
462 |
469 TPtrC8 phonebookStore,aid, phonebookName,alphaTag,telNum,alphaTag2,emails, groups, additional; |
463 TPtrC8 phonebookStore,aid, phonebookName,alphaTag,telNum,alphaTag2,emails, groups, additional; |
470 TInt index; |
464 TInt index; |
471 TUint8 npiTon; |
465 TUint8 npiTon; |
472 ret=GetPhBkUSimEntry(item,parseIndex,phonebookStore,phonebookName,aid,index,telNum,alphaTag,npiTon,alphaTag2); |
466 ret=GetPhBkUSimEntry(item,parseIndex,phonebookStore,phonebookName,aid,index,telNum,alphaTag,npiTon,alphaTag2); |
473 if(ret!=KErrNone) |
467 if(ret!=KErrNone) |
474 { |
468 { |
475 OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_POPULATEOOBWRITE_2, "WARNING - CONFIGURATION FILE PARSING - Reading element PHONEBOOK ENTRY returned %d (element no. %d) from tag %s.",ret,parseIndex,KOOBPhBkUSimWrite); |
469 LOGPARSERR("Phonebook Entry",ret,parseIndex,&KOOBPhBkUSimWrite); |
476 return; |
470 return; |
477 } |
471 } |
478 |
472 |
479 if(phonebookStore.MatchF(iPhBkStore)!=0)// Not this PhBkStore type |
473 if(phonebookStore.MatchF(iPhBkStore)!=0)// Not this PhBkStore type |
480 return; |
474 return; |
489 iPhBkOOBWrite.iAlphaTag2.Copy(alphaTag2); |
483 iPhBkOOBWrite.iAlphaTag2.Copy(alphaTag2); |
490 |
484 |
491 ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,parseIndex++,additional); |
485 ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,parseIndex++,additional); |
492 if(ret!=KErrNone) |
486 if(ret!=KErrNone) |
493 { |
487 { |
494 OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_POPULATEOOBWRITE_3, "WARNING - CONFIGURATION FILE PARSING - Reading element ADDITIONAL returned %d (element no. %d) from tag %s.",ret,parseIndex,KOOBPhBkUSimWrite); |
488 LOGPARSERR("additional",ret,parseIndex,&KOOBPhBkUSimWrite); |
495 } |
489 } |
496 else |
490 else |
497 { |
491 { |
498 TPtrC8 myName,myNum; |
492 TPtrC8 myName,myNum; |
499 TUint8 myTon; |
493 TUint8 myTon; |
516 } |
510 } |
517 |
511 |
518 ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,parseIndex++,groups); |
512 ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,parseIndex++,groups); |
519 if(ret!=KErrNone) |
513 if(ret!=KErrNone) |
520 { |
514 { |
521 OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_POPULATEOOBWRITE_4, "WARNING - CONFIGURATION FILE PARSING - Reading element GROUPS returned %d (element no. %d) from tag %s.",ret,parseIndex,KOOBPhBkUSimWrite); |
515 LOGPARSERR("groups",ret,parseIndex,&KOOBPhBkUSimWrite); |
522 } |
516 } |
523 else |
517 else |
524 { |
518 { |
525 TPtrC8 mygroup; |
519 TPtrC8 mygroup; |
526 TInt myindex=0; |
520 TInt myindex=0; |
539 } |
533 } |
540 |
534 |
541 ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,parseIndex++,emails); |
535 ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,parseIndex++,emails); |
542 if(ret!=KErrNone) |
536 if(ret!=KErrNone) |
543 { |
537 { |
544 OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_POPULATEOOBWRITE_5, "WARNING - CONFIGURATION FILE PARSING - Reading element EMAILS returned %d (element no. %d) from tag %s.",ret,parseIndex,KOOBPhBkUSimWrite); |
538 LOGPARSERR("emails",ret,parseIndex,&KOOBPhBkUSimWrite); |
545 } |
539 } |
546 else |
540 else |
547 { |
541 { |
548 TPtrC8 myemail; |
542 TPtrC8 myemail; |
549 TInt myindex=0; |
543 TInt myindex=0; |
579 |
573 |
580 TInt count; |
574 TInt count; |
581 TInt ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,0,count); |
575 TInt ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,0,count); |
582 if(ret!=KErrNone) |
576 if(ret!=KErrNone) |
583 { |
577 { |
584 OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_POPULATEOOBDELETE_1, "WARNING - CONFIGURATION FILE PARSING - Reading element COUNT returned %d (element no. %d) from tag %s.",ret,0,KOOBPhBkUSimDelete); |
578 LOGPARSERR("count",ret,0,&KOOBPhBkUSimDelete); |
585 return; |
579 return; |
586 } |
580 } |
587 |
581 |
588 TPtrC8 phonebookName, phonebookStore; |
582 TPtrC8 phonebookName, phonebookStore; |
589 |
583 |
590 ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,1,phonebookStore); |
584 ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,1,phonebookStore); |
591 if(ret!=KErrNone) |
585 if(ret!=KErrNone) |
592 { |
586 { |
593 OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_POPULATEOOBDELETE_2, "WARNING - CONFIGURATION FILE PARSING - Reading element PHONEBOOKSTORE returned %d (element no. %d) from tag %s.",ret,1,KOOBPhBkUSimDelete); |
587 LOGPARSERR("phonebookStore",ret,1,&KOOBPhBkUSimDelete); |
594 return; |
588 return; |
595 } |
589 } |
596 |
590 |
597 ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,2,phonebookName); |
591 ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,2,phonebookName); |
598 if(ret!=KErrNone) |
592 if(ret!=KErrNone) |
599 { |
593 { |
600 OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_POPULATEOOBDELETE_3, "WARNING - CONFIGURATION FILE PARSING - Reading element PHONEBOOKNAME returned %d (element no. %d) from tag %s.",ret,2,KOOBPhBkUSimDelete); |
594 LOGPARSERR("phonebookName",ret,2,&KOOBPhBkUSimDelete); |
601 return; |
595 return; |
602 } |
596 } |
603 |
597 |
604 if(phonebookStore.MatchF(iPhBkStore)!=0) |
598 if(phonebookStore.MatchF(iPhBkStore)!=0) |
605 return; // Not this store |
599 return; // Not this store |
608 |
602 |
609 TInt index; |
603 TInt index; |
610 ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,3,index); |
604 ret=CTestConfig::GetElement(item->Value(),KStdDelimiter,3,index); |
611 if(ret!=KErrNone) |
605 if(ret!=KErrNone) |
612 { |
606 { |
613 OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_POPULATEOOBDELETE_4, "WARNING - CONFIGURATION FILE PARSING - Reading element INDEX returned %d (element no. %d) from tag %s.",ret,3,KOOBPhBkUSimDelete); |
607 LOGPARSERR("index",ret,3,&KOOBPhBkUSimDelete); |
614 return; |
608 return; |
615 } |
609 } |
616 |
610 |
617 iPhBkOOBDeleteDuration=count; |
611 iPhBkOOBDeleteDuration=count; |
618 iPhBkOOBDeleteIndex=index; |
612 iPhBkOOBDeleteIndex=index; |
1548 break; |
1542 break; |
1549 |
1543 |
1550 case RMobilePhoneBookStore::ETagPBText: |
1544 case RMobilePhoneBookStore::ETagPBText: |
1551 ret=iPhBkRwBuffer->GetValue(alphaTag); |
1545 ret=iPhBkRwBuffer->GetValue(alphaTag); |
1552 |
1546 |
1553 OstTraceDef1(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_WRITE_1, "alphaTag (ETagPBText) Length = (%d)",alphaTag.Length()); |
1547 LOGPHBK2("alphaTag (ETagPBText) Length = (%d)",alphaTag.Length()); |
1554 OstTraceDef1(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_WRITE_2, "Phonebook Max Text Length = (%d)",iPhBkMaxTextLen); |
1548 LOGPHBK2("Phonebook Max Text Length = (%d)",iPhBkMaxTextLen); |
1555 |
1549 |
1556 if(!additional && ret==KErrNone && (alphaTag.Length()<=iPhBkMaxTextLen)) |
1550 if(!additional && ret==KErrNone && (alphaTag.Length()<=iPhBkMaxTextLen)) |
1557 iPhBkUSimStoreEntries[index].iAlphaTag.Copy(alphaTag); |
1551 iPhBkUSimStoreEntries[index].iAlphaTag.Copy(alphaTag); |
1558 else if(additional && ret==KErrNone && (alphaTag.Length()<=iPhBkMaxAdditionalTextLen) |
1552 else if(additional && ret==KErrNone && (alphaTag.Length()<=iPhBkMaxAdditionalTextLen) |
1559 && (additionalCount<iPhBkAdditional)) |
1553 && (additionalCount<iPhBkAdditional)) |
1565 break; |
1559 break; |
1566 |
1560 |
1567 case RMobilePhoneBookStore::ETagPBSecondName: |
1561 case RMobilePhoneBookStore::ETagPBSecondName: |
1568 ret=iPhBkRwBuffer->GetValue(alphaTag2); |
1562 ret=iPhBkRwBuffer->GetValue(alphaTag2); |
1569 |
1563 |
1570 OstTraceDef1(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_WRITE_3, "alphaTag2 (ETagPBSecondName) Length = (%d)",alphaTag2.Length()); |
1564 LOGPHBK2("alphaTag2 (ETagPBSecondName) Length = (%d)",alphaTag2.Length()); |
1571 OstTraceDef1(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_WRITE_4, "Phonebook Max Text Length = (%d)",iPhBkMaxTextLen); |
1565 LOGPHBK2("Phonebook Max Text Length = (%d)",iPhBkMaxTextLen); |
1572 |
1566 |
1573 if(ret==KErrNone && (alphaTag2.Length()<=iPhBkMaxTextLen)) |
1567 if(ret==KErrNone && (alphaTag2.Length()<=iPhBkMaxTextLen)) |
1574 iPhBkUSimStoreEntries[index].iAlphaTag2.Copy(alphaTag2); |
1568 iPhBkUSimStoreEntries[index].iAlphaTag2.Copy(alphaTag2); |
1575 else |
1569 else |
1576 ret=EXTENDEDERROR(KErrOverflow, KErrPhonebookSecondNameTextOverflow); |
1570 ret=EXTENDEDERROR(KErrOverflow, KErrPhonebookSecondNameTextOverflow); |
1577 break; |
1571 break; |
1578 |
1572 |
1579 case RMobilePhoneBookStore::ETagPBNumber: |
1573 case RMobilePhoneBookStore::ETagPBNumber: |
1580 ret=iPhBkRwBuffer->GetValue(telNum); |
1574 ret=iPhBkRwBuffer->GetValue(telNum); |
1581 |
1575 |
1582 OstTraceDef1(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_WRITE_5, "telNum (ETagPBNumber) Length = (%d)",telNum.Length()); |
1576 LOGPHBK2("telNum (ETagPBNumber) Length = (%d)",telNum.Length()); |
1583 OstTraceDef1(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_WRITE_6, "Phonebook Max Text Length = (%d)",iPhBkMaxTelNumLen); |
1577 LOGPHBK2("Phonebook Max Text Length = (%d)",iPhBkMaxTelNumLen); |
1584 |
1578 |
1585 if(!additional && ret==KErrNone && (telNum.Length()<=iPhBkMaxTelNumLen)) |
1579 if(!additional && ret==KErrNone && (telNum.Length()<=iPhBkMaxTelNumLen)) |
1586 iPhBkUSimStoreEntries[index].iTelNum.Copy(telNum); |
1580 iPhBkUSimStoreEntries[index].iTelNum.Copy(telNum); |
1587 else if(additional && ret==KErrNone && (telNum.Length()<=iPhBkMaxAdditionalTelNumLen) |
1581 else if(additional && ret==KErrNone && (telNum.Length()<=iPhBkMaxAdditionalTelNumLen) |
1588 && (additionalCount<iPhBkAdditional)) |
1582 && (additionalCount<iPhBkAdditional)) |
1617 break; |
1611 break; |
1618 |
1612 |
1619 case RMobilePhoneBookStore::ETagPBGroupName: |
1613 case RMobilePhoneBookStore::ETagPBGroupName: |
1620 ret=iPhBkRwBuffer->GetValue(bufPtr); |
1614 ret=iPhBkRwBuffer->GetValue(bufPtr); |
1621 |
1615 |
1622 OstTraceDef1(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_WRITE_7, "bufPtr (ETagPBGroupName) Length = (%d)",bufPtr.Length()); |
1616 LOGPHBK2("bufPtr (ETagPBGroupName) Length = (%d)",bufPtr.Length()); |
1623 OstTraceDef1(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_WRITE_8, "Phonebook Max Text Length = (%d)",iPhBkMaxTextLen); |
1617 LOGPHBK2("Phonebook Max Text Length = (%d)",iPhBkMaxTextLen); |
1624 |
1618 |
1625 if(ret==KErrNone && (bufPtr.Length()<=iPhBkMaxTextLen) |
1619 if(ret==KErrNone && (bufPtr.Length()<=iPhBkMaxTextLen) |
1626 && (iPhBkUSimStoreEntries[index].iGroups->Count() < KMaxGroups)) |
1620 && (iPhBkUSimStoreEntries[index].iGroups->Count() < KMaxGroups)) |
1627 { |
1621 { |
1628 TRAP_IGNORE(iPhBkUSimStoreEntries[index].iGroups->AppendL(bufPtr)); |
1622 TRAP_IGNORE(iPhBkUSimStoreEntries[index].iGroups->AppendL(bufPtr)); |
1632 break; |
1626 break; |
1633 |
1627 |
1634 case RMobilePhoneBookStore::ETagPBEmailAddress: |
1628 case RMobilePhoneBookStore::ETagPBEmailAddress: |
1635 ret=iPhBkRwBuffer->GetValue(bufPtr); |
1629 ret=iPhBkRwBuffer->GetValue(bufPtr); |
1636 |
1630 |
1637 OstTraceDef1(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_WRITE_9, "bufPtr (ETagPBEmailAddress) Length = (%d)",bufPtr.Length()); |
1631 LOGPHBK2("bufPtr (ETagPBEmailAddress) Length = (%d)",bufPtr.Length()); |
1638 OstTraceDef1(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_WRITE_10, "Phonebook Max Text Length = (%d)",iPhBkMaxTextLen); |
1632 LOGPHBK2("Phonebook Max Text Length = (%d)",iPhBkMaxTextLen); |
1639 |
1633 |
1640 if(ret==KErrNone && (bufPtr.Length()<=iPhBkMaxTextLen) |
1634 if(ret==KErrNone && (bufPtr.Length()<=iPhBkMaxTextLen) |
1641 && (iPhBkUSimStoreEntries[index].iEmails->Count() < iPhBkMaxEmail)) |
1635 && (iPhBkUSimStoreEntries[index].iEmails->Count() < iPhBkMaxEmail)) |
1642 { |
1636 { |
1643 TRAP_IGNORE(iPhBkUSimStoreEntries[index].iEmails->AppendL(bufPtr)); |
1637 TRAP_IGNORE(iPhBkUSimStoreEntries[index].iEmails->AppendL(bufPtr)); |
2070 //bad address 0xdededede (investigating) |
2064 //bad address 0xdededede (investigating) |
2071 |
2065 |
2072 TRAPD(err,iPhBkUSimStoreEntries[iPhBkOOBWriteIndex].iAdditional=new(ELeave) CArrayFixFlat<TPhBkStoreEntry>(iPhBkAdditional+1)); |
2066 TRAPD(err,iPhBkUSimStoreEntries[iPhBkOOBWriteIndex].iAdditional=new(ELeave) CArrayFixFlat<TPhBkStoreEntry>(iPhBkAdditional+1)); |
2073 if (err!=KErrNone) |
2067 if (err!=KErrNone) |
2074 { |
2068 { |
2075 OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_TIMERCALLBACK_1, "CSimPhBkUSimStore::TimerCallBack - Memory Allocation Failure"); |
2069 LOGPHBK1("CSimPhBkUSimStore::TimerCallBack - Memory Allocation Failure"); |
2076 return; |
2070 return; |
2077 } |
2071 } |
2078 |
2072 |
2079 for(idx=0;idx<count;idx++) |
2073 for(idx=0;idx<count;idx++) |
2080 { |
2074 { |
2098 |
2092 |
2099 count = iPhBkOOBWrite.iEmails->Count(); |
2093 count = iPhBkOOBWrite.iEmails->Count(); |
2100 TRAP(err,iPhBkUSimStoreEntries[iPhBkOOBWriteIndex].iEmails=new(ELeave) CArrayFixFlat<TPhBkUSimEmail>(iPhBkMaxEmail+1)); |
2094 TRAP(err,iPhBkUSimStoreEntries[iPhBkOOBWriteIndex].iEmails=new(ELeave) CArrayFixFlat<TPhBkUSimEmail>(iPhBkMaxEmail+1)); |
2101 if (err!=KErrNone) |
2095 if (err!=KErrNone) |
2102 { |
2096 { |
2103 OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSIMPHBKUSIMSTORE_TIMERCALLBACK_3, "CSimPhBkUSimStore::TimerCallBack - Memory Allocation Failure"); |
2097 LOGPHBK1("CSimPhBkUSimStore::TimerCallBack - Memory Allocation Failure"); |
2104 return; |
2098 return; |
2105 } |
2099 } |
2106 |
2100 |
2107 for(idx=0;idx<count;idx++) |
2101 for(idx=0;idx<count;idx++) |
2108 { |
2102 { |