datacommsserver/esockserver/ssock/ss_tiermanagerutils.cpp
branchRCL_3
changeset 14 4ccf8e394726
parent 0 dfb7c4ff071f
--- a/datacommsserver/esockserver/ssock/ss_tiermanagerutils.cpp	Wed Mar 31 23:27:09 2010 +0300
+++ b/datacommsserver/esockserver/ssock/ss_tiermanagerutils.cpp	Wed Apr 14 17:14:05 2010 +0300
@@ -738,27 +738,25 @@
 EXPORT_C TUid TierManagerUtils::MapTierIdtoTierImplIdL(TUid aTierUid,CommsDat::CMDBSession& aDbs )
 /** mapping TM Id to TM ImplId in Commsdat */
 	{
-	TUid ImplUid;
-	// if it does not exist, it returns tier id
-	ImplUid = aTierUid;
+    TUid ImplUid;
+    // if it does not exist, it returns tier id
+    ImplUid = aTierUid;
+
+    CCDTierRecord* tierRec = static_cast<CCDTierRecord*>(CCDRecordBase::RecordFactoryL(KCDTIdTierRecord));
+    CleanupStack::PushL(tierRec);
+    tierRec->iRecordTag = aTierUid.iUid;
+
+    TBool found = tierRec->FindL(aDbs);
 
-	CMDBRecordSet<CCDTierRecord>* recSet = new (ELeave) CMDBRecordSet<CCDTierRecord>(KCDTIdTierRecord);
-	CleanupStack::PushL(recSet);
-	recSet->LoadL(aDbs);
-	const TInt recCnt = recSet->iRecords.Count();
-	
-	for(TInt i = 0; i < recCnt; i++)
-		{
-		CCDTierRecord* rec = static_cast<CCDTierRecord*>(recSet->iRecords[i]);
-		if(rec->iRecordTag == aTierUid.iUid)
-			{
-			ImplUid.iUid = rec->iTierImplUid;
-			}
-		}
-	
-	CleanupStack::PopAndDestroy(recSet);	
-	return ImplUid;
-	}
+    if (found)
+        {
+        ImplUid.iUid = tierRec->iTierImplUid;
+        }
+
+    CleanupStack::PopAndDestroy(tierRec);   
+    return ImplUid;
+
+    }
 //
 // CCommsDatIapView
 //