upnpsharing/upnpcontentserver/inc/upnpunsharerao.h
branchIOP_Improvements
changeset 40 08b5eae9f9ff
parent 39 6369bfd1b60d
child 41 b4d83ea1d6e2
--- a/upnpsharing/upnpcontentserver/inc/upnpunsharerao.h	Mon Nov 01 13:44:24 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,301 +0,0 @@
-/*
-* Copyright (c) 2006-2007 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:      CUpnpUnsharerAo class definitions
-*
-*/
-
-
-
-
-
-#ifndef __UPNPUNSHARERAO_H__
-#define __UPNPUNSHARERAO_H__
-
-
-// INCLUDE FILES
-#include <upnpbrowsecriteria.h>
-#include <upnpcontainerlist.h>
-#include <upnpcontainer.h>
-#include <upnpitem.h>
-#include <upnpitemlist.h>
-#include <upnpfilesharing.h>
-#include <upnpmediaserverclient.h>
-#include "upnpcontentserverdefs.h"
-#include "upnpsharingcallback.h"
-
-// CLASS DECLARATION
-/**
- *  Active object class for unsharing UPnP containers in an incremental way
- *  @since S60 3.1
- */
-NONSHARABLE_CLASS( CUpnpUnsharerAo ): public CActive
-    {
-    /**
-     * Indicates the ongoing operation of the CUpnpUnsharerAo
-     */
-    enum THandlerOperations
-        {
-        EInitialize,
-        EQueryContainersFromMediaServer,
-        EQueryContainersFromMediaServerResult,
-        EQueryItemsFromMediaServer,
-        EQueryItemsFromMediaServerResult,
-        EUnshareItemList,
-        EUnshareContainer,
-        EUnshareContainerResult,
-
-        ENotActive
-        };
-
- public: // Constructors and destructor
-
-    /**
-     * C++ default constructor.
-     * @since S60 3.1
-     * @param aClientWait, reference to client wait, for signalling completion
-     * @param aPriority, Priority value for this active object
-     */
-    CUpnpUnsharerAo( MUpnpSharingCallback* aCallback, TInt aPriority );
-
-    /**
-     * Destructor.
-     */
-    virtual ~CUpnpUnsharerAo();
-
- protected:
-
-    /**
-     * Function is called when active request is ready
-     * @since S60 3.1
-     */
-    virtual void RunL();
-
-    /**
-     * Cancels active request
-     * @since S60 3.1
-     */
-    virtual void DoCancel();
-
-    /**
-     * Handle leaves from RunL function
-     * @since S60 3.1
-     */
-    TInt RunError( TInt aError );
-
- public: // new functions
-
-    /**
-     * Unshares all items and subcontainers from given container recursively
-     * Leaves the containers with aContainerId
-     * @since S60 3.1
-     * @param aContainerId Id of the container to empty
-     * @return Error code of the operation
-     */
-    TInt EmptyContainer( TInt& aContainerId );
-
-    /**
-     * Request this active ocject to stop as soon as is possible
-     * Stop is indicated to client via callback
-     * @since S60 3.1
-     * @param aStopType Type of stop operation
-     */
-    void RequestStop( MUpnpSharingCallback::TSharingStopType aStopType );
-
-    /**
-     * Return progress of the current unsharing operation 
-     * Progress is shown as procents
-     * @since S60 3.2.3
-     * @return the progress value
-     */
-    TInt UnSharingProgress( ) ;
-
-     /**
-      * Get total items of the all unsharing operation 
-      * @since S60 3.2.3
-      * @return a numbers of the unsharing items 
-      */
-    TInt TotalItemsForUnShare( ) ;
-    
- private:
-
-    /**
-     * Qyery list of containers from media server
-     * @since S60 3.1
-     * @param aId Id of the container to query containers from
-     */
-    void QueryContainersFromMediaServerL( TInt aId );
-
-    /**
-     * Handle the result of the container query
-     * @since S60 3.1
-     */
-    void QueryContainersFromMediaServerResultL();
-
-    /**
-     * Query items from certain container from media server
-     * @since S60 3.1
-     * @param aId Id of the container to query items from
-     */
-    void QueryContainerItemsL( TInt aId );
-
-    /**
-     * Handle the result of the container query
-     * @since S60 3.1
-     */
-    void QueryContainerItemsResultL();
-
-    /**
-     * Unshare the items in iItemList
-     * @since S60 3.1
-     */
-    void UnshareItemListL();
-
-    /**
-     * Unshare the container pointed by iCurrentContainerId
-     * @since S60 3.1
-     */
-    void UnshareContainerL();
-
-    /**
-     * Handle the result of container unshare
-     * @since S60 3.1
-     */
-    void UnshareContainerResultL();
-
-    /**
-     * Perform allocating of resources needed for processing upload events
-     * @since S60 3.1
-     * @param aContainerId The id of the initial container
-     * @return error code
-     */
-    TInt InitializeL( TInt& aContainerId );
-
-    /**
-     * Creates browse criteria for media server querys
-     * @since S60 3.1
-     */
-    CUpnpBrowseCriteria* CreateBrowseCriteriaLC() const;
-
-    /**
-     * Complete own async request
-     * @since S60 3.1
-     * @param aError Error code to complete request
-     */
-    void SelfComplete( TInt aError );
-
-    /**
-     * Clean the internal variables after error/when finished
-     * @since S60 3.1
-     */
-    void Cleanup();
-
-
-
- private: // data
-
-    /**
-     * Media server API to share files
-     * owned
-     */
-    CUpnpFileSharing* iFileSharing;
-
-    /**
-     * Media server session handle
-     */
-    RUpnpMediaServerClient iMediaServer;
-
-    /**
-     * Structure used to hold the containers queries from media server
-     * In practice it is used to hold "Images& VIdeos" & "Music" & "Uploaded"
-     * containers.
-     * Ordering from end to beginning
-     * owned
-     */
-    CUpnpContainerList*  iContainerList;
-
-    /**
-     * The id of the current container
-     */
-    TInt iCurrentContainerId;
-
-    /**
-     * Array for all container levels used in processing
-     * Ordering top-down.
-     */
-    RPointerArray<CUpnpContainerList> iContainerLists;
-
-    /**
-    * Structure used to hold possbile unwanted items when cleaning
-    * some folder
-    */
-    CUpnpItemList* iItemList;
-
-    /**
-     * This is started by client if needed. Stopped when profiling is ready
-     * not owned.
-     */
-    MUpnpSharingCallback* iCallback;
-
-    /**
-     * The container to process
-     */
-    TInt iUpContainer;
-
-    /**
-     * Total number of items in all operations to media server
-     */
-    TInt iAllTotalItems;   
-        
-    /**
-     * Total number of items in some operations to media server
-     */
-    TInt iTotalItems;
-
-    /**
-     * Total number of containers received in media server container query
-     */ 
-    TInt iTotalContainers;
-
-    /**
-     * The position when querying containers in segments
-     */ 
-    TInt iContainerBrowsePosition;
-
-    /**
-     * The postion when incrementally processing large number of items
-     */
-    TInt iExecStatus;
-
-    /**
-     * State of the active object used to determine the next operation after
-     * RunL completes
-     */
-    TInt iCurrentOperation;
-
-    /**
-     * Indicates if the client has requested stop
-     * Value is the stop type
-     */
-    TInt iStopRequested;
-
-    /**
-     * Indicates the last successfully unshared item
-     * Not used but required by CUpnpFileSharing API
-     */
-    TInt iUnsharePosition;
-    };
-
-#endif  // __UPNPUNSHARERAO_H__
-
-// End of file