devicediagnosticsfw/diagresultsdb/server/src/diagresultsdbserver.cpp
branchRCL_3
changeset 25 b183ec05bd8c
parent 24 13d7c31c74e0
child 26 19bba8228ff0
--- a/devicediagnosticsfw/diagresultsdb/server/src/diagresultsdbserver.cpp	Thu Aug 19 10:44:50 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,245 +0,0 @@
-/*
-* Copyright (c) 2007 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:  Class definition of 
-*
-*/
-
-
-#include "diagresultsdatabasecommon.h"
-#include "diagresultsdbserver.h"
-#include "diagresultsdbsession.h"
-
-#include <e32base.h>
-#include <e32uid.h>
-
-//Enter any new accepted UIDs here.
-const TInt KAcceptedUids[] = 
-    { 
-    0x2000B0E8, //Phone Doctor
-    0x2000E542, //Diagnostics application
-    0x102073E4,    // STIF
-#if defined( _DEBUG ) || defined( __WINSCW__ )
-    0x10282CDA,   //Results DB test app
-    0x20000FB1,   //EUnitAppEnv
-    0x20000FB2,   //EUnitEikApp
-    0x20000FB3,   //EUnitExeEnv
-    0xED80F513,   // DiagFramework Test app
-#endif // _DEBUG || __WINSCW__
-    0x2000F8E8    // donno
-    };
-
-const TInt KAcceptedUidCount = sizeof( KAcceptedUids ) / sizeof( TInt );
-
-// ---------------------------------------------------------------------------
-// Constructor.
-// ---------------------------------------------------------------------------
-//  
-CDiagResultsDbServer::CDiagResultsDbServer(TInt aPriority, 
-                                            const TPolicy &aPolicy)
-: CPolicyServer(aPriority, aPolicy), iContainerIndex( NULL ), iSessionCount(0)
-	{
-	}
-
-// ---------------------------------------------------------------------------
-// Destructor.
-// ---------------------------------------------------------------------------
-//  
-CDiagResultsDbServer::~CDiagResultsDbServer()
-	{
-	delete iContainerIndex;
-	}
-
-// ---------------------------------------------------------------------------
-// NewLC.
-// ---------------------------------------------------------------------------
-//  
-void CDiagResultsDbServer::NewLC(const TPolicy &aPolicy)
-	{
-	CDiagResultsDbServer *pS = new CDiagResultsDbServer( 
-	                                        CActive::EPriorityHigh, aPolicy );
-	CleanupStack::PushL( pS ); 
-	pS->StartL( KDiagResultsDatabaseServerName );
-	pS->ConstructL();
-	}
-
-// ---------------------------------------------------------------------------
-// ConstructL.
-// ---------------------------------------------------------------------------
-// 
-void CDiagResultsDbServer::ConstructL()
-	{
-	iContainerIndex = CObjectConIx::NewL();
-	}
-
-
-// ---------------------------------------------------------------------------
-// Create a new server session.
-// ---------------------------------------------------------------------------
-// 
-CSession2 *CDiagResultsDbServer::NewSessionL(const TVersion &aVersion, 
-                                        const RMessage2 &/*aMessage*/) const
-	{
-	// check we're the right version
-	TVersion v(KDiagResultsDatabaseServerMajor, KDiagResultsDatabaseServerMinor, 
-	                                            KDiagResultsDatabaseServerBuild);
-	if( !User::QueryVersionSupported( v, aVersion ) )
-		User::Leave( KErrNotSupported );
-	// make new session
-	return CDiagResultsDbSession::NewL((CDiagResultsDbServer*)this);
-	}
-
-// ---------------------------------------------------------------------------
-// Create new object container.
-// ---------------------------------------------------------------------------
-//
-CPolicyServer::TCustomResult CDiagResultsDbServer::CustomSecurityCheckL(
-                        const RMessage2 &aMsg, 
-                        TInt &/*aAction*/, 
-                        TSecurityInfo &/*aMissing*/)
-	{
-	CPolicyServer::TCustomResult result = EFail;
-	TInt sid = aMsg.SecureId();
-
-    for ( TInt i = 0; i < KAcceptedUidCount; ++i )
-        {
-        if ( sid == KAcceptedUids[i] )
-            {
-            if ( aMsg.HasCapability( ECapabilityReadDeviceData ) &&
-	             aMsg.HasCapability( ECapabilityWriteDeviceData ) )
-	            {
-	            result = EPass;   
-	            break; 
-	            }    
-            }
-        }
-	    
-	return result;
-	}
-
-// ---------------------------------------------------------------------------
-// Create new object container.
-// ---------------------------------------------------------------------------
-//
-CObjectCon* CDiagResultsDbServer::NewContainerL()
-	{
-	return iContainerIndex->CreateL();
-	}
-	
-
-// ---------------------------------------------------------------------------
-// Remove object from a container index,
-// ---------------------------------------------------------------------------
-// 
-void CDiagResultsDbServer::RemoveContainer(CObjectCon* aCon)
-	{
-	iContainerIndex->Remove( aCon );
-	}	
-
-// ---------------------------------------------------------------------------
-// Return the total amount of client sessions.
-// ---------------------------------------------------------------------------
-// 	
-TInt CDiagResultsDbServer::SessionCount()
-	{
-	return iSessionCount;
-	}
-
-// ---------------------------------------------------------------------------
-// Decrease session count when one client leaves and stop server if there are
-// no more clients.
-// ---------------------------------------------------------------------------
-// 
-void CDiagResultsDbServer::DecreaseSessionCount()
-	{
-	iSessionCount--;
-	if (iSessionCount == 0)
-		{
-		CActiveScheduler::Stop();
-		}
-	}
-
-// ---------------------------------------------------------------------------
-// One new session created.
-// ---------------------------------------------------------------------------
-// 	
-void CDiagResultsDbServer::IncreaseSessionCount()
-	{
-	iSessionCount++;
-	}		
-    
-// ---------------------------------------------------------------------------
-// Create cleanupStack and call RunserverL.
-// ---------------------------------------------------------------------------
-// 
-TInt CDiagResultsDbServer::RunServer()
-	{
-	__UHEAP_MARK;
-	//
-	CTrapCleanup* cleanup = CTrapCleanup::New();
-	TInt ret = KErrNoMemory;
-	if( cleanup )
-		{
-		TRAP( ret, CDiagResultsDbServer::RunServerL() );
-		delete cleanup;
-		}
-	//
-	__UHEAP_MARKEND;
-	if( ret != KErrNone )
-		{
-		// Signal the client that server creation failed
-		RProcess::Rendezvous( ret );
-		}
-	return ret;
-	}
-
-// ---------------------------------------------------------------------------
-// Create active scheduler and run server.
-// ---------------------------------------------------------------------------
-// 
-void CDiagResultsDbServer::RunServerL()
-	{
-	User::RenameThread(KDiagResultsDatabaseServerName);
-	
-	// Create and install the active scheduler we need
-	CActiveScheduler *as=new (ELeave)CActiveScheduler;
-	CleanupStack::PushL( as );
-	CActiveScheduler::Install(as);
-
-	// Create server
-	CDiagResultsDbServer::NewLC(policy);
-
-	// Initialisation complete, now signal the client
-
-	RProcess::Rendezvous(KErrNone);
-
-	// Ready to run
-	CActiveScheduler::Start();
-
-	// Cleanup the server and scheduler
-	CleanupStack::PopAndDestroy(2, as);
-	}
-
-
-// ---------------------------------------------------------------------------
-// Main function that is called when server(.EXE) is launched.
-// ---------------------------------------------------------------------------
-// 
-TInt E32Main()
-	{
-	TInt error(KErrNone);
-	error = CDiagResultsDbServer::RunServer();
-	return error;
-	}
-
-