--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/bearermanagement/S60MCPR/src/s60tiermanager.cpp Thu Dec 17 08:55:21 2009 +0200
@@ -0,0 +1,94 @@
+/*
+* Copyright (c) 2008 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: S60 IP TM implementation
+*
+*/
+
+/**
+@file s60tiermanager.cpp
+S60 IP TM implementation
+*/
+
+#define SYMBIAN_NETWORKING_UPS
+
+#include <comms-infras/ss_log.h>
+#include <comms-infras/coretiermanagerstates.h>
+#include <comms-infras/coretiermanageractivities.h>
+
+#include "s60tiermanager.h"
+#include "s60tiermanagerselector.h"
+#include "s60tmactivities.h"
+
+#ifdef SYMBIAN_TRACE_ENABLE
+ #define KS60TierMgrTag KESockMetaConnectionTag
+ // _LIT8(KS60TierMgrSubTag, "iptiermgr");
+#endif
+
+using namespace Messages;
+using namespace MeshMachine;
+using namespace ESock;
+using namespace NetStateMachine;
+
+// -----------------------------------------------------------------------------
+// CS60TierManager::NewL
+// -----------------------------------------------------------------------------
+//
+CS60TierManager* CS60TierManager::NewL( ESock::CTierManagerFactoryBase& aFactory )
+ {
+ return new (ELeave) CS60TierManager( aFactory,
+ S60TierManagerActivities::S60TierManagerMap::Self() );
+ }
+
+
+// -----------------------------------------------------------------------------
+// CS60TierManager::CS60TierManager
+// -----------------------------------------------------------------------------
+//
+CS60TierManager::CS60TierManager( ESock::CTierManagerFactoryBase& aFactory,
+ const MeshMachine::TNodeActivityMap& aActivityMap )
+ : CCoreTierManager( aFactory, aActivityMap )
+ {
+ LOG_NODE_CREATE(KS60TierMgrTag, CS60TierManager);
+ }
+
+// -----------------------------------------------------------------------------
+// CS60TierManager::~CS60TierManager
+// -----------------------------------------------------------------------------
+//
+CS60TierManager::~CS60TierManager()
+ {
+ LOG_NODE_DESTROY(KS60TierMgrTag, CS60TierManager);
+ }
+
+// -----------------------------------------------------------------------------
+// CS60TierManager::DoCreateProviderSelectorL
+// -----------------------------------------------------------------------------
+//
+MProviderSelector* CS60TierManager::DoCreateProviderSelectorL( const Meta::SMetaData& aSelectionPreferences )
+ {
+ return TS60ProviderSelectorFactory::NewSelectorL( aSelectionPreferences );
+ }
+
+// -----------------------------------------------------------------------------
+// CS60TierManager::ReceivedL
+// -----------------------------------------------------------------------------
+//
+void CS60TierManager::ReceivedL( const TRuntimeCtxId& aSender,
+ const TNodeId& aRecipient,
+ TSignatureBase& aMessage )
+ {
+ TNodeContext<CS60TierManager> ctx( *this, aMessage, aSender, aRecipient );
+ CCoreTierManager::Received( ctx );
+ User::LeaveIfError( ctx.iReturn );
+ }