htiui/HtiCommPlugins/HtiBtCommPlugin/HtiBtCommServer/inc/HtiBtCommServerSession.h
--- a/htiui/HtiCommPlugins/HtiBtCommPlugin/HtiBtCommServer/inc/HtiBtCommServerSession.h Tue Apr 27 16:38:40 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,154 +0,0 @@
-/*
-* Copyright (c) 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: Server side session in HtiBtCommServer.
-*
-*/
-
-
-#ifndef CHTIBTCOMMSERVERSESSION_H
-#define CHTIBTCOMMSERVERSESSION_H
-
-// INCLUDES
-#include <e32std.h>
-#include <e32base.h>
-
-#include "BtSerialClient.h" // MBtSerialClientObserver
-
-// FORWARD DECLARATIONS
-
-class CHtiBtCommServer;
-
-// CLASS DECLARATION
-
-/**
-* This class represents a client session in the server.
-*
-* Server owns one instance of session (meaning only one client session
-* is allowed for this server).
-* Session allows only one outstanding read request and write request at a time.
-* Read request and write request may be outstanding simultaneously.
-*/
-class CHtiBtCommServerSession :
- public CSession2,
- public MBtSerialClientObserver
- {
-public:
-
- /**
- * Two phase constructor.
- *
- * @param aServer Pointer to the server instance
- */
- static CHtiBtCommServerSession* NewL( CHtiBtCommServer* aServer );
-
-private: // Construction
-
- /**
- * C++ default constructor.
- *
- * @param aClient
- * @param aServer
- */
- CHtiBtCommServerSession( CHtiBtCommServer* aServer );
-
- /**
- * Second phase construction.
- */
- void ConstructL();
-
- /**
- * Destructor.
- */
- ~CHtiBtCommServerSession();
-
-private: // From MBtSerialClientObserver
-
- void ConnectedToServer(TInt aError);
- void DisconnectedFromServer();
- void DataFromServer(const TDesC8& aData);
- void AllBufferedDataSent();
-
-private:
-
- /**
- * Handle client request. This is invoced by client server framework.
- * @param aMessage Message object describing client request
- */
- virtual void ServiceL(const RMessage2 &aMessage);
-
- /**
- * Determine client request type and delegate handling accordingly.
- * @param aMessage Message object describing client request
- */
- void DispatchMessageL(const RMessage2 &aMessage);
-
- void HandleConnectRequestL(const RMessage2& aMessage);
-
- /**
- * Handle client's send request.
- * Copies data from client address space to internal send buffer and starts
- * sending it.
- * @param aMessage Message object describing client request
- */
- void HandleSendRequestL(const RMessage2& aMessage);
-
- /**
- * Handle client's read request.
- * Wait for incoming data. Once received, copy its data to client's
- * address space and complete client's request.
- * @param aMessage Message object describing client request
- */
- void HandleReadRequestL(const RMessage2& aMessage);
-
- /**
- * Handle client's cancel requests.
- * Cancel either read or write operation depending on client request.
- * @param aMessage Message object describing client request
- */
- void HandleCancelRequestL(const RMessage2& aMessage);
-
- /**
- * Handle port number request
- * Write the port number of the currently connected service. If not
- * connected writes KErrDisconnected.
- */
- void HandlePortNumberRequestL(const RMessage2& aMessage);
-
-private: // Helpers
-
- void PanicClient(TInt aPanic) const;
- void ResetAll(TInt aCompletionCode);
- void TryCompleteReadRequest();
-
-private: // Data
-
- CHtiBtCommServer *iBtCommServer; // referenced
-
- RMessage2 iReadRequest;
- RMessage2 iWriteRequest;
- RMessage2 iConnectRequest;
- TBool iWriteRequestComplete; // ETrue: no previous pending write request
- TBool iReadRequestComplete; // ETrue: no previous pending read request
- TBool iConnectRequestComplete;
-
- CBtSerialClient* iBtClient;
-
- HBufC8* iIncomingDataBuf; // Coming from remote host
- HBufC8* iSendBuffer; // Sent to remote host
-
- };
-
-#endif // CHTIBTCOMMSERVERSESSION_H
-
-// End of File