23 #include "harvestercommon.h" |
23 #include "harvestercommon.h" |
24 #include "harvesterlog.h" |
24 #include "harvesterlog.h" |
25 #include "harvesterao.h" |
25 #include "harvesterao.h" |
26 #include "harvesterblacklist.h" |
26 #include "harvesterblacklist.h" |
27 #include "mdsactivescheduler.h" |
27 #include "mdsactivescheduler.h" |
|
28 #include "OstTraceDefinitions.h" |
|
29 #ifdef OST_TRACE_COMPILER_IN_USE |
|
30 #include "harvesterserverTraces.h" |
|
31 #endif |
|
32 |
28 |
33 |
29 // ---------------------------------------------------------------------------------------- |
34 // ---------------------------------------------------------------------------------------- |
30 // Server's policy here |
35 // Server's policy here |
31 // ---------------------------------------------------------------------------------------- |
36 // ---------------------------------------------------------------------------------------- |
32 |
37 |
192 // --------------------------------------------------------------------------- |
197 // --------------------------------------------------------------------------- |
193 // |
198 // |
194 void CHarvesterServer::ConstructL() |
199 void CHarvesterServer::ConstructL() |
195 { |
200 { |
196 WRITELOG( "CHarvesterServer::ConstructL() - begin" ); |
201 WRITELOG( "CHarvesterServer::ConstructL() - begin" ); |
|
202 OstTrace0( TRACE_NORMAL, CHARVESTERSERVER_CONSTRUCTL, "CHarvesterServer::ConstructL - begin" ); |
|
203 |
197 StartL( KHarvesterServerName ); |
204 StartL( KHarvesterServerName ); |
198 iHarvesterAO = CHarvesterAO::NewL(); |
205 iHarvesterAO = CHarvesterAO::NewL(); |
199 |
206 |
200 RProcess process; |
207 RProcess process; |
201 process.SetPriority( EPriorityBackground ); |
208 process.SetPriority( EPriorityBackground ); |
205 iPauseObserverAO = CPauseObserverAO::NewL( *this ); |
212 iPauseObserverAO = CPauseObserverAO::NewL( *this ); |
206 |
213 |
207 // create shutdown observer |
214 // create shutdown observer |
208 iShutdownObserver = CHarvesterShutdownObserver::NewL( *this ); |
215 iShutdownObserver = CHarvesterShutdownObserver::NewL( *this ); |
209 |
216 |
|
217 OstTrace0( TRACE_NORMAL, DUP1_CHARVESTERSERVER_CONSTRUCTL, "CHarvesterServer::ConstructL - end" ); |
210 WRITELOG( "CHarvesterServer::ConstructL() - end" ); |
218 WRITELOG( "CHarvesterServer::ConstructL() - end" ); |
211 } |
219 } |
212 |
220 |
213 // --------------------------------------------------------------------------- |
221 // --------------------------------------------------------------------------- |
214 // Pause |
222 // Pause |
215 // --------------------------------------------------------------------------- |
223 // --------------------------------------------------------------------------- |
216 // |
224 // |
217 void CHarvesterServer::Pause( const RMessage2& aMessage ) |
225 void CHarvesterServer::Pause( const RMessage2& aMessage ) |
218 { |
226 { |
219 WRITELOG( "CHarvesterServer::Pause() - begin" ); |
227 WRITELOG( "CHarvesterServer::Pause() - begin" ); |
|
228 OstTrace0( TRACE_NORMAL, CHARVESTERSERVER_PAUSE, "CHarvesterServer::Pause" ); |
220 |
229 |
221 if ( !iHarvesterAO->IsServerPaused() ) |
230 if ( !iHarvesterAO->IsServerPaused() ) |
222 { |
231 { |
223 iMessage = &aMessage; |
232 iMessage = &aMessage; |
224 iHarvesterAO->SetNextRequest( CHarvesterAO::ERequestPause ); |
233 iHarvesterAO->SetNextRequest( CHarvesterAO::ERequestPause ); |
235 // --------------------------------------------------------------------------- |
244 // --------------------------------------------------------------------------- |
236 // |
245 // |
237 void CHarvesterServer::Resume( const RMessage2& aMessage ) |
246 void CHarvesterServer::Resume( const RMessage2& aMessage ) |
238 { |
247 { |
239 WRITELOG( "CHarvesterServer::Resume()" ); |
248 WRITELOG( "CHarvesterServer::Resume()" ); |
|
249 OstTrace0( TRACE_NORMAL, CHARVESTERSERVER_RESUME, "CHarvesterServer::Resume" ); |
240 |
250 |
241 if ( iHarvesterAO->IsServerPaused() ) |
251 if ( iHarvesterAO->IsServerPaused() ) |
242 { |
252 { |
243 iMessage = &aMessage; |
253 iMessage = &aMessage; |
244 iHarvesterAO->SetNextRequest( CHarvesterAO::ERequestResume ); |
254 iHarvesterAO->SetNextRequest( CHarvesterAO::ERequestResume ); |
254 // --------------------------------------------------------------------------- |
264 // --------------------------------------------------------------------------- |
255 // |
265 // |
256 void CHarvesterServer::Pause() |
266 void CHarvesterServer::Pause() |
257 { |
267 { |
258 WRITELOG( "CHarvesterServer::Pause()" ); |
268 WRITELOG( "CHarvesterServer::Pause()" ); |
259 |
269 OstTrace0( TRACE_NORMAL, DUP1_CHARVESTERSERVER_PAUSE, "CHarvesterServer::Pause" ); |
|
270 |
260 if ( !iHarvesterAO->IsServerPaused() ) |
271 if ( !iHarvesterAO->IsServerPaused() ) |
261 { |
272 { |
262 iHarvesterAO->SetNextRequest( CHarvesterAO::ERequestPause ); |
273 iHarvesterAO->SetNextRequest( CHarvesterAO::ERequestPause ); |
263 } |
274 } |
264 } |
275 } |
268 // --------------------------------------------------------------------------- |
279 // --------------------------------------------------------------------------- |
269 // |
280 // |
270 void CHarvesterServer::Resume() |
281 void CHarvesterServer::Resume() |
271 { |
282 { |
272 WRITELOG( "CHarvesterServer::Resume()" ); |
283 WRITELOG( "CHarvesterServer::Resume()" ); |
273 |
284 OstTrace0( TRACE_NORMAL, DUP1_CHARVESTERSERVER_RESUME, "CHarvesterServer::Resume" ); |
|
285 |
274 if ( iHarvesterAO->IsServerPaused() ) |
286 if ( iHarvesterAO->IsServerPaused() ) |
275 { |
287 { |
276 iHarvesterAO->SetNextRequest( CHarvesterAO::ERequestResume ); |
288 iHarvesterAO->SetNextRequest( CHarvesterAO::ERequestResume ); |
277 } |
289 } |
278 } |
290 } |
279 |
291 |
280 |
292 |
281 void CHarvesterServer::PauseReady( TInt aError ) |
293 void CHarvesterServer::PauseReady( TInt aError ) |
282 { |
294 { |
283 WRITELOG1( "CHarvesterServer::PauseReady( %d )", aError ); |
295 WRITELOG1( "CHarvesterServer::PauseReady( %d )", aError ); |
|
296 OstTrace0( TRACE_NORMAL, CHARVESTERSERVER_PAUSEREADY, "CHarvesterServer::PauseReady" ); |
|
297 |
284 if( iMessage ) |
298 if( iMessage ) |
285 { |
299 { |
286 iMessage->Complete( aError ); |
300 iMessage->Complete( aError ); |
287 iMessage = NULL; |
301 iMessage = NULL; |
288 } |
302 } |
289 } |
303 } |
290 |
304 |
291 void CHarvesterServer::ResumeReady( TInt aError ) |
305 void CHarvesterServer::ResumeReady( TInt aError ) |
292 { |
306 { |
293 WRITELOG1( "CHarvesterServer::ResumeReady( %d )", aError ); |
307 WRITELOG1( "CHarvesterServer::ResumeReady( %d )", aError ); |
|
308 OstTrace0( TRACE_NORMAL, CHARVESTERSERVER_RESUMEREADY, "CHarvesterServer::ResumeReady" ); |
|
309 |
294 if( iMessage ) |
310 if( iMessage ) |
295 { |
311 { |
296 iMessage->Complete( aError ); |
312 iMessage->Complete( aError ); |
297 iMessage = NULL; |
313 iMessage = NULL; |
298 } |
314 } |
303 // ----------------------------------------------------------------------------- |
319 // ----------------------------------------------------------------------------- |
304 // |
320 // |
305 void CHarvesterServer::ShutdownNotification() |
321 void CHarvesterServer::ShutdownNotification() |
306 { |
322 { |
307 WRITELOG( "CHarvesterServer::ShutdownNotification" ); |
323 WRITELOG( "CHarvesterServer::ShutdownNotification" ); |
|
324 OstTrace0( TRACE_NORMAL, CHARVESTERSERVER_SHUTDOWNNOTIFICATION, "CHarvesterServer::ShutdownNotification" ); |
|
325 |
308 CActiveScheduler::Stop(); |
326 CActiveScheduler::Stop(); |
309 } |
327 } |
310 |
328 |
311 // ----------------------------------------------------------------------------- |
329 // ----------------------------------------------------------------------------- |
312 // CHarvesterServer::ShutdownNotification |
330 // CHarvesterServer::ShutdownNotification |
313 // ----------------------------------------------------------------------------- |
331 // ----------------------------------------------------------------------------- |
314 // |
332 // |
315 void CHarvesterServer::RestartNotification() |
333 void CHarvesterServer::RestartNotification() |
316 { |
334 { |
317 WRITELOG( "CHarvesterServer::RestartNotification" ); |
335 WRITELOG( "CHarvesterServer::RestartNotification" ); |
|
336 OstTrace0( TRACE_NORMAL, CHARVESTERSERVER_RESTARTNOTIFICATION, "CHarvesterServer::RestartNotification" ); |
|
337 |
318 } |
338 } |
319 |
339 |
320 |
340 |
321 // --------------------------------------------------------------------------- |
341 // --------------------------------------------------------------------------- |
322 // Harvest File |
342 // Harvest File |
323 // --------------------------------------------------------------------------- |
343 // --------------------------------------------------------------------------- |
324 // |
344 // |
325 void CHarvesterServer::HarvestFile( const RMessage2& aMessage ) |
345 void CHarvesterServer::HarvestFile( const RMessage2& aMessage ) |
326 { |
346 { |
327 WRITELOG( "CHarvesterServer::HarvestFile()" ); |
347 WRITELOG( "CHarvesterServer::HarvestFile()" ); |
|
348 OstTrace0( TRACE_NORMAL, CHARVESTERSERVER_HARVESTFILE, "CHarvesterServer::HarvestFile" ); |
328 |
349 |
329 iHarvesterAO->HarvestFile( aMessage ); |
350 iHarvesterAO->HarvestFile( aMessage ); |
330 } |
351 } |
331 |
352 |
332 // --------------------------------------------------------------------------- |
353 // --------------------------------------------------------------------------- |
334 // --------------------------------------------------------------------------- |
355 // --------------------------------------------------------------------------- |
335 // |
356 // |
336 void CHarvesterServer::HarvestFileWithUID( const RMessage2& aMessage ) |
357 void CHarvesterServer::HarvestFileWithUID( const RMessage2& aMessage ) |
337 { |
358 { |
338 WRITELOG( "CHarvesterServer::HarvestFile()" ); |
359 WRITELOG( "CHarvesterServer::HarvestFile()" ); |
|
360 OstTrace0( TRACE_NORMAL, CHARVESTERSERVER_HARVESTFILEWITHUID, "CHarvesterServer::HarvestFileWithUID" ); |
339 |
361 |
340 iHarvesterAO->HarvestFileWithUID( aMessage ); |
362 iHarvesterAO->HarvestFileWithUID( aMessage ); |
341 } |
363 } |
342 |
364 |
343 // --------------------------------------------------------------------------- |
365 // --------------------------------------------------------------------------- |
345 // --------------------------------------------------------------------------- |
367 // --------------------------------------------------------------------------- |
346 // |
368 // |
347 void CHarvesterServer::RegisterProcessOrigin( const RMessage2& aMessage ) |
369 void CHarvesterServer::RegisterProcessOrigin( const RMessage2& aMessage ) |
348 { |
370 { |
349 WRITELOG( "CHarvesterServer::RegisterProcessOrigin()" ); |
371 WRITELOG( "CHarvesterServer::RegisterProcessOrigin()" ); |
|
372 OstTrace0( TRACE_NORMAL, CHARVESTERSERVER_REGISTERPROCESSORIGIN, "CHarvesterServer::RegisterProcessOrigin" ); |
350 |
373 |
351 iHarvesterAO->RegisterProcessOrigin( aMessage ); |
374 iHarvesterAO->RegisterProcessOrigin( aMessage ); |
352 } |
375 } |
353 |
376 |
354 // --------------------------------------------------------------------------- |
377 // --------------------------------------------------------------------------- |
356 // --------------------------------------------------------------------------- |
379 // --------------------------------------------------------------------------- |
357 // |
380 // |
358 void CHarvesterServer::UnregisterProcessOrigin( const RMessage2& aMessage ) |
381 void CHarvesterServer::UnregisterProcessOrigin( const RMessage2& aMessage ) |
359 { |
382 { |
360 WRITELOG( "CHarvesterServer::UnregisterProcessOrigin()" ); |
383 WRITELOG( "CHarvesterServer::UnregisterProcessOrigin()" ); |
|
384 OstTrace0( TRACE_NORMAL, CHARVESTERSERVER_UNREGISTERPROCESSORIGIN, "CHarvesterServer::UnregisterProcessOrigin" ); |
361 |
385 |
362 iHarvesterAO->UnregisterProcessOrigin( aMessage ); |
386 iHarvesterAO->UnregisterProcessOrigin( aMessage ); |
363 } |
387 } |
364 |
388 |
365 // --------------------------------------------------------------------------- |
389 // --------------------------------------------------------------------------- |
367 // --------------------------------------------------------------------------- |
391 // --------------------------------------------------------------------------- |
368 // |
392 // |
369 TInt CHarvesterServer::RegisterHarvestComplete( const CHarvesterServerSession& aSession, const RMessage2& aMessage ) |
393 TInt CHarvesterServer::RegisterHarvestComplete( const CHarvesterServerSession& aSession, const RMessage2& aMessage ) |
370 { |
394 { |
371 WRITELOG( "CHarvesterServer::RegisterHarvestComplete()" ); |
395 WRITELOG( "CHarvesterServer::RegisterHarvestComplete()" ); |
|
396 OstTrace0( TRACE_NORMAL, CHARVESTERSERVER_REGISTERHARVESTCOMPLETE, "CHarvesterServer::RegisterHarvestComplete" ); |
372 |
397 |
373 return iHarvesterAO->RegisterHarvestComplete( aSession, aMessage ); |
398 return iHarvesterAO->RegisterHarvestComplete( aSession, aMessage ); |
374 } |
399 } |
375 |
400 |
376 // --------------------------------------------------------------------------- |
401 // --------------------------------------------------------------------------- |
378 // --------------------------------------------------------------------------- |
403 // --------------------------------------------------------------------------- |
379 // |
404 // |
380 TInt CHarvesterServer::UnregisterHarvestComplete( const CHarvesterServerSession& aSession ) |
405 TInt CHarvesterServer::UnregisterHarvestComplete( const CHarvesterServerSession& aSession ) |
381 { |
406 { |
382 WRITELOG( "CHarvesterServer::UnregisterHarvestComplete()" ); |
407 WRITELOG( "CHarvesterServer::UnregisterHarvestComplete()" ); |
|
408 OstTrace0( TRACE_NORMAL, CHARVESTERSERVER_UNREGISTERHARVESTCOMPLETE, "CHarvesterServer::UnregisterHarvestComplete" ); |
383 |
409 |
384 return iHarvesterAO->UnregisterHarvestComplete( aSession ); |
410 return iHarvesterAO->UnregisterHarvestComplete( aSession ); |
385 } |
411 } |
386 |
412 |
387 // --------------------------------------------------------------------------- |
413 // --------------------------------------------------------------------------- |
389 // --------------------------------------------------------------------------- |
415 // --------------------------------------------------------------------------- |
390 // |
416 // |
391 void CHarvesterServer::RegisterHarvesterEvent( const RMessage2& aMessage ) |
417 void CHarvesterServer::RegisterHarvesterEvent( const RMessage2& aMessage ) |
392 { |
418 { |
393 WRITELOG( "CHarvesterServer::RegisterHarvesterEvent()" ); |
419 WRITELOG( "CHarvesterServer::RegisterHarvesterEvent()" ); |
|
420 OstTrace0( TRACE_NORMAL, CHARVESTERSERVER_REGISTERHARVESTEREVENT, "CHarvesterServer::RegisterHarvesterEvent" ); |
394 |
421 |
395 iHarvesterAO->RegisterHarvesterEvent( aMessage ); |
422 iHarvesterAO->RegisterHarvesterEvent( aMessage ); |
396 } |
423 } |
397 |
424 |
398 // --------------------------------------------------------------------------- |
425 // --------------------------------------------------------------------------- |
400 // --------------------------------------------------------------------------- |
427 // --------------------------------------------------------------------------- |
401 // |
428 // |
402 void CHarvesterServer::UnregisterHarvesterEvent( const RMessage2& aMessage ) |
429 void CHarvesterServer::UnregisterHarvesterEvent( const RMessage2& aMessage ) |
403 { |
430 { |
404 WRITELOG( "CHarvesterServer::UnregisterHarvesterEvent()" ); |
431 WRITELOG( "CHarvesterServer::UnregisterHarvesterEvent()" ); |
|
432 OstTrace0( TRACE_NORMAL, CHARVESTERSERVER_UNREGISTERHARVESTEREVENT, "CHarvesterServer::UnregisterHarvesterEvent" ); |
405 |
433 |
406 iHarvesterAO->UnregisterHarvesterEvent( aMessage ); |
434 iHarvesterAO->UnregisterHarvesterEvent( aMessage ); |
407 } |
435 } |
408 |
436 |
409 // --------------------------------------------------------------------------- |
437 // --------------------------------------------------------------------------- |
411 // --------------------------------------------------------------------------- |
439 // --------------------------------------------------------------------------- |
412 // |
440 // |
413 CHarvesterServer::~CHarvesterServer() |
441 CHarvesterServer::~CHarvesterServer() |
414 { |
442 { |
415 WRITELOG( "CHarvesterServer::~CHarvesterServer()" ); |
443 WRITELOG( "CHarvesterServer::~CHarvesterServer()" ); |
|
444 OstTrace0( TRACE_NORMAL, CHARVESTERSERVER_CHARVESTERSERVER, "CHarvesterServer::~CHarvesterServer" ); |
|
445 |
416 delete iHarvesterAO; |
446 delete iHarvesterAO; |
417 delete iPauseObserverAO; |
447 delete iPauseObserverAO; |
418 delete iShutdownObserver; |
448 delete iShutdownObserver; |
|
449 OstTrace0( TRACE_NORMAL, DUP1_CHARVESTERSERVER_CHARVESTERSERVER, "CHarvesterServer::~CHarvesterServer end" ); |
|
450 |
419 WRITELOG( "CHarvesterServer::~CHarvesterServer() end" ); |
451 WRITELOG( "CHarvesterServer::~CHarvesterServer() end" ); |
420 } |
452 } |
421 |
453 |
422 // --------------------------------------------------------------------------- |
454 // --------------------------------------------------------------------------- |
423 // PanicClient |
455 // PanicClient |
425 // |
457 // |
426 void CHarvesterServer::PanicClient( const RMessage2& aMessage, TInt aPanic, |
458 void CHarvesterServer::PanicClient( const RMessage2& aMessage, TInt aPanic, |
427 const TDesC& aPanicDescription ) |
459 const TDesC& aPanicDescription ) |
428 { |
460 { |
429 WRITELOG( "CHarvesterServer::PanicClient()" ); |
461 WRITELOG( "CHarvesterServer::PanicClient()" ); |
|
462 OstTrace0( TRACE_NORMAL, CHARVESTERSERVER_PANICCLIENT, "CHarvesterServer::PanicClient" ); |
430 |
463 |
431 aMessage.Panic( aPanicDescription, aPanic ); |
464 aMessage.Panic( aPanicDescription, aPanic ); |
432 } |
465 } |
433 |
466 |
434 // --------------------------------------------------------------------------- |
467 // --------------------------------------------------------------------------- |
436 // --------------------------------------------------------------------------- |
469 // --------------------------------------------------------------------------- |
437 // |
470 // |
438 void CHarvesterServer::PanicServer( TInt aPanic, const TDesC& aPanicDescription ) |
471 void CHarvesterServer::PanicServer( TInt aPanic, const TDesC& aPanicDescription ) |
439 { |
472 { |
440 WRITELOG( "CHarvesterServer::PanicServer() - begin" ); |
473 WRITELOG( "CHarvesterServer::PanicServer() - begin" ); |
|
474 OstTrace0( TRACE_NORMAL, CHARVESTERSERVER_PANICSERVER, "CHarvesterServer::PanicServer" ); |
441 |
475 |
442 User::Panic( aPanicDescription, aPanic ); |
476 User::Panic( aPanicDescription, aPanic ); |
443 } |
477 } |
444 |
478 |
445 // --------------------------------------------------------------------------- |
479 // --------------------------------------------------------------------------- |
448 // |
482 // |
449 CSession2* CHarvesterServer::NewSessionL( |
483 CSession2* CHarvesterServer::NewSessionL( |
450 const TVersion& aVersion, const RMessage2& ) const |
484 const TVersion& aVersion, const RMessage2& ) const |
451 { |
485 { |
452 WRITELOG( "CHarvesterServer::NewSessionL() - begin" ); |
486 WRITELOG( "CHarvesterServer::NewSessionL() - begin" ); |
453 |
487 OstTrace0( TRACE_NORMAL, CHARVESTERSERVER_NEWSESSIONL, "CHarvesterServer::NewSessionL" ); |
|
488 |
454 //If there isn't connection to mde, we can't do much. Inform client about situation. |
489 //If there isn't connection to mde, we can't do much. Inform client about situation. |
455 //This doesn't leave on first client because Process::Rendezcvouz is called when mde:s |
490 //This doesn't leave on first client because Process::Rendezcvouz is called when mde:s |
456 //HandleSessionOpened is called. |
491 //HandleSessionOpened is called. |
457 if (!iHarvesterAO->IsConnectedToMde()) |
492 if (!iHarvesterAO->IsConnectedToMde()) |
458 { |
493 { |
460 } |
495 } |
461 |
496 |
462 if ( iShutdownObserver->UpdateInProgress() ) |
497 if ( iShutdownObserver->UpdateInProgress() ) |
463 { |
498 { |
464 WRITELOG( "CHarvesterServer::NewSessionL - iad update in progress: KErrLocked"); |
499 WRITELOG( "CHarvesterServer::NewSessionL - iad update in progress: KErrLocked"); |
|
500 OstTrace0( TRACE_NORMAL, DUP1_CHARVESTERSERVER_NEWSESSIONL, "CHarvesterServer::NewSessionL- iad update in progress: KErrLocked" ); |
|
501 |
465 User::Leave(KErrLocked); |
502 User::Leave(KErrLocked); |
466 } |
503 } |
467 |
504 |
468 // Check we are the right version |
505 // Check we are the right version |
469 if ( !User::QueryVersionSupported( TVersion( KHarvesterServerMajorVersion, |
506 if ( !User::QueryVersionSupported( TVersion( KHarvesterServerMajorVersion, |
483 // --------------------------------------------------------------------------- |
520 // --------------------------------------------------------------------------- |
484 // |
521 // |
485 TInt CHarvesterServer::RunError( TInt aError ) |
522 TInt CHarvesterServer::RunError( TInt aError ) |
486 { |
523 { |
487 WRITELOG1( "CHarvesterServer::RunError - %d()", aError ); |
524 WRITELOG1( "CHarvesterServer::RunError - %d()", aError ); |
488 |
525 OstTrace0( TRACE_NORMAL, CHARVESTERSERVER_RUNERROR, "CHarvesterServer::RunError" ); |
|
526 |
489 if ( aError == KErrBadDescriptor ) |
527 if ( aError == KErrBadDescriptor ) |
490 { |
528 { |
491 // A bad descriptor error implies a badly programmed client, |
529 // A bad descriptor error implies a badly programmed client, |
492 // so panic it; otherwise report the error to the client |
530 // so panic it; otherwise report the error to the client |
493 PanicClient( Message(), KErrBadDescriptor ); |
531 PanicClient( Message(), KErrBadDescriptor ); |
510 // --------------------------------------------------------------------------- |
548 // --------------------------------------------------------------------------- |
511 // |
549 // |
512 void CHarvesterServer::ThreadFunctionL() |
550 void CHarvesterServer::ThreadFunctionL() |
513 { |
551 { |
514 WRITELOG( "CHarvesterServer::ThreadFunctionL() - begin" ); |
552 WRITELOG( "CHarvesterServer::ThreadFunctionL() - begin" ); |
|
553 OstTrace0( TRACE_NORMAL, CHARVESTERSERVER_THREADFUNCTIONL, "CHarvesterServer::ThreadFunctionL - begin" ); |
515 |
554 |
516 User::LeaveIfError( User::RenameThread( KHarvesterServerName ) ); |
555 User::LeaveIfError( User::RenameThread( KHarvesterServerName ) ); |
517 // Construct active scheduler |
556 // Construct active scheduler |
518 CActiveScheduler* activeScheduler = new (ELeave) CActiveScheduler; |
557 CActiveScheduler* activeScheduler = new (ELeave) CActiveScheduler; |
519 CleanupStack::PushL( activeScheduler ); |
558 CleanupStack::PushL( activeScheduler ); |
530 // Start handling requests |
569 // Start handling requests |
531 CActiveScheduler::Start(); |
570 CActiveScheduler::Start(); |
532 |
571 |
533 CleanupStack::PopAndDestroy( 2, activeScheduler ); |
572 CleanupStack::PopAndDestroy( 2, activeScheduler ); |
534 |
573 |
|
574 OstTrace0( TRACE_NORMAL, DUP1_CHARVESTERSERVER_THREADFUNCTIONL, "CHarvesterServer::ThreadFunctionL - end" ); |
|
575 |
535 WRITELOG( "CHarvesterServer::ThreadFunctionL() - end" ); |
576 WRITELOG( "CHarvesterServer::ThreadFunctionL() - end" ); |
536 } |
577 } |
537 |
578 |
538 // --------------------------------------------------------------------------- |
579 // --------------------------------------------------------------------------- |
539 // ThreadFunction |
580 // ThreadFunction |
540 // --------------------------------------------------------------------------- |
581 // --------------------------------------------------------------------------- |
541 // |
582 // |
542 TInt CHarvesterServer::ThreadFunction( TAny* /*aNone*/ ) |
583 TInt CHarvesterServer::ThreadFunction( TAny* /*aNone*/ ) |
543 { |
584 { |
544 WRITELOG( "CHarvesterServer::ThreadFunction() - TAny - begin" ); |
585 WRITELOG( "CHarvesterServer::ThreadFunction() - TAny - begin" ); |
|
586 OstTrace0( TRACE_NORMAL, CHARVESTERSERVER_THREADFUNCTION, "CHarvesterServer::ThreadFunction - TAny - begin" ); |
545 |
587 |
546 CTrapCleanup* cleanupStack = CTrapCleanup::New(); |
588 CTrapCleanup* cleanupStack = CTrapCleanup::New(); |
547 if ( !cleanupStack ) |
589 if ( !cleanupStack ) |
548 { |
590 { |
549 PanicServer( KErrServerTerminated ); |
591 PanicServer( KErrServerTerminated ); |