telephonyserverplugins/ctsydispatchlayer/src/cphonebookdispatcher.cpp
changeset 31 8ab6687fb94c
parent 0 3553901f7fa8
child 42 3adadc800673
equal deleted inserted replaced
26:8767c6acf334 31:8ab6687fb94c
  1047  *
  1047  *
  1048  * @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.
  1049  * @param aPhonebook The phonebook to reset the cache for.
  1049  * @param aPhonebook The phonebook to reset the cache for.
  1050  */
  1050  */
  1051 	{
  1051 	{
  1052 	TSYLOGENTRYEXITARGS(_L8("aError=%d,aPhonebook=%d"), aError, aPhonebook);
  1052 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aPhonebook=%d"), aError, aPhonebook);
  1053 
  1053 
  1054 	__ASSERT_DEBUG(aPhonebook != DispatcherPhonebook::EUnknown, CtsyDispatcherPanic(EInvalidParameter));
  1054 	__ASSERT_DEBUG(aPhonebook != DispatcherPhonebook::EUnknown, CtsyDispatcherPanic(EInvalidParameter));
  1055 	
  1055 	
  1056 	CPhoneBookDataPackage phoneBookDataPackage;
  1056 	CPhoneBookDataPackage phoneBookDataPackage;
  1057 	phoneBookDataPackage.SetPhoneBookName(PhonebookName(aPhonebook));
  1057 	phoneBookDataPackage.SetPhoneBookName(PhonebookName(aPhonebook));
  1069  * @param aTotalEntries The total number of entries in the Fdn phonebook.
  1069  * @param aTotalEntries The total number of entries in the Fdn phonebook.
  1070  * @param aMaxTextLength The maximum text length in the Fdn phonebook.
  1070  * @param aMaxTextLength The maximum text length in the Fdn phonebook.
  1071  * @param aMaxNumberLength The maximum number length in the Fdn phonebook.
  1071  * @param aMaxNumberLength The maximum number length in the Fdn phonebook.
  1072  */
  1072  */
  1073 	{
  1073 	{
  1074 	TSYLOGENTRYEXITARGS(_L8("aError=%d,aTotalEntries=%d,aMaxTextLength=%d,aMaxNumberLength=%d"), 
  1074 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aTotalEntries=%d, aMaxTextLength=%d, aMaxNumberLength=%d"), 
  1075 							aError,aTotalEntries,aMaxTextLength,aMaxNumberLength);
  1075 							aError, aTotalEntries, aMaxTextLength, aMaxNumberLength);
  1076 
  1076 
  1077 	TName phoneBookName(KETelIccFdnPhoneBook);
  1077 	TName phoneBookName(KETelIccFdnPhoneBook);
  1078 	CPhoneBookDataPackage phoneBookDataPackage;
  1078 	CPhoneBookDataPackage phoneBookDataPackage;
  1079 	phoneBookDataPackage.SetPhoneBookName(phoneBookName);
  1079 	phoneBookDataPackage.SetPhoneBookName(phoneBookName);
  1080 	
  1080 	
  1102  * @see RMobilePhoneBookStore::Read()
  1102  * @see RMobilePhoneBookStore::Read()
  1103  * @see CPhoneBookBuffer()
  1103  * @see CPhoneBookBuffer()
  1104  * @see CPhoneBookEntry::ExternalizeToTlvEntry()
  1104  * @see CPhoneBookEntry::ExternalizeToTlvEntry()
  1105  */
  1105  */
  1106 	{
  1106 	{
  1107 	TSYLOGENTRYEXITARGS(_L8("aError=%d,aPhonebook=%d"), aError, aPhonebook);
  1107 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aPhonebook=%d"), aError, aPhonebook);
  1108 	
  1108 	
  1109 	__ASSERT_DEBUG(aPhonebook != DispatcherPhonebook::EUnknown, CtsyDispatcherPanic(EInvalidParameter));	
  1109 	__ASSERT_DEBUG(aPhonebook != DispatcherPhonebook::EUnknown, CtsyDispatcherPanic(EInvalidParameter));	
  1110 	
  1110 	
  1111 	if (iPhonebookReadPtrs[aPhonebook] != NULL)
  1111 	if (iPhonebookReadPtrs[aPhonebook] != NULL)
  1112 		{
  1112 		{
  1113 		iPhonebookReadPtrs[aPhonebook] = NULL;
  1113 		iPhonebookReadPtrs[aPhonebook] = NULL;
  1114 		}
  1114 		}
  1115 	
  1115 	
  1116 	if((aError == KErrNone) && (aPhonebook != DispatcherPhonebook::EUnknown))
  1116 	if((aError == KErrNone) && (aPhonebook != DispatcherPhonebook::EUnknown))
  1117 		{
  1117 		{
  1118 		//fill the CTSY pointer		
  1118 		//fill the CTSY pointer
  1119 		CArrayPtrSeg<CPhoneBookStoreEntry>* readEntries = new(ELeave) CArrayPtrSeg<CPhoneBookStoreEntry>(1);
  1119         TRAP ( aError, 
  1120 		iPhonebookReadPtrs[aPhonebook] = readEntries;
  1120                 CArrayPtrSeg<CPhoneBookStoreEntry>* readEntries = new(ELeave) CArrayPtrSeg<CPhoneBookStoreEntry>(1);
  1121 		
  1121                 iPhonebookReadPtrs[aPhonebook] = readEntries;
  1122 		TRAP(aError,FillCtsyPhoneBookStoreL(aPhonebookEntries,*(iPhonebookReadPtrs[aPhonebook])));
  1122                 FillCtsyPhoneBookStoreL(aPhonebookEntries,*(iPhonebookReadPtrs[aPhonebook])));
  1123 		}
  1123 		}
  1124 	
  1124 	
  1125 	CPhoneBookDataPackage phoneBookDataPackage;
  1125 	CPhoneBookDataPackage phoneBookDataPackage;
  1126 	phoneBookDataPackage.SetPhoneBookName(PhonebookName(aPhonebook));
  1126 	phoneBookDataPackage.SetPhoneBookName(PhonebookName(aPhonebook));
  1127 	phoneBookDataPackage.PackData(&(iPhonebookReadPtrs[aPhonebook]));
  1127 	phoneBookDataPackage.PackData(&(iPhonebookReadPtrs[aPhonebook]));
  1172  *
  1172  *
  1173  * @see CPhoneBookBuffer()
  1173  * @see CPhoneBookBuffer()
  1174  * @see CPhoneBookEntry::ExternalizeToTlvEntry()
  1174  * @see CPhoneBookEntry::ExternalizeToTlvEntry()
  1175  */
  1175  */
  1176 	{
  1176 	{
  1177 	TSYLOGENTRYEXITARGS(_L8("aError=%d,aPhonebook=%d"), aError, aPhonebook);
  1177 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aPhonebook=%d"), aError, aPhonebook);
  1178 	
  1178 	
  1179 	__ASSERT_DEBUG(aPhonebook != DispatcherPhonebook::EUnknown, CtsyDispatcherPanic(EInvalidParameter));
  1179 	__ASSERT_DEBUG(aPhonebook != DispatcherPhonebook::EUnknown, CtsyDispatcherPanic(EInvalidParameter));
  1180 	
  1180 	
  1181 	if (iPhonebookCachePtrs[aPhonebook] != NULL)
  1181 	if (iPhonebookCachePtrs[aPhonebook] != NULL)
  1182 		{
  1182 		{
  1183 		iPhonebookCachePtrs[aPhonebook] = NULL;
  1183 		iPhonebookCachePtrs[aPhonebook] = NULL;
  1184 		}
  1184 		}
  1185 	
  1185 	
  1186 	if((aError == KErrNone) && (aPhonebook != DispatcherPhonebook::EUnknown)/* && (iPhonebookCachePtrs[aPhonebook])*/)
  1186 	if((aError == KErrNone) && (aPhonebook != DispatcherPhonebook::EUnknown)/* && (iPhonebookCachePtrs[aPhonebook])*/)
  1187 		{
  1187 		{
  1188 		CArrayPtrSeg<CPhoneBookStoreEntry>* readEntries = new(ELeave) CArrayPtrSeg<CPhoneBookStoreEntry>(1);
  1188         TRAP(aError,
  1189 		iPhonebookCachePtrs[aPhonebook] = readEntries;
  1189                 CArrayPtrSeg<CPhoneBookStoreEntry>* readEntries = new(ELeave) CArrayPtrSeg<CPhoneBookStoreEntry>(1);
  1190 			
  1190                 iPhonebookCachePtrs[aPhonebook] = readEntries;
  1191 		TRAP(aError,FillCtsyPhoneBookStoreL(aPhonebookEntries, *(iPhonebookCachePtrs[aPhonebook])));
  1191                 FillCtsyPhoneBookStoreL(aPhonebookEntries, *(iPhonebookCachePtrs[aPhonebook])));
  1192 		
  1192 		
  1193 		if(aError)
  1193 		if(aError)
  1194 			{
  1194 			{
  1195 			iPhonebookCachePtrs[aPhonebook]->ResetAndDestroy();
  1195 			iPhonebookCachePtrs[aPhonebook]->ResetAndDestroy();
  1196 			}
  1196 			}
  1335  * only relevant to Fdn, Adn and Vmb phonebooks.
  1335  * only relevant to Fdn, Adn and Vmb phonebooks.
  1336  *
  1336  *
  1337  * @see RMobilePhoneBookStore::Write() 
  1337  * @see RMobilePhoneBookStore::Write() 
  1338  */
  1338  */
  1339 	{
  1339 	{
  1340 	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);
  1341 
  1341 
  1342 	__ASSERT_DEBUG(aPhonebook != DispatcherPhonebook::EUnknown, CtsyDispatcherPanic(EInvalidParameter));
  1342 	__ASSERT_DEBUG(aPhonebook != DispatcherPhonebook::EUnknown, CtsyDispatcherPanic(EInvalidParameter));
  1343 	
  1343 	
  1344 	CPhoneBookDataPackage phoneBookDataPackage;
  1344 	CPhoneBookDataPackage phoneBookDataPackage;
  1345 	phoneBookDataPackage.SetPhoneBookName(PhonebookName(aPhonebook));
  1345 	phoneBookDataPackage.SetPhoneBookName(PhonebookName(aPhonebook));