applayerpluginsandutils/httpprotocolplugins/WspProtocolHandler/CWspCapabilityInfo.h
changeset 0 b16258d2340f
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/applayerpluginsandutils/httpprotocolplugins/WspProtocolHandler/CWspCapabilityInfo.h	Tue Feb 02 01:09:52 2010 +0200
@@ -0,0 +1,273 @@
+// Copyright (c) 2001-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 __CWSPCAPABILITYINFO_H__
+#define __CWSPCAPABILITYINFO_H__
+
+#include <e32base.h>
+#include <wsp/mwspcapabilityviewer.h>
+#include <wsp/mwspcapabilitysetter.h>
+
+class CWspAliasAddresses;
+class CWspExtendedMethods;
+class CWspHeaderCodePages;
+class CWspUnknownCapabilities;
+
+// Types used for arguments in this file (e.g. TWspBearer) are from the Wap namespace
+using namespace Wap;
+
+/** The CWspCapabilityInfo class implements the MWspCapabilityViewer and 
+	MWspCapabilitySetter APIs.
+	@see			MWspCapabilityViewer
+	@see			MWspCapabilitySetter
+*/
+//##ModelId=3C4C419F0099
+class CWspCapabilityInfo : public CBase, public MWspCapabilityViewer,
+										 public MWspCapabilitySetter
+	{
+public:	// Methods
+
+/** Static factory function.
+	@since			7.0
+	@leave			This function will leave if the object fails to be created.
+	@return			A pointer to created CWspCapabilityInfo object. 
+*/
+	//##ModelId=3C4C419F0252
+	static CWspCapabilityInfo* NewL();
+
+/** Destructor.
+	@since			7.0
+*/
+	//##ModelId=3C4C419F0249
+	~CWspCapabilityInfo();
+
+public:	// Methods from MWspCapabilityViewer
+
+/** 
+	@see			MWspCapabilityViewer
+*/
+	//##ModelId=3C4C419F0248
+	virtual const MWspAliasAddresses& GetAliasAddresses() const;
+
+/** 
+	@see			MWspCapabilityViewer
+*/
+	//##ModelId=3C4C419F0240
+	virtual const MWspExtendedMethods& GetExtendedMethods() const;
+
+/** 
+	@see			MWspCapabilityViewer
+*/
+	//##ModelId=3C4C419F023F
+	virtual const MWspHeaderCodePages& GetHeaderCodePages() const;
+
+/** 
+	@see			MWspCapabilityViewer
+*/
+	//##ModelId=3C4C419F023E
+	virtual TUint8 GetMethodMOR() const;
+
+/** 
+	@see			MWspCapabilityViewer
+*/
+	//##ModelId=3C4C419F0235
+	virtual TUint8 GetPushMOR() const;
+
+/** 
+	@see			MWspCapabilityViewer
+*/
+	//##ModelId=3C4C419F0234
+	virtual TUint8 GetProtocolOptions() const;
+
+/** 
+	@see			MWspCapabilityViewer
+*/
+	//##ModelId=3C4C419F022B
+	virtual TUint32 GetClientSDUSize() const;
+
+/** 
+	@see			MWspCapabilityViewer
+*/
+	//##ModelId=3C4C419F022A
+	virtual TUint32 GetServerSDUSize() const;
+
+/** 
+	@see			MWspCapabilityViewer
+*/
+	//##ModelId=3C4C419F0221
+	virtual TUint32 GetClientMessageSize() const;
+
+/** 
+	@see			MWspCapabilityViewer
+*/
+	//##ModelId=3C4C419F0220
+	virtual TUint32 GetServerMessageSize() const;
+
+/** 
+	@see			MWspCapabilityViewer
+*/
+	//##ModelId=3C4C419F0216
+	virtual const MWspUnknownCapabilities& GetUnknownCapabilities() const;
+
+public:	// Methods from MWspCapabilitySetter
+
+/** 
+	@see			MWspCapabilitySetter
+*/
+	//##ModelId=3C4C419F020C
+	virtual void Reset(TWspCapability aCapability = EAllCapabilities);
+
+/** 
+	@see			MWspCapabilitySetter
+*/
+	//##ModelId=3C4C419F01E4
+	virtual void AddAliasAddressL(TWspBearer aBearer, TUint16 aPort, const TDesC8& aAddress);
+
+/** 
+	@see			MWspCapabilitySetter
+*/
+	//##ModelId=3C4C419F01D0
+	virtual void AddExtendedMethodL(TUint8 aPDUType, const TDesC8& aMethodName);
+
+/** 
+	@see			MWspCapabilitySetter
+*/
+	//##ModelId=3C4C419F01B2
+	virtual void AddHeaderCodePageL(TUint8 aPageCode, const TDesC8& aPageName);
+
+/** 
+	@see			MWspCapabilitySetter
+*/
+	//##ModelId=3C4C419F01A8
+	virtual void SetMethodMOR(TUint8 aMOR);
+
+/** 
+	@see			MWspCapabilitySetter
+*/
+	//##ModelId=3C4C419F019E
+	virtual void SetPushMOR(TUint8 aMOR);
+
+/** 
+	@see			MWspCapabilitySetter
+*/
+	//##ModelId=3C4C419F018A
+	virtual void SetProtocolOptions(TUint8 aProtocolOptions);
+
+/** 
+	@see			MWspCapabilitySetter
+*/
+	//##ModelId=3C4C419F0180
+	virtual void SetClientSDUSize(TUint32 aSize);
+
+/** 
+	@see			MWspCapabilitySetter
+*/
+	//##ModelId=3C4C419F016C
+	virtual void SetServerSDUSize(TUint32 aSize);
+
+/** 
+	@see			MWspCapabilitySetter
+*/
+	//##ModelId=3C4C419F0162
+	virtual void SetClientMessageSize(TUint32 aSize);
+
+/** 
+	@see			MWspCapabilitySetter
+*/
+	//##ModelId=3C4C419F0158
+	virtual void SetServerMessageSize(TUint32 aSize);
+
+/** 
+	@see			MWspCapabilitySetter
+*/
+	//##ModelId=3C4C419F013B
+	virtual void AddUnknownCapabilityL(const TDesC8& aIdentifier, const TDesC8& aValue);
+
+private:	// Methods
+
+/** 
+	Default constructor.
+	@since			7.0
+*/
+	//##ModelId=3C4C419F013A
+	CWspCapabilityInfo();
+
+/**Second phase construction function. Does any required
+						allocations needed to initialise object.
+	@since			7.0
+*/
+	//##ModelId=3C4C419F0139
+	void ConstructL();
+
+private:	// Attributes
+
+	/** The set of alias addresses.
+	*/
+	//##ModelId=3C4C419F012F
+	CWspAliasAddresses*			iAliasAddresses;
+
+	/** The set of extended methods.
+	*/
+	//##ModelId=3C4C419F011D
+	CWspExtendedMethods*		iExtendedMethods;
+
+	/** The set of header code pages.
+	*/
+	//##ModelId=3C4C419F0111
+	CWspHeaderCodePages*		iHeaderCodePages;
+
+	/** The method MOR value.
+	*/
+	//##ModelId=3C4C419F0107
+	TUint8						iMethodMOR;
+
+	/** The push MOR value.
+	*/
+	//##ModelId=3C4C419F00F5
+	TUint8						iPushMOR;
+
+	/** The set of protocol options.
+	*/
+	//##ModelId=3C4C419F00EB
+	TUint8						iProtocolOptions;
+
+	/** The Client SDU size.
+	*/
+	//##ModelId=3C4C419F00DF
+	TUint32						iClientSDUSize;
+
+	/** The Server SDU size.
+	*/
+	//##ModelId=3C4C419F00CD
+	TUint32						iServerSDUSize;
+
+	/** The Client message size.
+	*/
+	//##ModelId=3C4C419F00C3
+	TUint32						iClientMessageSize;
+
+	/** The Server message size.
+	*/
+	//##ModelId=3C4C419F00B9
+	TUint32						iServerMessageSize;
+
+	/** The set of unknown capabilities.
+	*/
+	//##ModelId=3C4C419F00B0
+	CWspUnknownCapabilities*	iUnknownCapabilities;
+
+	};
+
+#endif	// __CWSPCAPABILITYINFO_H__