wapstack/wapmessageapi/sws/WapMessageApiAgent.h
branchRCL_3
changeset 66 07a122eea281
parent 65 630d2f34d719
child 67 4eff64595c44
child 70 4814c5a49428
--- a/wapstack/wapmessageapi/sws/WapMessageApiAgent.h	Tue Aug 31 16:23:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,205 +0,0 @@
-// Copyright (c) 2003-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:
-//
-
-#ifndef __MSGAPIAGENT_H__
-#define __MSGAPIAGENT_H__
-#include "ActiveSocket.h"
-#include "WapSwsTimeOut.h"
-
-class MProgressNotify
-/** 
-Interface from the ActiveSocket to MessageApiAgent
-@internalComponent
-@released
-@since v8.0
-*/
-	{
-	public:
-	/**
-	The interface that will be called when WDP pdu length and data are received by CActiveSocket.
-	@internalComponent
-	@param aMessage the message type received from CActiveSocket
-	@param aData the data received from CActiveSocket
-	*/
-	virtual void Notification(TInt aMessage, const TDesC8& aData) = 0;	
-	};
-
-class CWapAsyncCallBack : public CActive
-	{
-public:
-	CWapAsyncCallBack( const TCallBack& aCallBack, TInt aPriority );
-	~CWapAsyncCallBack();
-
-public: // API
-	void CallBack();
-
-private:
-	void RunL();
-	void DoCancel();
-
-private:
-	TCallBack iCallBack;
-	};
-
-class CWapMessageApiAgent : public CBase, public MTimeOutNotify, public MProgressNotify
-/** 
-The base class of CWspMessageApiAgent and CWdpMessageApiAgent, which handle Wsp and Wdp
-for SWS message APIs
-@internalComponent
-@released
-@since v8.0
-*/
-{
-public:
-	virtual ~CWapMessageApiAgent();
-	void ConstructL();
-	CActiveSocket* GetActiveSocketByBearer(Wap::TBearer aBearer);
-	CActiveSocket* GetActiveSocketByStatus(TWapMessageState aState);
-	TInt Connect(Wap::TBearer aBearer, Wap::TPort aPort, TBool aSecure);
-	TInt Connect(Wap::TBearer aBearer, Wap::TPort aPort, TBool aSecure, TInetAddr aInetAddr);
-	TInt Connect(Wap::TBearer aBearer, Wap::TPort aPort, TBool aSecure, TInt aSocketServHandle, RConnection* aConnection);
-	TInt Connect(const TDesC8& aRemoteHost, Wap::TPort aRemotePort, Wap::TBearer aBearer, TBool aSecure, TInetAddr aInetAddr);
-	TInt Connect(const TDesC8& aRemoteHost, Wap::TPort aRemotePort, Wap::TBearer aBearer, TBool aSecure);
-	TInt Connect(const TDesC8& aRemoteHost, Wap::TPort aRemotePort, Wap::TBearer aBearer, TBool aSecure, TInt aSocketServHandle, RConnection* aConnection);
-	TInt GetLocalPort(Wap::TPort& aPort);
-	TInt GetLocalAddress(HBufC8*& aLocalHost);
-	TInt GetBearer(Wap::TBearer& aBearer);
-	TInt GetServerAddress(HBufC8*& aRemoteHost);
-	virtual void TimerExpired();
-	void CancelRequest();
-	static TInt CompleteReading(TAny* aAgent);
-protected:
-	CWapMessageApiAgent(TWapMessageType aMessageType);
-	/**
-	RSocketServ instance used by all the bearers.
-	*/
-	RSocketServ iSocketServ;
-	/**
-	The array to contain all the bearers
-	*/
-	RPointerArray<CActiveSocket> iBearers;
-	/**
-	The Wdp and Wsp receiving timer.
-	*/
-	CTimeOutTimer* iTimeoutTimer;
-	/**
-	Flag the show if there is outstanding request.
-	*/
-	TBool iRequestActive;
-	/**
-	The pointer to Wap message client's request status
-	*/
-	TRequestStatus* iRequestStatus;
-	/**
-	The last error code of active socket in reading state
-	*/
-	TInt iLastReadingError;
-	/**
-	The asynchronous completion of reading
-	*/
-	CWapAsyncCallBack* iAsyncReadCompletion;
-	/**
-	The bearer that receives that last PDU
-	*/
-	Wap::TBearer iLastPduBearer;
-	/**
-	Flag to show if the API has been connected or not
-	*/
-	TBool iIsOpen;
-	/**
-	The type of the Wap message handled by this API agent.
-	*/
-	TWapMessageType iMessageType;
-private:
-	TInt DoCompleteReading();
-};
-
-class CWspMessageApiAgent : public CWapMessageApiAgent
-/** 
-The class to handle Wsp PDU for SWS message APIs
-@internalComponent
-@released
-@since v8.0
-*/
-{
-public:
-	static CWspMessageApiAgent* NewL();
-	CWspMessageApiAgent();
-	virtual ~CWspMessageApiAgent();
-	void ConstructL();
-	TInt SendWspMessage(Wap::TBearer aBearer, const TDesC8& aRemoteHost, Wap::TPort aRemotePort, TUint aMethod, const TDesC& aURI, const TDesC8& aReqHeaders, const TDesC8& aReqBody, TUint8 aTransactionId);
-	TInt SendWspMessage(TUint aMethod, const TDesC& aURI, const TDesC8& aReqHeaders, const TDesC8& aReqBody, TUint8 aTransactionId);
-	TInt ReceiveWspMessage(TDes8& aWspHeaders, TDes8& aWspBody, TPckgBuf<TUint8>& aPushIdPckg, TWSPStatus& aWspStatus, TRequestStatus& aReqStatus, TUint32 aTimeout);
-	virtual void Notification(TInt aMessage, const TDesC8& aData);
-private:
-	/**
-	The pointer to the WSP message client's requested header buffer
-	*/
-	TDes8* iClientReqHeaders;
-	/**
-	The pointer to the WSP message client's requested body buffer
-	*/
-	TDes8* iClientReqBody;
-	/**
-	The pointer to the WSP message client's requested transaction ID.
-	*/
-	TUint8*	iClientTransactionId;
-	/**
-	The pointer to the WSP message client's requested WSP status.
-	*/
-	TWSPStatus* iClientWspStatus;
-};
-
-class CWdpMessageApiAgent : public CWapMessageApiAgent
-/** 
-The class to handle Wdp PDU for SWS message APIs
-@internalComponent
-@released
-@since v8.0
-*/
-{
-public:
-	static CWdpMessageApiAgent* NewL();
-	CWdpMessageApiAgent();
-	virtual ~CWdpMessageApiAgent();
-	void ConstructL();
-	TInt ReceiveWdpMessage(TDes8& aRemoteHost, Wap::TPort& aRemotePort, TDes8& aBuffer, TBool& aTruncated, TRequestStatus& aReqStatus, TUint32 aTimeout);
-	TInt AwaitRecvDataSize(TPckg<TUint16>& aDataSizePckg, TRequestStatus& aReqStatus);
-	TInt SendWdpMessage(const TDesC8& aBuffer, const TDesC8& aRemoteHost, Wap::TPort aRemotePort, Wap::TBearer aBearer);
-	TInt SendWdpMessage(const TDesC8& aBuffer);
-	virtual void Notification(TInt aMessage, const TDesC8& aData);
-private:
-	/**
-	The pointer to Wdp message client's requested data buffer
-	*/
-	TDes8*	iClientPduBuffer;
-	/**
-	The pointer to Wdp message client's request data size
-	*/
-	TPckg<TUint16>* iClientDataSize;
-	/**
-	The pointer to client's requested remote host buffer
-	*/
-	TDes8* iClientRemoteHost;
-	/**
-	The pointer to client's requested remote port buffer
-	*/
-	Wap::TPort* iClientRemotePort;
-	/**
-	The pointer to client's requested flag.
-	*/
-	TBool* iClientTruncated;
-};
-#endif //__MSGAPIAGENT_H__