--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/datacommsserver/esockserver/ssock/SS_SVR.CPP Thu Dec 17 09:22:25 2009 +0200
@@ -0,0 +1,93 @@
+// Copyright (c) 1997-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:
+//
+
+#include <ss_pman.h>
+#include <es_ver.h>
+#include <commschan.h>
+#include <comms-infras/ss_log.h>
+#include <comms-infras/ss_thread.h>
+#include <comms-infras/ss_roles.h>
+#ifdef SYMBIAN_ENABLE_SPLIT_HEADERS
+#include <es_sock_internal.h>
+#endif
+#include <comms-infras/sockmes.h>
+#include "ss_secpol.h"
+
+using namespace CommsFW;
+
+//_LIT(KSocketServerName, "!Socket-Server");
+
+/*static*/ CSocketServer* CSocketServer::NewL(CWorkerThread* aOwnerThread)
+//
+// Create a new CSocketServer.
+//
+ {
+ CSocketServer* self = new (ELeave) CSocketServer(aOwnerThread, EActiveIpcPriority);
+ return self;
+ }
+
+CSocketServer::CSocketServer(CWorkerThread* aOwnerThread, TInt aPriority)
+/**
+ Constructor.
+*/
+: CCommonServer(aPriority, aOwnerThread, ESock::SocketServerPolicy, ESharableSessions, SOCKET_SERVER_NAME)
+ {
+ }
+
+CSocketServer::~CSocketServer()
+//
+// Destructor.
+//
+ {
+ }
+
+CSession2* CSocketServer::DoNewSessionL(const TProcessId& aProcessId, const TUidType& aProcessUid) const
+/*
+ Create a new client on this server.
+*/
+ {
+#ifdef _DEBUG
+ if(!iPostBootChecksRun)
+ {
+ iPostBootChecksRun = ETrue;
+ if(WorkerThread().Player())
+ {
+ static_cast<CPlayer*>(WorkerThread().Player())->RunPostBootChecks();
+ }
+ }
+#endif
+ return CSockSession::NewL(aProcessId, aProcessUid, WorkerThread().PitBoss().NextSessionUniqueId());
+ }
+
+TVersion CSocketServer::CurrentVersion() const
+/*
+ Create a new client on this server.
+*/
+ {
+ return TVersion(KES32MajorVersionNumber,KES32MinorVersionNumber,KES32BuildVersionNumber);
+ }
+
+CSocketScheduler* CSocketScheduler::New()
+/**
+ Create and install the active scheduler.
+*/
+ {
+
+ CSocketScheduler *pA=new CSocketScheduler;
+ __ASSERT_ALWAYS(pA!=NULL,Fault(EMainSchedulerError));
+ CSocketScheduler::Install(pA);
+ return pA;
+ }
+