commondrm/drmutility/src/drmutilitywmdrmwrapper.cpp
changeset 29 3bdc3b853094
parent 23 493788a4a8a4
child 49 69d8e75812b7
--- a/commondrm/drmutility/src/drmutilitywmdrmwrapper.cpp	Fri Apr 16 15:14:55 2010 +0300
+++ b/commondrm/drmutility/src/drmutilitywmdrmwrapper.cpp	Mon May 03 12:46:34 2010 +0300
@@ -31,15 +31,12 @@
 #include <avkon.hrh>
 
 // access point utils
-#include <centralrepository.h>
+
 #include <cdblen.h>
 #include <cmconnectionmethod.h>
 #include <cmdestination.h>
 #include <cmconnectionmethoddef.h>
 #include <cmmanager.h>
-#ifdef __SERIES60_NATIVE_BROWSER
-#include <BrowserUiSDKCRKeys.h>
-#endif
 
 #include    <wmdrmagent.h> // for WMDRM file details view
 #include    <drmutilitytypes.h>
@@ -63,12 +60,6 @@
 const TInt KMaxUrlLength( 1024 );
 const TInt KMaxUrlSanityLength( 102400 );
 
-#ifndef __SERIES60_NATIVE_BROWSER
-const TUid KCRUidBrowser = {0x10008D39};
-const TUint32 KBrowserDefaultAccessPoint = 0x0000000E;
-const TUint32 KBrowserAccessPointSelectionMode = 0x0000001E;
-#endif
-
 #ifdef _DEBUG
 // debug panic
 _LIT( KWmDrmWrapperDebugPanicMessage, "WmDrmWrapperDebugPanic" );
@@ -797,56 +788,38 @@
 //
 TInt DRM::CDrmUtilityWMDrmWrapper::DefaultAccessPointL()
     {
-    const TInt KDestinationSelectionMode( 2 );
-    CRepository* repository( NULL );
-    TInt ap( 0 );
-    TInt alwaysAsk( 0 );
+    //Fetch default connection
     TUint32 iapd32( 0 );
-    TInt defaultSnap( 0 );
+    TCmDefConnValue defConn;
+    RCmManager cmManager;
+    cmManager.OpenLC();
+    cmManager.ReadDefConnL(defConn);
+    if (defConn.iType == ECmDefConnConnectionMethod)
+        {
+        iapd32=defConn.iId;
+        }
+    else if (defConn.iType == ECmDefConnDestination)
+        {
+        RCmDestination dest( cmManager.DestinationL( defConn.iId ) );
+        CleanupClosePushL( dest );
 
-    repository = CRepository::NewL( KCRUidBrowser );
-    CleanupStack::PushL( repository );
-    repository->Get( KBrowserDefaultAccessPoint, ap );
-    repository->Get( KBrowserAccessPointSelectionMode, alwaysAsk );
-    repository->Get( KBrowserNGDefaultSnapId, defaultSnap );
-    CleanupStack::PopAndDestroy( repository );
+        if ( dest.ConnectionMethodCount() <= 0 )
+            {
+            User::Leave( KErrNotFound );
+            }
 
-    if ( ap <= KErrNotFound && defaultSnap <= KErrNotFound )
-        {
-        alwaysAsk = ETrue;
+        RCmConnectionMethod cMeth( dest.ConnectionMethodL( 0 ) );
+        CleanupClosePushL( cMeth );
+
+        iapd32 = cMeth.GetIntAttributeL( CMManager::ECmIapId );
+        CleanupStack::PopAndDestroy( 2, &dest ); //cMeth, dest
         }
     else
         {
-        RCmManager cmManager;
-        cmManager.OpenLC();
-        if ( !alwaysAsk )
-            {
-            iapd32 =
-                cmManager.GetConnectionMethodInfoIntL( ap,
-                                                       CMManager::ECmIapId );
-            }
-        else if ( alwaysAsk == KDestinationSelectionMode )
-            {
-            RCmDestination dest( cmManager.DestinationL( defaultSnap ) );
-            CleanupClosePushL( dest );
-
-            if ( dest.ConnectionMethodCount() <= 0 )
-                {
-                User::Leave( KErrNotFound );
-                }
-
-            RCmConnectionMethod cMeth( dest.ConnectionMethodL( 0 ) );
-            CleanupClosePushL( cMeth );
-
-            iapd32 = cMeth.GetIntAttributeL( CMManager::ECmIapId );
-            CleanupStack::PopAndDestroy( 2, &dest ); //cMeth, dest
-            }
-        CleanupStack::PopAndDestroy( &cmManager );
-        }
-    if ( alwaysAsk && alwaysAsk != KDestinationSelectionMode )
-        {
         User::Leave( KErrAccessDenied );
         }
+    CleanupStack::PopAndDestroy(&cmManager);
+    // End of fetch default connection
     return iapd32;
     }