--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/datacommsserver/esockserver/inc/ss_nodemessages_serviceprovider.h Thu Dec 17 09:22:25 2009 +0200
@@ -0,0 +1,149 @@
+// Copyright (c) 2008-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
+ @publishedPartner
+ @released
+*/
+
+#ifndef SYMBIAN_NODEMESSAGES_SERVICEPROVIDER_H
+#define SYMBIAN_NODEMESSAGES_SERVICEPROVIDER_H
+
+#include <comms-infras/ss_nodemessages.h>
+#include <elements/nm_messages_peer.h>
+#include <comms-infras/ss_nodemessages_peer.h>
+#include <comms-infras/ss_nodemessages_parameters.h>
+
+namespace ESock
+{
+class TCFServiceProvider : public ESock::TCFPeer
+ {
+ private:
+ enum
+ {
+ ECFStart = 1,
+ ECFStop = 2,
+ ECFStarted = 3,
+ ECFStopped = 4,
+ ECFCommsBinderRequest = 5,
+ ECFCommsBinderResponse = 6,
+ };
+protected:
+
+public:
+ enum { ERealmId = 0x10285F4F }; //UID allocated on 4/6/08 from KUidNodeMessageRealms
+ /*==========================================================================
+ [Name]: TCommsBinderRequest
+ [Semantics]: A request for a dataclient. Recipient has to respond with TCommsBinderResponse carrying
+ one of its dataclients.
+
+ [Type]: Request for TCommsBinderResponse.
+ [Fallible]: Yes.
+
+ [Structure]:
+ param: iValue - the semantics of this parameter depends on the recipient's plane:
+ CPR : - dataclient type, i.e.: EAttachToDefault/ECreateNew/EWaitForIncoming
+ SCPR: - protocol Id - could be left blank when not needed
+ MCPR: - attach flags (normal/monitor) 0 for start only
+ iFamilyBundle - parameters to assist the finding/creation of dataclient
+ ===========================================================================*/
+ typedef TMessageSigNumberDefaultFamilyBundleDefaultToNull<ECFCommsBinderRequest, TCFServiceProvider::ERealmId> TCommsBinderRequest;
+
+ /*==========================================================================
+ [Name]: TCommsBinderResponse
+ [Semantics]: Sent to the control client as a response to TCommsBinderRequest and
+ as a request for TBindToComplete
+
+ [Type]: Request for TBindToComplete.
+ Response to TCommsBinderRequest.
+ [Fallible]: Yes.
+
+ [Structure]:
+ param: iNodeId - the requested binder
+ ===========================================================================*/
+
+ typedef Messages::TMessageSigNodeId<ECFCommsBinderResponse, TCFServiceProvider::ERealmId> TCommsBinderResponse;
+
+ /*==========================================================================
+ [Name]: TStart
+ [Semantics]: Request to start the stack. The recipient should start the stack below it
+ and start its own layer.
+
+ [Type]: Request for TStarted.
+ [Fallible]: Yes.
+
+ [Structure]:
+ ===========================================================================*/
+ typedef Messages::TMessageSigVoid<ECFStart, TCFServiceProvider::ERealmId> TStart;
+ typedef Messages::TMessageSigVoid<ECFStarted, TCFServiceProvider::ERealmId> TStarted;
+
+ /*==========================================================================
+ [Name]: TStop
+ [Semantics]: Request to stop the stack. The recipient should stop its own layer
+ and subsequently stop the stack below it.
+
+ [Type]: Request for TStopped.
+ [Fallible]: No.
+
+ [Structure]:
+ param: iValue - stop code (reason).
+ ===========================================================================*/
+ typedef Messages::TMessageSigNumber<ECFStop, TCFServiceProvider::ERealmId> TStop;
+ typedef Messages::TMessageSigNumber<ECFStopped, TCFServiceProvider::ERealmId> TStopped;
+ };
+
+class TCFControlClient : public TCFPeer
+ {
+private:
+ enum
+ {
+ ECFGoneDown = 1,
+ ECFGoneUp = 2
+ };
+
+public:
+ enum { ERealmId = 0x10285F3F }; //UID allocated on 4/6/08 from KUidNodeMessageRealms
+
+ /*==========================================================================
+ [Name]: TGoneDown
+ [Semantics]: Notification about the stack below gone down. This is an equivallent of
+ of an unsolicited TStopped (i.e.: the stack below is notionally stopped).
+
+ [Type]: Notification
+
+ [Structure]:
+ param iValue1 - reason for going down.
+ iValue2 - Access Point id as provisioned with CAccessPointConfig::ProviderInfo()::APId()
+ ===========================================================================*/
+ typedef Messages::TMessageSigNumberDefaultNumberDefault<ECFGoneDown, TCFControlClient::ERealmId> TGoneDown;
+ /*==========================================================================
+ [Name]: TGoneUp
+ [Semantics]: Notification about the stack below gone up. This is an equivallent of
+ of an unsolicited TStarted (i.e.: the stack below is notionally started).
+
+ [Type]: Notification
+
+ [Structure]:
+ param None
+ ===========================================================================*/
+ typedef Messages::TMessageSigVoid<ECFGoneUp, TCFControlClient::ERealmId> TGoneUp;
+ };
+
+} //namespace ESock
+
+#endif
+//SYMBIAN_NODEMESSAGES_SERVICEPROVIDER_H
+