--- a/hti/HtiServicePlugins/HtiIpProxyServicePlugin/IPProxyEngine/Src/Csocket.h Thu Jul 15 20:25:38 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,187 +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: General purpose socket implementetion
-*
-*/
-
-
-
-#ifndef CSOCKET_H
-#define CSOCKET_H
-
-// INCLUDES
-#include <e32base.h>
-#include "MSocketWriterObserver.h"
-#include "MSocketReaderObserver.h"
-#include "MSocket.h"
-
-// FORWARD DECLARATIONS
-class CSocketWriter;
-class CSocketReader;
-
-// CLASS DECLARATION
-
-/**
-* General purpose socket implementetion.
-* With this class the client can write and receive data
-* to and from the opened RSocket object.
-*/
-NONSHARABLE_CLASS( CSocket ) : public CBase,
- public MSocketWriterObserver,
- public MSocketReaderObserver,
- public MSocket
- {
- public: // Constructors and destructor
-
- /**
- * Factory function.
- * @param aSocket Opened RSocket instance that is used to read and write
- * data.
- * @param aUDPRemotePort Remote UDB port.
-
- */
- static CSocket* NewL( RSocket* aSocket, TInt aUDPRemotePort = -1 );
-
- /**
- * Factory function.
- * @param aSocket Opened RSocket instance that is used to read and write
- * data.
- * @param aUDPRemotePort Remote UDB port.
- */
- static CSocket* NewLC( RSocket* aSocket, TInt aUDPRemotePort = -1 );
-
- /**
- * Destructor.
- */
- virtual ~CSocket();
-
- public: // New functions
-
- /**
- * @return RSocket object
- */
- RSocket* GetRSocket();
-
- /**
- * @return Local TCP port.
- */
- TUint LocalPort() const;
-
- /**
- * @return Remote TCP port.
- */
- TUint RemotePort() const;
-
- /**
- * Sets observer.
- * @param aObserver Pointer to observer.
- */
- void SetObserver( MSocketObserver* aObserver );
-
- /**
- * Sets the ownership mode of RSocket object. If set ETrue
- * the socket will be closed and RSocket object will be deleted
- * in the destruction.
- * @param aHasOwnership Ownership mode.
- */
- void SetSocketOwnershipMode( TBool aHasOwnership );
-
- /**
- * Starts receiving data.
- */
- void IssueRead();
-
- /**
- * Cancels all pending requests.
- */
- void Cancel();
-
- /*
- * Returns the protocol information of the socket
- */
- void SocketInfo( TProtocolDesc& aDesc) const;
-
- /*
- * Is this a UDP socket
- */
- TBool IsUDP() const;
-
- public: // From MSocketWriter
- /**
- * Issues writing data to socket.
- * @param aData Data to be written.
- */
- void WriteL( const TDesC8& aData );
-
- protected: // From MSocketReaderObserver
- /**
- * From MSocketReaderObserver.
- * Data has been received.
- * @param aData Received data.
- */
- void DataReceivedL( const TDesC8& aData );
-
- /**
- * From MSocketReaderObserver.
- * Notifies that error has occurred.
- * @param aErrorCode Error code.
- */
- void ReaderErrorL( TInt aErrorCode );
-
- /**
- * From MSocketWriterObserver.
- * Notifies that error has occurred.
- * @param aErrorCode Error code.
- */
- void WriterErrorL( TInt aErrorCode );
-
- /**
- * From MSocketWriterObserver.
- * Notifies that all data has succesfully been written.
- */
- void BufferUnderrunL();
-
- /**
- * From MSocketReaderObserver and MSocketWriterObserver.
- * Notifies that the observer has leaved while executing the callback
- * function.
- * @param aLeaveCode Leave code.
- */
- void ObserverLeaved( TInt aLeaveCode );
-
-
- private:
-
- /**
- * Default constructor.
- */
- CSocket( RSocket* aSocket, TInt aUDPRemotePort = -1 );
-
- /**
- * 2nd phase constructor.
- */
- void ConstructL();
-
- private: // Data
- RSocket* iSocket;
- CSocketWriter* iSocketWriter;
- CSocketReader* iSocketReader;
- MSocketObserver* iObserver;
- TBool iHasOwnership;
- const TInt iUDPRemotePort;
- };
-
-#endif // CSOCKET_H
-
-// End of File