applayerpluginsandutils/httpprotocolplugins/wspinc/MWspCOPushCallback.h
changeset 0 b16258d2340f
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/applayerpluginsandutils/httpprotocolplugins/wspinc/MWspCOPushCallback.h	Tue Feb 02 01:09:52 2010 +0200
@@ -0,0 +1,128 @@
+// 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:
+//
+
+/**
+ @file MWspCOPushCallback.h
+ @warning : This file contains Rose Model ID comments - please do not delete
+*/
+
+#ifndef __MWSPCOPUSHCALLBACK_H__
+#define __MWSPCOPUSHCALLBACK_H__
+
+// System includes
+#include <e32base.h>
+
+// Forward declarations
+class MHTTPDataSupplier;
+
+
+class MWspCOPushCallback
+/**
+@class MWspCOPushCallback
+@since			7.0
+The MWspCOPushInvoker and MWspCOPushCallback form the API that proides the
+WSP Connection-Orientated Session Servise Push and Confirmed Push facilities,
+as decribed in the WSP Specification, July 2001.
+
+The MWspCOPsuhInvoker interface is supplied by the Provider entity. The 
+MWspCOPsuhCallback interface is supplied by the Client entity. The Provider
+implements the communications necessary to send the primitives issued by the 
+Client to the Server, and from the Server to the Client.
+
+The use of the Push and Confirmed Push facilities during the lifetime of the
+WSP Session is dependent on these being successfully negotiated capabilities
+for that session.
+
+The Push MOR is also negotiated with the Server, and defines the number of 
+outstanding confirmed push invocations that can be active at one time.
+
+The object that implements the call-back API MWspCOPushCallback encapsulates
+the concept of a Push transaction. The Provider associates each of these 
+objects with a Push Id used to distinguish between push transactions during 
+a WSP session.
+
+The sending of Push information is initiated by the Server, but for this
+information to be passed onto the Client, the Provider must be informed that
+the Client is ready to receive Push transactions. This is achieved by 
+supplying the Provider with Push transaction objects that are prepared to 
+receive Push information - listening Push transaction objects. 
+
+In the case of the Confirmed Push facility, the number of these objects that
+the Client supplies to the Provider is decided by the negotiated Push MOR. 
+If the Push facility has been successfully negotiated, the Client must supply
+a further Push transaction object.
+@publishedAll
+@deprecated
+*/
+	{
+public:	// Methods
+
+/**
+	@fn				PushInd(const TDesC8& aPushHeader, const TDesC8& aPushBody) =0
+	Intended Usage	:	This represents the S-Push.ind primitive. The Provider 
+						issues this when it receives unconfirmed Push information.
+						The Client supplies a new listening Push transaction object,
+						via the MWspCOPushInvoker API, to maintain the correct 
+						number of these objects in the Provider.
+	@since			7.0
+	@param			aPushHeader	A buffer that contains the byte-encoded headers
+								for the Push information.
+	@param			aPushBody	A buffer that contains the body of the Push 
+								information.
+	@pre 			There is a listening Push transaction object.
+	@post			The number of listening Push transaction objects are reduced
+					by one.
+ */
+	virtual void PushInd(
+						const TDesC8&	aPushHeader,
+						const TDesC8&	aPushBody
+						) =0;
+
+/**
+	@fn				ConfirmedPushInd(const TDesC8& aPushHeader, const TDesC8& aPushBody) =0
+	Intended Usage	:	This represents the S-ConfirmedPush.ind primitive. The
+						Provider issues this when it receives Confirmed Push 
+						information. The Provider expects either the 
+						S-ConfirmedPush.res or the S-PushAbort.req primitives to
+						be issued from the Client.
+	@since			7.0
+	@param			aPushHeader	A buffer that contains the byte-encoded headers
+								for the Push information.
+	@param			aPushBody	A buffer that contains the body of the Push 
+								information.
+	@pre 			The WSP push transaction is in the Null state.
+	@post			The WSP push transaction is in the Receiving state.
+ */
+	virtual void ConfirmedPushInd(
+								 const TDesC8&	aPushHeader, 
+								 const TDesC8&	aPushBody
+								 ) =0;
+
+/**
+	@fn				PushAbortInd(TWspReason aReason) =0
+	Intended Usage	:	This represents the S-PushAbort.ind primitive. This is
+						issued when Confirmed Push information has been rejected.
+	@since			7.0
+	@param			aReason	A parameter that indicates the cause of the abort.
+							The value maps to the Reason type defined in the 
+							WSP Specification, July 2001. 
+	@pre 			The WSP push transaction is in the Receiving or Aborting state.
+	@post			The WSP push transaction is in the Null state.
+ */
+	virtual void PushAbortInd(TWspReason aReason) =0;
+
+	};
+
+#endif	// __MWSPCOPUSHCALLBACK_H__