upnpavcontroller/upnpavcontrollerserver/src/upnpfilesharingactive.cpp
branchIOP_Improvements
changeset 40 08b5eae9f9ff
parent 39 6369bfd1b60d
child 41 b4d83ea1d6e2
--- a/upnpavcontroller/upnpavcontrollerserver/src/upnpfilesharingactive.cpp	Mon Nov 01 13:44:24 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,246 +0,0 @@
-/*
-* Copyright (c) 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:      AO for file sharing operations
-*
-*/
-
-
-
-
-
-
-// INCLUDE FILES
-// upnp stack api
-#include <upnpfilesharing.h>
-#include <upnpitem.h>
-
-// upnpframework / avcontroller helper api
-#include "upnpconstantdefs.h" // for upnp-specific stuff
-#include "upnpitemutility.h" // for GetResElements
-
-// upnpframework / internal api's
-#include "upnpsecaccesscontroller.h"
-
-// avcontroller internal
-#include "upnpfilesharingactive.h"
-
-_LIT( KComponentLogfile, "upnpavcontrollerserver.txt");
-#include "upnplog.h"
-
-
-// ======== MEMBER FUNCTIONS ========
-
-// --------------------------------------------------------------------------
-// CUPnPFileSharingActive::NewL
-// See upnpfilesharingactive.h
-// --------------------------------------------------------------------------
-CUPnPFileSharingActive* CUPnPFileSharingActive::NewL()
-    {
-    CUPnPFileSharingActive* self = new (ELeave) CUPnPFileSharingActive();
-    CleanupStack::PushL( self );
-    self->ConstructL();
-    CleanupStack::Pop( self );
-    return self;
-    }
-
-// --------------------------------------------------------------------------
-// CUPnPFileSharingActive::CUPnPFileSharingActive
-// See upnpfilesharingactive.h
-// --------------------------------------------------------------------------
-CUPnPFileSharingActive::CUPnPFileSharingActive():
-    CActive( EPriorityStandard )//,
-    {
-    CActiveScheduler::Add( this );
-    }
-
-// --------------------------------------------------------------------------
-// CUPnPFileSharingActive::~CUPnPFileSharingActive
-// See upnpfilesharingactive.h
-// --------------------------------------------------------------------------
-CUPnPFileSharingActive::~CUPnPFileSharingActive()
-    {
-    Cancel();
-    delete iFileSharing;
-    }
-
-// --------------------------------------------------------------------------
-// CUPnPFileSharingActive::ConstructL
-// See upnpfilesharingactive.h
-// --------------------------------------------------------------------------
-void CUPnPFileSharingActive::ConstructL()
-    {
-    __LOG( "CUPnPFileSharingActive::ConstructL" );
-    
-    iFileSharing = CUpnpFileSharing::NewL();    
-    }
-
-// --------------------------------------------------------------------------
-// CUPnPFileSharingActive::RunL
-// See upnpfilesharingactive.h
-// --------------------------------------------------------------------------
-void CUPnPFileSharingActive::RunL()
-    {
-    CActiveScheduler::Stop(); 
-    }
-    
-// --------------------------------------------------------------------------
-// CUPnPFileSharingActive::DoCancel
-// See upnpfilesharingactive.h
-// --------------------------------------------------------------------------
-void CUPnPFileSharingActive::DoCancel()
-    {
-    __LOG( "CUPnPFileSharingActive::DoCancel" );   
-    }
-    
-// --------------------------------------------------------------------------
-// CUPnPFileSharingActive::RunError
-// See upnpfilesharingactive.h
-// --------------------------------------------------------------------------
-TInt CUPnPFileSharingActive::RunError( TInt /*aError*/ )
-    {
-    
-    return KErrNone;
-    }
-
-// --------------------------------------------------------------------------
-// CUPnPFileSharingActive::ShareItemL
-// See upnpfilesharingactive.h
-// --------------------------------------------------------------------------
-void CUPnPFileSharingActive::ShareItemL( CUpnpItem& aItem )
-    {
-    __LOG( "CUPnPFileSharingActive::ShareItemL" );
-
-    TInt status = KErrNone;
-
-    // Allow access to the files listed in res-elements
-    SetAccesstoItemResourcesL( aItem, ETrue );
-
-    // Share the item
-    TRAP( status,
-          iFileSharing->ShareItemL( KContainerIdRoot, aItem, iStatus ) );
-    if( status == KErrNone )
-        {
-        SetActive();
-        CActiveScheduler::Start();
-        status = iStatus.Int();
-        }
-
-    // If the sharing failed
-    if( status != KErrNone )
-        {
-        // Deny access to the files listed in res-elements
-        SetAccesstoItemResourcesL( aItem, EFalse );
-        }
-
-    // Leave if the was an error
-    if( status != KErrNone )
-        {
-        User::Leave( status );
-        }
-
-    __LOG( "CUPnPFileSharingActive::ShareItemL - end" );
-    }
-    
-// --------------------------------------------------------------------------
-// CUPnPFileSharingActive::UnShareItemL
-// See upnpfilesharingactive.h
-// --------------------------------------------------------------------------
-void CUPnPFileSharingActive::UnShareItemL( const TDesC8& aId )
-    {
-    __LOG( "CUPnPFileSharingActive::ConstructL" );
-
-    TLex8 lex( aId );
-    TInt id;
-    User::LeaveIfError( lex.Val( id ) );
-    TInt status = KErrNone;
-
-    // Get the shared items data via Metadata API
-    CUpnpItem* item = CUpnpItem::NewL();
-    CleanupStack::PushL( item );
-    iFileSharing->GetSharedItemL( id, *item, iStatus );
-    SetActive();
-    CActiveScheduler::Start();
-    status = iStatus.Int();
-
-    // If the item's metadata was resolved succesfully
-    if( status == KErrNone )
-        {
-        // Unshare the item
-        TRAP( status, iFileSharing->UnshareItemL( id, iStatus ) );
-        if( status == KErrNone )
-            {
-            SetActive();
-            CActiveScheduler::Start();
-            status = iStatus.Int();
-            }
-        }
-
-    // If the unsharing succeeded
-    if( status == KErrNone )
-        {
-        // Deny access to the files listed in res-elements
-        SetAccesstoItemResourcesL( *item, EFalse );
-        }
-
-    // Clean up
-    CleanupStack::PopAndDestroy( item );
-    item = NULL;
-
-    // Leave if error
-    if( status != KErrNone )
-        {
-        User::LeaveIfError( status );
-        }
-
-    __LOG( "CUPnPFileSharingActive::UnShareItemL - end" );
-    }
-
-// --------------------------------------------------------------------------
-// CUPnPFileSharingActive::SetAccesstoItemResourcesL
-// See upnpfilesharingactive.h
-// --------------------------------------------------------------------------
-void CUPnPFileSharingActive::SetAccesstoItemResourcesL(
-                                                CUpnpItem& aItem,
-                                                TBool aAccessAllowed )
-    {
-    __LOG( "CUPnPFileSharingActive::SetAccesstoItemResourcesL" );
-
-    // Create security access controller
-    CUpnpSecAccessController* accessController = 
-                                    CUpnpSecAccessController::NewL();
-    CleanupStack::PushL( accessController );
-
-    // Get all filenames and set the access for those.
-    RUPnPElementsArray resElements;
-    UPnPItemUtility::GetResElements( aItem, resElements );
-    for( TInt i=0; i<resElements.Count(); i++ )
-        {
-        if( aAccessAllowed )
-            {
-            accessController->AddAllowedFile( resElements[i]->FilePath() );
-            }
-        else
-            {
-            accessController->RemoveAllowedFile(
-                                        resElements[i]->FilePath() );
-            }
-        }
-
-    // Clean up
-    resElements.Close();
-    CleanupStack::PopAndDestroy( accessController );
-    accessController = NULL;
-    }
-
-// End of file