1 // Copyright (c) 2008-2010 Nokia Corporation and/or its subsidiary(-ies). |
1 // Copyright (c) 2008-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". |
10 // |
10 // |
11 // Contributors: |
11 // Contributors: |
12 // |
12 // |
13 // Description: |
13 // Description: |
14 // |
14 // |
15 |
|
16 |
|
17 #include "OstTraceDefinitions.h" |
|
18 #ifdef OST_TRACE_COMPILER_IN_USE |
|
19 #include "cphonebookdispatcherTraces.h" |
|
20 #endif |
|
21 |
15 |
22 #include "cphonebookdispatcher.h" |
16 #include "cphonebookdispatcher.h" |
23 |
17 |
24 #include <ctsy/ltsy/mltsydispatchphonebookinterface.h> |
18 #include <ctsy/ltsy/mltsydispatchphonebookinterface.h> |
25 #include <ctsy/pluginapi/mmmessagemanagercallback.h> |
19 #include <ctsy/pluginapi/mmmessagemanagercallback.h> |
1053 * |
1047 * |
1054 * @param aError KErrNone on success, or another error code indicating the error otherwise. |
1048 * @param aError KErrNone on success, or another error code indicating the error otherwise. |
1055 * @param aPhonebook The phonebook to reset the cache for. |
1049 * @param aPhonebook The phonebook to reset the cache for. |
1056 */ |
1050 */ |
1057 { |
1051 { |
1058 TSYLOGENTRYEXITARGS(_L8("aError=%d, aPhonebook=%d"), aError, aPhonebook); |
1052 TSYLOGENTRYEXITARGS(_L8("aError=%d,aPhonebook=%d"), aError, aPhonebook); |
1059 |
1053 |
1060 __ASSERT_DEBUG(aPhonebook != DispatcherPhonebook::EUnknown, CtsyDispatcherPanic(EInvalidParameter)); |
1054 __ASSERT_DEBUG(aPhonebook != DispatcherPhonebook::EUnknown, CtsyDispatcherPanic(EInvalidParameter)); |
1061 |
1055 |
1062 CPhoneBookDataPackage phoneBookDataPackage; |
1056 CPhoneBookDataPackage phoneBookDataPackage; |
1063 phoneBookDataPackage.SetPhoneBookName(PhonebookName(aPhonebook)); |
1057 phoneBookDataPackage.SetPhoneBookName(PhonebookName(aPhonebook)); |
1075 * @param aTotalEntries The total number of entries in the Fdn phonebook. |
1069 * @param aTotalEntries The total number of entries in the Fdn phonebook. |
1076 * @param aMaxTextLength The maximum text length in the Fdn phonebook. |
1070 * @param aMaxTextLength The maximum text length in the Fdn phonebook. |
1077 * @param aMaxNumberLength The maximum number length in the Fdn phonebook. |
1071 * @param aMaxNumberLength The maximum number length in the Fdn phonebook. |
1078 */ |
1072 */ |
1079 { |
1073 { |
1080 TSYLOGENTRYEXITARGS(_L8("aError=%d, aTotalEntries=%d, aMaxTextLength=%d, aMaxNumberLength=%d"), |
1074 TSYLOGENTRYEXITARGS(_L8("aError=%d,aTotalEntries=%d,aMaxTextLength=%d,aMaxNumberLength=%d"), |
1081 aError, aTotalEntries, aMaxTextLength, aMaxNumberLength); |
1075 aError,aTotalEntries,aMaxTextLength,aMaxNumberLength); |
1082 |
1076 |
1083 TName phoneBookName(KETelIccFdnPhoneBook); |
1077 TName phoneBookName(KETelIccFdnPhoneBook); |
1084 CPhoneBookDataPackage phoneBookDataPackage; |
1078 CPhoneBookDataPackage phoneBookDataPackage; |
1085 phoneBookDataPackage.SetPhoneBookName(phoneBookName); |
1079 phoneBookDataPackage.SetPhoneBookName(phoneBookName); |
1086 |
1080 |
1108 * @see RMobilePhoneBookStore::Read() |
1102 * @see RMobilePhoneBookStore::Read() |
1109 * @see CPhoneBookBuffer() |
1103 * @see CPhoneBookBuffer() |
1110 * @see CPhoneBookEntry::ExternalizeToTlvEntry() |
1104 * @see CPhoneBookEntry::ExternalizeToTlvEntry() |
1111 */ |
1105 */ |
1112 { |
1106 { |
1113 TSYLOGENTRYEXITARGS(_L8("aError=%d, aPhonebook=%d"), aError, aPhonebook); |
1107 TSYLOGENTRYEXITARGS(_L8("aError=%d,aPhonebook=%d"), aError, aPhonebook); |
1114 |
1108 |
1115 __ASSERT_DEBUG(aPhonebook != DispatcherPhonebook::EUnknown, CtsyDispatcherPanic(EInvalidParameter)); |
1109 __ASSERT_DEBUG(aPhonebook != DispatcherPhonebook::EUnknown, CtsyDispatcherPanic(EInvalidParameter)); |
1116 |
1110 |
1117 if (iPhonebookReadPtrs[aPhonebook] != NULL) |
1111 if (iPhonebookReadPtrs[aPhonebook] != NULL) |
1118 { |
1112 { |
1119 iPhonebookReadPtrs[aPhonebook] = NULL; |
1113 iPhonebookReadPtrs[aPhonebook] = NULL; |
1120 } |
1114 } |
1121 |
1115 |
1122 if((aError == KErrNone) && (aPhonebook != DispatcherPhonebook::EUnknown)) |
1116 if((aError == KErrNone) && (aPhonebook != DispatcherPhonebook::EUnknown)) |
1123 { |
1117 { |
1124 //fill the CTSY pointer |
1118 //fill the CTSY pointer |
1125 TRAP ( aError, |
1119 TRAP ( aError, |
1126 CArrayPtrSeg<CPhoneBookStoreEntry>* readEntries = new(ELeave) CArrayPtrSeg<CPhoneBookStoreEntry>(1); |
1120 CArrayPtrSeg<CPhoneBookStoreEntry>* readEntries = new(ELeave) CArrayPtrSeg<CPhoneBookStoreEntry>(1); |
1127 iPhonebookReadPtrs[aPhonebook] = readEntries; |
1121 iPhonebookReadPtrs[aPhonebook] = readEntries; |
1128 FillCtsyPhoneBookStoreL(aPhonebookEntries,*(iPhonebookReadPtrs[aPhonebook]))); |
1122 FillCtsyPhoneBookStoreL(aPhonebookEntries,*(iPhonebookReadPtrs[aPhonebook]))); |
1129 } |
1123 } |
1178 * |
1172 * |
1179 * @see CPhoneBookBuffer() |
1173 * @see CPhoneBookBuffer() |
1180 * @see CPhoneBookEntry::ExternalizeToTlvEntry() |
1174 * @see CPhoneBookEntry::ExternalizeToTlvEntry() |
1181 */ |
1175 */ |
1182 { |
1176 { |
1183 TSYLOGENTRYEXITARGS(_L8("aError=%d, aPhonebook=%d"), aError, aPhonebook); |
1177 TSYLOGENTRYEXITARGS(_L8("aError=%d,aPhonebook=%d"), aError, aPhonebook); |
1184 |
1178 |
1185 __ASSERT_DEBUG(aPhonebook != DispatcherPhonebook::EUnknown, CtsyDispatcherPanic(EInvalidParameter)); |
1179 __ASSERT_DEBUG(aPhonebook != DispatcherPhonebook::EUnknown, CtsyDispatcherPanic(EInvalidParameter)); |
1186 |
1180 |
1187 if (iPhonebookCachePtrs[aPhonebook] != NULL) |
1181 if (iPhonebookCachePtrs[aPhonebook] != NULL) |
1188 { |
1182 { |
1193 { |
1187 { |
1194 TRAP(aError, |
1188 TRAP(aError, |
1195 CArrayPtrSeg<CPhoneBookStoreEntry>* readEntries = new(ELeave) CArrayPtrSeg<CPhoneBookStoreEntry>(1); |
1189 CArrayPtrSeg<CPhoneBookStoreEntry>* readEntries = new(ELeave) CArrayPtrSeg<CPhoneBookStoreEntry>(1); |
1196 iPhonebookCachePtrs[aPhonebook] = readEntries; |
1190 iPhonebookCachePtrs[aPhonebook] = readEntries; |
1197 FillCtsyPhoneBookStoreL(aPhonebookEntries, *(iPhonebookCachePtrs[aPhonebook]))); |
1191 FillCtsyPhoneBookStoreL(aPhonebookEntries, *(iPhonebookCachePtrs[aPhonebook]))); |
1198 |
1192 |
1199 if(aError) |
1193 if(aError) |
1200 { |
1194 { |
1201 iPhonebookCachePtrs[aPhonebook]->ResetAndDestroy(); |
1195 iPhonebookCachePtrs[aPhonebook]->ResetAndDestroy(); |
1202 } |
1196 } |
1203 } |
1197 } |
1341 * only relevant to Fdn, Adn and Vmb phonebooks. |
1335 * only relevant to Fdn, Adn and Vmb phonebooks. |
1342 * |
1336 * |
1343 * @see RMobilePhoneBookStore::Write() |
1337 * @see RMobilePhoneBookStore::Write() |
1344 */ |
1338 */ |
1345 { |
1339 { |
1346 TSYLOGENTRYEXITARGS(_L8("aError=%d, aPhonebook=%d, aIndex=%d, aMaxNumberLength=%d"), aError, aPhonebook, aIndex, aMaxNumberLength); |
1340 TSYLOGENTRYEXITARGS(_L8("aError=%d,aPhonebook=%d,aIndex=%d,aMaxNumberLength=%d"), aError, aPhonebook, aIndex, aMaxNumberLength); |
1347 |
1341 |
1348 __ASSERT_DEBUG(aPhonebook != DispatcherPhonebook::EUnknown, CtsyDispatcherPanic(EInvalidParameter)); |
1342 __ASSERT_DEBUG(aPhonebook != DispatcherPhonebook::EUnknown, CtsyDispatcherPanic(EInvalidParameter)); |
1349 |
1343 |
1350 CPhoneBookDataPackage phoneBookDataPackage; |
1344 CPhoneBookDataPackage phoneBookDataPackage; |
1351 phoneBookDataPackage.SetPhoneBookName(PhonebookName(aPhonebook)); |
1345 phoneBookDataPackage.SetPhoneBookName(PhonebookName(aPhonebook)); |
1513 |
1507 |
1514 switch (aIpcDataPackage.iIpc) |
1508 switch (aIpcDataPackage.iIpc) |
1515 { |
1509 { |
1516 |
1510 |
1517 default: |
1511 default: |
1518 OstTraceDef1(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CPHONEBOOKDISPATCHER_CALLBACKSYNC_1, "WARNING: CPhonebookDispatcher::CallbackSync unhandled IPC=%d", aIpcDataPackage.iIpc); |
1512 LOG(_L8("WARNING: CPhonebookDispatcher::CallbackSync unhandled IPC=%d"), aIpcDataPackage.iIpc); |
1519 __ASSERT_DEBUG(NULL, CtsyDispatcherPanic(EUnhandledCtsyIpc)); |
1513 __ASSERT_DEBUG(NULL, CtsyDispatcherPanic(EUnhandledCtsyIpc)); |
1520 break; |
1514 break; |
1521 } // switch (aIpcDataPackage.iIpc) |
1515 } // switch (aIpcDataPackage.iIpc) |
1522 |
1516 |
1523 } // CPhonebookDispatcher::CallbackSync |
1517 } // CPhonebookDispatcher::CallbackSync |