sapi_mediamanagement/inc/mgserviceobserver.h
changeset 0 14df0fbfcc4e
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/sapi_mediamanagement/inc/mgserviceobserver.h	Mon Mar 30 12:51:10 2009 +0300
@@ -0,0 +1,141 @@
+/*
+* Copyright (c) 2007-2007 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of the License "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:  This class is the observer of CMgService class
+*
+*/
+
+
+#ifndef MGSERVICEOBSERVER_H
+#define MGSERVICEOBSERVER_H
+
+#include "mgservice.hrh"
+#include "mgoperationobserver.h"
+
+class CLiwGenericParamList;
+class MCLFItemListModel;
+
+
+
+
+// CLASS DECLARATION
+/**
+*  Service Observer is for observing operation events of the MG service class.
+*  CMgServiceObserver gets notified when asynchronous operations
+*  are completed. 
+* 
+*  
+*  @since  Series60 v3.2
+*/
+
+
+NONSHARABLE_CLASS( CMgServiceObserver ): public CBase, public MMgOperationObserver
+    {
+    public: 
+    
+    
+    	/**
+        * Returns the instance of CMgServiceObserver.
+        * @since  Series60 v3.2
+        * @param void
+        * @return void
+        */	
+ 
+  		static CMgServiceObserver* NewL();
+  		
+  		/**
+        * Destructor.
+        */
+        virtual ~CMgServiceObserver();
+        
+
+        /**
+        * Abstract method to get CMgService class events. This method is
+        * called when an event is received.
+        * @since  Series60 v3.2
+        * @param aListModel ClF Iterator contains the required result 
+        * @param aOperationEvent specifies the asynchronous event
+        * @param aError System wide error code if the operation did not
+        *        succeed.
+        */
+        virtual void MgNotifyL(TUint  aTransactionID, 
+                               MCLFItemListModel* aListModel,
+        					   TMgOperationEvent& aOperationEvent , 
+                               const TInt& aError );
+
+                
+        
+        /**
+        * method to set callback of consumer and pointer to 
+        * input/output parameter list.
+        * @since  Series60 v3.2
+        * @param  iCmdId  It represents whether the command if of request (FileInfo/File)
+        * @param  iInput  sent by the consumer at the time of request	
+        * @param  iOutput Result of given command will be 
+        *				  stored in given output parameter list
+        * @param  aCallback Contains the call back for Asynchronous request	
+        */
+        void SetMemberVar( const TMgCmdId& aCmdId,
+        				   const CLiwGenericParamList* aInput,
+        				   MLiwNotifyCallback* aCallBack );
+        				   
+          /**
+        * Cancel the pending asynchronous request
+        * @since  Series60 v3.2
+        * @param  void
+        * @return void
+        */
+        void CancelL();				   
+        
+    private :
+        
+         /**
+        * Constructor.
+        */
+        CMgServiceObserver();
+        
+        /**
+        * Two-phased constructor
+        * @since  Series60 v3.2
+        * @param  void
+        * @return void
+        */
+        void ConstructL();
+        
+        
+     private:
+        
+        /**
+     	* Store the instance of the callback of the Client
+     	*/
+  		MLiwNotifyCallback* 			iCallBack;
+  		
+  		/**
+     	* stores the pointer of aOutParamList 
+     	*/
+    	CLiwGenericParamList* 			iOutput; 
+    	
+    	/**
+     	* stores the pointer of aInParamList 
+     	*/
+    	const CLiwGenericParamList* 	iInput;
+    	 
+    	/**
+     	* command ID of ongoing request (Files/FilesInfo)
+     	*/
+    	TMgCmdId 						iCmdId;
+    
+   
+	};
+
+#endif MGSERVICEOBSERVER_H
\ No newline at end of file