upnpavcontroller/upnpavcontrollerserver/inc/upnpavcontrollersession.h
branchnew development branch with rendering state machine and other goodies
changeset 38 5360b7ddc251
parent 0 7f85d04be362
--- a/upnpavcontroller/upnpavcontrollerserver/inc/upnpavcontrollersession.h	Fri Sep 17 08:31:21 2010 +0300
+++ b/upnpavcontroller/upnpavcontrollerserver/inc/upnpavcontrollersession.h	Mon Nov 01 12:37:49 2010 +0200
@@ -1,124 +1,161 @@
-/*
-* 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:      AV Controller server session
-*
-*/
-
-
-
-
-
-
-#ifndef C_CUPNPAVCONTROLLERSESSION_H
-#define C_CUPNPAVCONTROLLERSESSION_H
-
-// INCLUDES
-#include "upnpavcontrollerglobals.h"
-
-#include <e32base.h>
-#include "upnpconnectionmonitorobserver.h"
-
-
-// FORWARD DECLARATIONS
-class CUpnpAVControllerServer;
-class CUPnPAVControllerImpl;
-class CUpnpAVDeviceExtended;
-class CUpnpDevice;
-
-// CLASS DECLARATION
-
-/** 
-  An instance of class CUpnpAVControllerSession is created for each client
-  */
-class CUpnpAVControllerSession :    public CSession2,
-                                    public MUPnPConnectionMonitorObserver
-{
-
-public: // New methods
-
-    /**
-    * Create a CUpnpAVControllerSession object using two phase construction,
-    * and return a pointer to the created object
-    * @result pointer to new session
-    */
-    static CUpnpAVControllerSession* NewL(
-        CUpnpAVControllerServer& aServer );
-
-    /**
-    * Create a CUpnpAVControllerSession object using two phase construction,
-    * and return a pointer to the created object
-    * @result pointer to new session
-    */
-    static CUpnpAVControllerSession* NewLC(
-        CUpnpAVControllerServer& aServer );
-
-    /**
-    * Destroy the object and release all memory objects
-    */
-    virtual ~CUpnpAVControllerSession();
-
-
-public: // From CSession
-    /**
-    * Called after a service request from client; from class CSession
-    * @param aMessage message from client
-    *        (containing requested operation and any data)
-    */
-    void ServiceL( const RMessage2& aMessage );
-public: // From MUPnPConnectionMonitorObserver
-
-    /**
-     * Handles UPnP device discoveries.
-     * @since Series 60 2.6
-     * @param aDevice Device that is discovered.
-     */
-    void DeviceDiscoveredL( CUpnpAVDeviceExtended& aDevice );
-
-    /**
-     * Handles UPnP device disappears.
-     * @since Series 60 2.6
-     * @param aDevice Device that disappeared.
-     */
-    void DeviceDisappearedL( CUpnpAVDeviceExtended& aDevice );
-
-
-    void ConnectionLost();
-
-private: // New methods
-
-    /**
-    * Perform the first phase of two phase construction 
-    */
-    CUpnpAVControllerSession( CUpnpAVControllerServer& aServer );
-
-    /**
-    * Perform the second phase construction of the object
-    */
-    void ConstructL() ;
-
-    /**
-    * Causes the client thread to panic
-    * @param panic code
-    */
-    void PanicClient( const RMessage2& aMessage, TInt aPanic ) const;
-
-private: 
-
-    /** @var iMediaServer pointer to Media Server */
-    
-    CUpnpAVControllerServer&    iAVControllerServer;
-    CUPnPAVControllerImpl*      iAVController;
-};
-
+/*
+* 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:      AV Controller server session
+*
+*/
+
+
+
+
+
+
+#ifndef C_CUPNPAVCONTROLLERSESSION_H
+#define C_CUPNPAVCONTROLLERSESSION_H
+
+// INCLUDES
+#include "upnpavcontrollerglobals.h"
+
+#include <e32base.h>
+
+
+// FORWARD DECLARATIONS
+class CUpnpAVControllerServer;
+class CUPnPAVControllerImpl;
+class CUpnpAVDeviceExtended;
+class CUpnpDevice;
+
+// CLASS DECLARATION
+
+/** 
+  An instance of class CUpnpAVControllerSession is created for each client
+  */
+class CUpnpAVControllerSession :    public CSession2
+{
+
+public: // New methods
+
+    /**
+    * Create a CUpnpAVControllerSession object using two phase construction,
+    * and return a pointer to the created object
+    * @result pointer to new session
+    */
+    static CUpnpAVControllerSession* NewL(
+        CUpnpAVControllerServer& aServer );
+
+    /**
+    * Create a CUpnpAVControllerSession object using two phase construction,
+    * and return a pointer to the created object
+    * @result pointer to new session
+    */
+    static CUpnpAVControllerSession* NewLC(
+        CUpnpAVControllerServer& aServer );
+
+    /**
+    * Destroy the object and release all memory objects
+    */
+    virtual ~CUpnpAVControllerSession();
+
+
+public: // From CSession
+    /**
+    * Called after a service request from client; from class CSession
+    * @param aMessage message from client
+    *        (containing requested operation and any data)
+    */
+    void ServiceL( const RMessage2& aMessage );
+	
+public:
+
+    /**
+     * Handles UPnP device discoveries.
+     * @since Series 60 2.6
+     * @param aDevice Device that is discovered.
+     */
+    void DeviceDiscoveredL( CUpnpAVDeviceExtended& aDevice );
+
+    /**
+     * Handles UPnP device disappears.
+     * @since Series 60 2.6
+     * @param aDevice Device that disappeared.
+     */
+    void DeviceDisappearedL( CUpnpAVDeviceExtended& aDevice );
+
+    /**
+     * Handles UPnP device icon download completions.
+     * @param aDevice Device that icon was downloaded.
+     */
+    void DeviceIconDownloadedL( CUpnpAVDeviceExtended& aDevice );
+
+    /**
+     * Handles connection lost.
+     */
+    void ConnectionLost();
+
+private: // New methods
+
+    /**
+    * Perform the first phase of two phase construction 
+    */
+    CUpnpAVControllerSession( CUpnpAVControllerServer& aServer );
+
+    /**
+    * Perform the second phase construction of the object
+    */
+    void ConstructL() ;
+
+    /**
+    * Causes the client thread to panic
+    * @param panic code
+    */
+    void PanicClient( const RMessage2& aMessage, TInt aPanic ) const;
+    
+    /**
+     * ServiceL method extended ( cyclomatic complexity reduced)
+     */
+    void ServiceAvTransportCommandsL( const RMessage2& aMessage );
+    
+    /**
+     * ServiceL method extended ( cyclomatic complexity reduced)
+     */
+    void ServiceAvTransportVariablesL( const RMessage2& aMessage );
+    
+    /**
+     * ServiceL method extended ( cyclomatic complexity reduced)
+     */
+    void ServiceDeviceL( const RMessage2& aMessage );
+    
+    /**
+     * ServiceL method extended ( cyclomatic complexity reduced)
+     */
+    void ServiceSearchandBrowseL( const RMessage2& aMessage );
+   
+    /**
+     * ServiceL method extended ( cyclomatic complexity reduced)
+     */
+    void ServiceDownloadandUploadL( const RMessage2& aMessage );
+    
+    /**
+     * ServiceL method extended ( cyclomatic complexity reduced)
+     */
+    void ServiceCommonL( const RMessage2& aMessage );
+
+private: 
+
+    /** @var iMediaServer pointer to Media Server */
+    
+    CUpnpAVControllerServer&    iAVControllerServer;
+    CUPnPAVControllerImpl*      iAVController;
+};
+
 #endif // C_CUPNPAVCONTROLLERSESSION_H
\ No newline at end of file