backupandrestore/backupengine/inc/sbesession.h
changeset 0 d0791faffa3f
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/backupandrestore/backupengine/inc/sbesession.h	Tue Feb 02 01:11:40 2010 +0200
@@ -0,0 +1,99 @@
+/**
+* Copyright (c) 2004-2009 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:
+* Declaration of CSBESession class.
+* 
+*
+*/
+
+
+
+/**
+ @file
+*/
+#ifndef __SBESESSION_H__
+#define __SBESESSION_H__
+
+namespace conn
+	{
+	class CDataOwnerInfo;
+	class CSBESession : public CSession2
+	/**
+    @internalComponent
+	@ingroup Server
+
+	A SBE client Session.
+	*/
+		{
+		public:
+			CSBESession();
+			virtual void CreateL();
+
+		private:
+			~CSBESession();
+			inline CSBEServer& Server() const;
+			void ServiceL(const RMessage2& aMessage);
+
+			void PrepDataOwnerInfoL(const RMessage2& aMessage);
+			void ReturnDataOwnerInfoL(const RMessage2& aMessage);
+			void PrepPublicFileListL(const RMessage2& aMessage);
+			void ReturnPublicFileListL(const RMessage2& aMessage);
+			void PrepPublicFileListRawL(const RMessage2& aMessage);
+			void ReturnPublicFileListRawL(const RMessage2& aMessage);
+			void PrepPublicFileListXMLL(const RMessage2& aMessage);
+			void ReturnPublicFileListXMLL(const RMessage2& aMessage);
+			void SetBURModeL(const RMessage2& aMessage);
+			void SetSIDListForPartialBURL(const RMessage2& aMessage);
+			void PrepSIDStatusL(const RMessage2& aMessage);
+			void ReturnSIDStatusL(const RMessage2& aMessage);
+			void RequestDataAsyncL(const RMessage2& aMessage);
+			void RequestDataSyncL(const RMessage2& aMessage);
+			void SupplyDataSyncL(const RMessage2& aMessage);
+			void GetExpectedDataSizeL(const RMessage2& aMessage);
+			void AllSnapshotsSuppliedL(const RMessage2& aMessage);
+			void AllSystemFilesRestoredL();
+			void PrepLargePublicFileListL(const RMessage2& aMessage);
+			void ReturnLargePublicFileListL(const RMessage2& aMessage);
+			
+			void ResetTransferBuf();
+
+		private:
+			/** Heap allocated descriptor for storing an externalised array upon a 
+			2 stage server-client descriptor send */
+			HBufC8* iTransferBuf;
+			
+			/** Heap allocated descriptor for storing a text string upon a 
+			2 stage server-client descriptor send */
+			HBufC* iTransferTextBuf;
+
+			/** Used in conjunction with iTransferBuf when passing back CDataOwnerInfo array 
+			so that message is completed on the second IPC call with the num of elements in
+			returned externalised array */
+			TInt iArrayCount;
+			
+			/** Message member used for asynchronous IPC calls */
+			RMessage2 iMessage;
+			
+			/** Finished flag used for storing data in a large public file list 2-part IPC call */
+			TBool iFinished;
+			
+			/** Count used for large public file list 2-part IPC call */
+			TInt iTotalEntries;
+			
+			/** Saves the externalised current entry for packing into the next message */
+			HBufC8* iExtCurEntry;
+		};
+	}
+
+#endif //__SBESESSION_H__