omaprovisioning/provisioning/WAPAdapter/Src/CWPWAPBrowserItem.cpp
branchRCL_3
changeset 25 b183ec05bd8c
parent 24 13d7c31c74e0
child 26 19bba8228ff0
--- a/omaprovisioning/provisioning/WAPAdapter/Src/CWPWAPBrowserItem.cpp	Thu Aug 19 10:44:50 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,271 +0,0 @@
-/*
-* Copyright (c) 2002-2006 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  One browser setting item.
-*
-*/
-
-
-
-// INCLUDE FILES
-#include <e32base.h>
-#include <msvapi.h>
-#include <ApDataHandler.h>
-#include <ApAccessPointItem.h>
-#include <CWPCharacteristic.h>
-#include <CWPParameter.h>
-#include <CWPAdapter.h>
-#include <centralrepository.h>
-#include <browseruisdkcrkeys.h>
-#include "CWPWAPBrowserItem.h"
-#include "WPWAPItemFactory.h"
-#include "ProvisioningDebug.h"
-
-// CONSTANTS
-/// Delay to wait for WmlBrowser to catch up with changes in CommsDb. Microseconds.
-const TInt KWmlDelay = 4*500000;
-// Force browser to use User Defined AP
-const TInt KUserDefined = 0;
-
-// -----------------------------------------------------------------------------
-// CWPWAPBrowserItem::CWPWAPBrowserItem
-// C++ default constructor can NOT contain any code, that
-// might leave.
-// -----------------------------------------------------------------------------
-//
-CWPWAPBrowserItem::CWPWAPBrowserItem( TBool aFirst,
-                                      const TDesC& aTitle,
-                                      const TDesC& aBookmarkTitle,
-                                      const TDesC& aDefaultName, 
-                                      const TDesC& aDefaultBookmarkName,
-                                      CWPCharacteristic& aCharacteristic, 
-                                      CCommsDatabase*& aCommsDb, 
-                                      CApDataHandler*& aAPHandler,
-                                      RFavouritesDb aBookmarkDb 
-                                    )
-                                    : CWPWAPItemBase( aTitle,
-                                                      aDefaultName, 
-                                                      aCharacteristic, 
-                                                      aCommsDb, 
-                                                      aAPHandler ), 
-                                    iDefaultBookmarkName( aDefaultBookmarkName ),
-                                    iBookmarkTitle( aBookmarkTitle ), 
-                                    iDb( aBookmarkDb ),
-                                    iFirst( aFirst )
-    {
-    }
-
-// -----------------------------------------------------------------------------
-// CWPWAPBrowserItem::ConstructL
-// Symbian 2nd phase constructor can leave.
-// -----------------------------------------------------------------------------
-//
-void CWPWAPBrowserItem::ConstructL()
-    {
-    BaseConstructL();
-    }
-
-// -----------------------------------------------------------------------------
-// CWPWAPBrowserItem::NewL
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-//
-CWPWAPBrowserItem* CWPWAPBrowserItem::NewL( TBool aFirst,
-                                            const TDesC& aTitle, 
-                                            const TDesC& aBookmarkTitle,
-                                            const TDesC& aDefaultName,  
-                                            const TDesC& aDefaultBookmarkName,
-                                            CWPCharacteristic& aCharacteristic, 
-                                            CCommsDatabase*& aCommsDb, 
-                                            CApDataHandler*& aAPHandler,
-                                            RFavouritesDb aBookmarkDb
-                                            )
-    {
-    CWPWAPBrowserItem* self = new(ELeave) CWPWAPBrowserItem( aFirst,
-                                                             aTitle, 
-                                                             aBookmarkTitle, 
-                                                             aDefaultName, 
-                                                             aDefaultBookmarkName,
-                                                             aCharacteristic, 
-                                                             aCommsDb, 
-                                                             aAPHandler, 
-                                                             aBookmarkDb ); 
-    CleanupStack::PushL(self);
-    self->ConstructL();
-    CleanupStack::Pop(self);
-    return self;
-    }
-
-// -----------------------------------------------------------------------------
-// Destructor
-// -----------------------------------------------------------------------------
-CWPWAPBrowserItem::~CWPWAPBrowserItem()
-    {
-    iBookmarks.ResetAndDestroy();
-    }
-
-// -----------------------------------------------------------------------------
-// CWPWAPBrowserItem::SaveL
-// -----------------------------------------------------------------------------
-//
-void CWPWAPBrowserItem::SaveL()
-    {
-    CreateDbL();
-
-    TPckg<TUint32> uid( iUID );
-    // Check if the iLink->Data() contains an item of the same size as uid. 
-    // This is an extra check to ensure that iLink->Data() contains a packaged
-    // TUin32.
-    if( iLink && iLink->Data().Length() == uid.MaxLength() )
-        {
-        uid.Copy( iLink->Data() );
-        }
-    
-    CApAccessPointItem* apItem = CApAccessPointItem::NewLC();
-    // will leave if AP does not exists
-    iAPHandler->AccessPointDataL( iUID, *apItem );
-    if( iAddr )
-        {
-        // Update the access point startpage
-        WriteHomePageL( *apItem );
-        }
-    CleanupStack::PopAndDestroy(); // apItem
-    }
-
-// -----------------------------------------------------------------------------
-// CWPWAPBrowserItem::CanSetAsDefault
-// -----------------------------------------------------------------------------
-//
-TBool CWPWAPBrowserItem::CanSetAsDefault() const
-    {
-    return iUID != KWPWAPNoUID;
-    }
-
-// -----------------------------------------------------------------------------
-// CWPWAPBrowserItem::SetAsDefaultL
-// -----------------------------------------------------------------------------
-//
-void CWPWAPBrowserItem::SetAsDefaultL()
-    {
-    FLOG( _L( "[Provisioning] CWPWAPBrowserItem::SetAsDefaultL:" ) );
-    
-    CreateDbL();
-    TRAPD( err, iAPHandler->SetAsDefaultL( (TInt)iUID, EIspTypeWAPOnly) );
-    if( err == KErrLocked )
-        {
-        err = EWPCommsDBLocked;
-        }
-    // This function need to leave at the end of the function
-    // otherwise we dont set the default AP when db is locked
-    //User::LeaveIfError( err );
-    
-    // There's some delay before the WmlBrowser can find the stored 
-    // accesspoint from CommsDb so therefore we wait for a while before
-    // telling the WmlBrowser that default accesspoint should be changed.
-    // The value 500000 is chosen just by trying out.
-    User::After( KWmlDelay );
-
-    CRepository* repository = CRepository::NewLC( KCRUidBrowser );
-    FTRACE(RDebug::Print(
-                _L("[Provisioning] CWPWAPBrowserItem::SetAsDefaultL: AP:(%d)"),
-                                                                  (TInt)iUID));
-    
-    // Force the browser to use the User Defined AP selection mode.
-    User::LeaveIfError( repository->Set( KBrowserAccessPointSelectionMode,
-                                         KUserDefined ) );
-    // This sets the accesspoint default for browser.
-    User::LeaveIfError( repository->Set( KBrowserDefaultAccessPoint,
-                                         (TInt)iUID ) );
-
-    //Set the HomePage to default
-    if(iUID)
-        {
-        User::LeaveIfError( repository->Set( KBrowserNGHomepageType, EBrowserCenRepAccessPoint) );
-        }
-
-    CleanupStack::PopAndDestroy(); // repository
-    FLOG( _L( "[Provisioning] CWPWAPBrowserItem::SetAsDefaultL: Set Done" ) );
-
-    User::LeaveIfError( err );
-    }
-
-// -----------------------------------------------------------------------------
-// CWPWAPBrowserItem::ValidateL
-// -----------------------------------------------------------------------------
-//
-TBool CWPWAPBrowserItem::ValidateL()
-    {
-    return iLink != NULL;
-    }
-
-// -----------------------------------------------------------------------------
-// CWPWAPBrowserItem::ResourceL
-// -----------------------------------------------------------------------------
-//
-void CWPWAPBrowserItem::ResourceL( CWPCharacteristic& aResource )
-    {
-    MWPWAPItemBase* item = WPWAPItemFactory::CreateBookmarkLC( 
-                                                          iBookmarkTitle, 
-                                                          iDefaultBookmarkName,
-                                                          aResource, 
-                                                          iLink, 
-                                                          iDb );
-
-    if( item->CanSetAsDefault() && !iAddr )
-        {
-        iAddr = item->Address().AllocL();
-        CleanupStack::PopAndDestroy(); // item
-        }
-    else
-        {
-        User::LeaveIfError( iBookmarks.Append( item ) );
-        CleanupStack::Pop(); // item
-        }
-    }
-
-// -----------------------------------------------------------------------------
-// CWPWAPBrowserItem::AddL
-// -----------------------------------------------------------------------------
-//
-void CWPWAPBrowserItem::AddL( RPointerArray<MWPWAPItemBase>& aShownItems,
-                              RPointerArray<MWPWAPItemBase>& aHiddenItems )
-    {
-    for( TInt i( iBookmarks.Count()-1 ); i >= 0 ; i-- )
-        {
-        MWPWAPItemBase* item = iBookmarks[i];
-
-        if( item->ValidateL() )
-            {
-            // Transfer ownership of iBookmarks[i] to aItems
-            iBookmarks[i]->AddL( aShownItems, aHiddenItems );
-            }
-        else
-            {
-            // invalid items get deleted
-            delete item;
-            }
-        iBookmarks.Remove( i );
-        }
-
-    // Only first browser item is shown to the user.
-    if( iFirst )
-        {
-        User::LeaveIfError( aShownItems.Append( this ) );
-        }
-    else
-        {
-        User::LeaveIfError( aHiddenItems.Append( this ) );
-        }
-    }
-
-//  End of File