telephonyserverplugins/ctsydispatchlayer/test/ltsyskeleton_using_dispatcher/ltsyskeleton/src/creceivethreadmanager.cpp
branchRCL_3
changeset 65 630d2f34d719
parent 0 3553901f7fa8
child 66 07a122eea281
equal deleted inserted replaced
61:17af172ffa5f 65:630d2f34d719
     1 // Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
     1 // Copyright (c) 2008-2010 Nokia Corporation and/or its subsidiary(-ies).
     2 // All rights reserved.
     2 // All rights reserved.
     3 // This component and the accompanying materials are made available
     3 // This component and the accompanying materials are made available
     4 // under the terms of "Eclipse Public License v1.0"
     4 // under the terms of "Eclipse Public License v1.0"
     5 // which accompanies this distribution, and is available
     5 // which accompanies this distribution, and is available
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
    10 //
    10 //
    11 // Contributors:
    11 // Contributors:
    12 //
    12 //
    13 // Description:
    13 // Description:
    14 //
    14 //
       
    15 
       
    16 #include "OstTraceDefinitions.h"
       
    17 #ifdef OST_TRACE_COMPILER_IN_USE
       
    18 #include "creceivethreadmanagerTraces.h"
       
    19 #endif
    15 
    20 
    16 #include "creceivethreadmanager.h"
    21 #include "creceivethreadmanager.h"
    17 #include <ctsy/ltsy/ltsylogger.h>
    22 #include <ctsy/ltsy/ltsylogger.h>
    18 
    23 
    19 CReceiveThreadManager* CReceiveThreadManager::NewL(MLtsyReceiveThreadEventStateHandler& aEventHandler, MLtsyReceiveThreadObserver& aLifeObserver)
    24 CReceiveThreadManager* CReceiveThreadManager::NewL(MLtsyReceiveThreadEventStateHandler& aEventHandler, MLtsyReceiveThreadObserver& aLifeObserver)
    69 	}
    74 	}
    70  
    75  
    71  
    76  
    72  TInt CReceiveThreadManager::StartReceiveThreadFn(TAny* aArg)
    77  TInt CReceiveThreadManager::StartReceiveThreadFn(TAny* aArg)
    73  	{
    78  	{
    74  	LOG(_L8("StartReceiveThreadFn, thread id = %d"), RThread().Id().Id());
    79  	OstTraceDef1(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CRECEIVETHREADMANAGER_SPAWNRECEIVETHREADL_1, "StartReceiveThreadFn, thread id = %d", RThread().Id().Id());
    75  	
    80  	
    76 	// Create a cleanup stack object
    81 	// Create a cleanup stack object
    77 	CTrapCleanup* cleanup=CTrapCleanup::New();
    82 	CTrapCleanup* cleanup=CTrapCleanup::New();
    78 	if (cleanup==NULL)
    83 	if (cleanup==NULL)
    79 		return KErrNoMemory;
    84 		return KErrNoMemory;
    81  	//start the wait loop
    86  	//start the wait loop
    82  	CReceiveThreadWaitLoopSignaller* signaller = static_cast<CReceiveThreadWaitLoopSignaller*>(aArg);
    87  	CReceiveThreadWaitLoopSignaller* signaller = static_cast<CReceiveThreadWaitLoopSignaller*>(aArg);
    83  	TInt err =  signaller->WaitLoop();
    88  	TInt err =  signaller->WaitLoop();
    84  	
    89  	
    85  	delete cleanup;
    90  	delete cleanup;
    86  	LOG(_L8("StartReceiveThreadFn, thread id = %d, Terminated with err = %d"), RThread().Id().Id(), err);
    91  	OstTraceDefExt2(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CRECEIVETHREADMANAGER_SPAWNRECEIVETHREADL_2, "StartReceiveThreadFn, thread id = %d, Terminated with err = %d", RThread().Id().Id(), err);
    87  	return err;
    92  	return err;
    88  	}
    93  	}
    89 
    94 
    90  void CReceiveThreadManager::StopReceiveThread()
    95  void CReceiveThreadManager::StopReceiveThread()
    91  	{
    96  	{
   138 	{
   143 	{
   139 	iThread.Close();
   144 	iThread.Close();
   140 	User::LeaveIfError(iThread.Open(aID));
   145 	User::LeaveIfError(iThread.Open(aID));
   141 	iThread.Logon(iStatus);
   146 	iThread.Logon(iStatus);
   142 	SetActive();
   147 	SetActive();
   143 	LOG(_L8("CReceiveThreadLifeWatcher::LogonL.  Watching thread id = %d"), iThread.Id().Id());
   148 	OstTraceDef1(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CRECEIVETHREADLIFEWATCHER_LOGONL_1, "CReceiveThreadLifeWatcher::LogonL.  Watching thread id = %d", iThread.Id().Id());
   144 	}
   149 	}
   145 
   150 
   146 void CReceiveThreadLifeWatcher::RunL()
   151 void CReceiveThreadLifeWatcher::RunL()
   147 	{
   152 	{
   148 	TSYLOGENTRYEXIT;
   153 	TSYLOGENTRYEXIT;
   149 	LOG(_L8("CReceiveThreadLifeWatcher::RunL iThread = %d, iStatus=%d, exit reason = %d"), iThread.Id().Id(), iStatus.Int(), iThread.ExitReason() );
   154 	OstTraceDefExt3(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CRECEIVETHREADLIFEWATCHER_RUNL_1, "CReceiveThreadLifeWatcher::RunL iThread = %d, iStatus=%d, exit reason = %d", iThread.Id().Id(), iStatus.Int(), iThread.ExitReason() );
   150 	iReceiveThreadLifeObserver.HandleReceiveThreadLifeWatcherComplete(iStatus.Int());
   155 	iReceiveThreadLifeObserver.HandleReceiveThreadLifeWatcherComplete(iStatus.Int());
   151 	}
   156 	}
   152 
   157 
   153 void CReceiveThreadLifeWatcher::DoCancel()
   158 void CReceiveThreadLifeWatcher::DoCancel()
   154 	{
   159 	{