syncmlfw/syncservice/SRC/SyncService.cpp
branchRCL_3
changeset 25 b183ec05bd8c
parent 24 13d7c31c74e0
child 26 19bba8228ff0
--- a/syncmlfw/syncservice/SRC/SyncService.cpp	Thu Aug 19 10:44:50 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,328 +0,0 @@
-/*
-* Copyright (c) 2005 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:  Client for DS and DM initiated syncs
-*
-*/
-
-
-
-// INCLUDE FILES
-
-#include <bldvariant.hrh>
-
-#include <centralrepository.h>
-#include <SyncMLNotifierDomainCRKeys.h>
-#include <SyncServiceSession.h>
-#include <SyncServiceParams.h>
-#include <SyncService.h>
-#include <SyncServiceConst.h>
-#include "SyncServiceDebug.h"
-
-#include <apgcli.h>
-#include <AknServerApp.h>
-#include <barsread2.h>
-
-// ----------------------------------------------------------------------------
-// RSyncService::StartSyncL
-// ----------------------------------------------------------------------------
-//
-void RSyncService::StartSyncL( TSyncServiceParam aParam )
-	{
-	FLOG( _L( "[RSyncService] StartSyncL" ) );
-	
-	TSyncParameters parameters;
-	parameters.iCommand = KSyncServCmdStartSync;
-    parameters.iJobId = aParam.iJobId;
-    parameters.iProfileId = aParam.iProfileId;
-    parameters.iSilent = aParam.iSilent;
-    TInt err = 
-		SendReceive( ESyncServiceCommand, TIpcArgs( parameters.iCommand,
-		                                            parameters.iJobId,
-		                                            parameters.iProfileId,
-		                                            parameters.iSilent ) );
-	User::LeaveIfError( err );
-	}
-
-// ----------------------------------------------------------------------------
-// RSyncService::EnableProgressNoteL
-// ----------------------------------------------------------------------------
-//
-void RSyncService::EnableProgressNoteL( TBool aEnabled )
-	{
-	FLOG( _L("[RSyncService] EnableProgressNoteL") );
-
-	TSyncParameters parameters;
-	parameters.iCommand = KSyncServCmdShowProgress;
-
-    if ( aEnabled )
-        {
-        parameters.iJobId = KSyncServEnabled;
-        }
-    else
-        {
-        parameters.iJobId = KSyncServDisabled;
-        }
-    
-    TInt err = 
-		SendReceive( ESyncServiceCommand, TIpcArgs( parameters.iCommand,
-		                                            parameters.iJobId,
-		                                            parameters.iProfileId,
-		                                            parameters.iSilent ) );
-	User::LeaveIfError( err );
-	}
-
-// ----------------------------------------------------------------------------
-// RSyncService::ServiceUid
-// ----------------------------------------------------------------------------
-//
-TUid RSyncService::ServiceUid() const
-	{
-	FLOG( _L( "[RSyncService] ServiceUid" ) );
-	
-	return TUid::Uid( KSyncServiceUid );
-	}
-
-// ----------------------------------------------------------------------------
-// CSyncService::CSyncService
-// ----------------------------------------------------------------------------
-//
-CSyncService::CSyncService( )
-	{
-	FLOG( _L( "[CSyncService] CSyncService" ) );
-	
-	}
-
-// ----------------------------------------------------------------------------
-// CSyncService::~CSyncService
-// ----------------------------------------------------------------------------
-//
-CSyncService::~CSyncService( )
-	{
-	FLOG( _L( "[CSyncService] ~CSyncService" ) );
-	
-	delete iMonitor;
-	iService.Close();
-	}
-
-// ----------------------------------------------------------------------------
-// CSyncService::NewL
-// ----------------------------------------------------------------------------
-//
-EXPORT_C CSyncService* CSyncService::NewL( MAknServerAppExitObserver* aObserver,
-                                           TUint aServiceId )
-    {
-    FLOG( _L( "[CSyncService] NewL" ) );
-    
-	CSyncService* self = new(ELeave) CSyncService();
-	CleanupStack::PushL(self);
-    self->ConstructL( aObserver, aServiceId );
-	CleanupStack::Pop(self);
-	return self;
-    }
-
-// ----------------------------------------------------------------------------
-// CSyncService::ConstructL
-// ----------------------------------------------------------------------------
-//
-void CSyncService::ConstructL( MAknServerAppExitObserver* /*aObserver*/,
-                               TUint aServiceId )
-    {
-	FLOG( _L( "[CSyncService] ConstructL" ) );
-    iServiceId = aServiceId;
-    }
-
-// ----------------------------------------------------------------------------
-// CSyncService::StartSyncL
-// ----------------------------------------------------------------------------
-//
-EXPORT_C TUid CSyncService::StartSyncL( TSyncServiceParam aParam )
-    {
-    FLOG( _L( "[CSyncService] StartSyncL" ) );
-
-    iServiceId = aParam.iServiceId;
-	iUid = DiscoverL( iServiceId );
-	
-    TInt error = KErrNotFound;
-        
-    if( iService.ServerName().Length() > 0 )
-        {
-        FLOG( _L( "[CSyncService] ConstructL connect to existing app" ) );
-  	    TRAP( error, iService.StartSyncL( aParam ) );
-  	    if ( error == KErrNone )
-  	        {
-  	        return iUid;
-  	        }
-        }
-   	if ( error )
-		{
-		TFullName aServerName;
-		if ( iServiceId == KDevManServiceStart )
-		    {
-    		CRepository* centrep = NULL;
-    		centrep = CRepository::NewL( KCRUidNSmlNotifierDomainKeys );
-    		centrep->Get( KNSmlDMAppName, aServerName );
-    		delete centrep;
-		    }
-		else
-		    {
-		    aServerName = KDataSyncServiceName;
-		    }
-        FLOG( _L( "[CSyncService] ConstructL connect to existing app with predefined name" ) );
-        iService.Close();
-		TRAP( error, iService.ConnectExistingByNameL( aServerName ) );
-		}
-   	if ( error )
-		{
-		FLOG( _L( "[CSyncService] ConstructL connect to new app" ) );
-    	TRAP( error, iService.ConnectNewAppL( iUid ) );
-    	if( error )
-    		{
-    		FLOG( _L( "[CSyncService] ConnectNewAppL: Error not supported" ) );
-    		User::Leave( KErrNotSupported );
-    		}
- 		}
-    
-    iService.StartSyncL( aParam );
-    return iUid;
-    }
-
-// ----------------------------------------------------------------------------
-// CSyncService::EnableProgressNoteL
-// ----------------------------------------------------------------------------
-//
-EXPORT_C void CSyncService::EnableProgressNoteL( TBool aEnabled )
-    {
-    FLOG( _L( "[CSyncService] EnableProgressNoteL" ) );
-    
-    TFullName DmAppName;
-    CRepository* centrep = NULL;
-    centrep = CRepository::NewL( KCRUidNSmlNotifierDomainKeys );
-    centrep->Get( KNSmlDMAppName, DmAppName );
-    delete centrep;
-    
-    if( iService.ServerName().Length() > 0 )
-        {
-		TRAPD(error, iService.EnableProgressNoteL( aEnabled ) );
-		if ( error != KErrNone )
-		    {
-    		TFullName aServerName;
-    		if ( iServiceId == KDevManServiceStart )
-    		    {
-                aServerName = DmAppName;
-    		    }
-    		else
-    		    {
-    		    aServerName = KDataSyncServiceName;
-    		    }
-            FLOG( _L( "[CSyncService] EnableProgressNoteL connect to existing app with predefined name" ) );
-            iService.Close();
-    		iService.ConnectExistingByNameL( aServerName );        
-            iService.EnableProgressNoteL( aEnabled );
-		    }
-        }
-    else
-        {
-        // Sync has been started from APP UI so connect to the service and enable progressnote
-		TFullName aServerName;
-		if ( iServiceId == KDevManServiceStart )
-		    {
-		    aServerName = DmAppName;
-		    }
-		else
-		    {
-		    aServerName = KDataSyncServiceName;
-		    }
-        FLOG( _L( "[CSyncService] EnableProgressNoteL connect to existing app with predefined name" ) );
-		iService.ConnectExistingByNameL( aServerName );        
-        iService.EnableProgressNoteL( aEnabled );
-        }
-    FLOG( _L( "[CSyncService] EnableProgressNoteL" ) );
-    }
-
-// ----------------------------------------------------------------------------
-// CSyncService::DiscoverL
-// ----------------------------------------------------------------------------
-//
-TUid CSyncService::DiscoverL( TUint aServiceId )
-	{
-	FLOG( _L( "[CSyncService] DiscoverL" ) );
-	
-	CApaAppServiceInfoArray* services = NULL;	
-	RApaLsSession ls;
-	TUid appUid = TUid::Uid( 0x0 ); // Set the uid as NULL
-	
-	if( ls.Connect() == KErrNone )
-		{
-	    CleanupClosePushL( ls );
-		TInt ret = ls.GetServerApps( TUid::Uid( KSyncServiceUid ) );
-
-		if( ret != KErrNone )
-			{
-		    CleanupStack::PopAndDestroy( );  // closes RApaLsSession		
-		    return appUid; // return NULL appUid
-			}
-
-		services = ls.GetServiceImplementationsLC( TUid::Uid( KSyncServiceUid ) );			
-		
-		if( services )
-			{
-			TArray<TApaAppServiceInfo> s = services->Array( );
-			
-			TInt count = s.Count( );
-		
-			if( count != 0)
-				{	// 
-				for( TInt i = 0; i < count; i++ )
-					{
-					if( TryMatchL( s[i], appUid, aServiceId ) )
-						{ // If one of the services match, return the uid set by TryMatchL
-						break;
-						}
-					}
-				}		
-			}
-	    CleanupStack::PopAndDestroy( 2 );  // destroys services + closes RApaLsSession
-		}
-	return appUid;
-	}
-
-// ----------------------------------------------------------------------------
-// CSyncService::TryMatchL
-// ----------------------------------------------------------------------------
-//
-TBool CSyncService::TryMatchL( const TApaAppServiceInfo aInfo,
-                               TUid& aAppUid,
-                               TUint aServiceId )
-	{
-	FLOG( _L( "[CSyncService] TryMatchL" ) );
-	
-	RResourceReader r;
-	r.OpenLC( aInfo.OpaqueData() );
-
-	TInt serviceType = r.ReadUint32L( ); // the service type (sync start)
-
-    CleanupStack::PopAndDestroy( );				
-	
-	if( serviceType == aServiceId )
-		{
-		aAppUid.iUid = aInfo.Uid( ).iUid;
-		FLOG( _L( "[CSyncService] TryMatchL return ETrue" ) );
-		return ETrue;
-		}
-    
-    FLOG( _L( "[CSyncService] TryMatchL return EFalse" ) );
-	return EFalse;	
-	}
-	
-// End of file