42 // --------------------------------------------------------------------------- |
42 // --------------------------------------------------------------------------- |
43 // CDmEventScheduler::~CDmEventScheduler() |
43 // CDmEventScheduler::~CDmEventScheduler() |
44 // --------------------------------------------------------------------------- |
44 // --------------------------------------------------------------------------- |
45 CDmEventScheduler::~CDmEventScheduler() |
45 CDmEventScheduler::~CDmEventScheduler() |
46 { |
46 { |
47 FLOG(_L("CDmEventScheduler::~CDmEventScheduler >>")); |
47 _DMEVNT_DEBUG(_L("CDmEventScheduler::~CDmEventScheduler >>")); |
48 |
48 |
49 iScheduler.Close(); |
49 iScheduler.Close(); |
50 |
50 |
51 iServices.DeleteAll(); |
51 iServices.DeleteAll(); |
52 iServices.Reset(); |
52 iServices.Reset(); |
53 |
53 |
54 FLOG(_L("CDmEventScheduler::~CDmEventScheduler <<")); |
54 _DMEVNT_DEBUG(_L("CDmEventScheduler::~CDmEventScheduler <<")); |
55 } |
55 } |
56 |
56 |
57 |
57 |
58 // --------------------------------------------------------------------------- |
58 // --------------------------------------------------------------------------- |
59 // CDmEventScheduler::NewL() |
59 // CDmEventScheduler::NewL() |
60 // --------------------------------------------------------------------------- |
60 // --------------------------------------------------------------------------- |
61 CDmEventScheduler* CDmEventScheduler::NewL() |
61 CDmEventScheduler* CDmEventScheduler::NewL() |
62 { |
62 { |
63 FLOG(_L("CDmEventScheduler::NewL >>")); |
63 _DMEVNT_DEBUG(_L("CDmEventScheduler::NewL >>")); |
64 |
64 |
65 CDmEventScheduler* self = new (ELeave) CDmEventScheduler(); |
65 CDmEventScheduler* self = new (ELeave) CDmEventScheduler(); |
66 CleanupStack::PushL(self); |
66 CleanupStack::PushL(self); |
67 self->ConstructL(); |
67 self->ConstructL(); |
68 CleanupStack::Pop(); |
68 CleanupStack::Pop(); |
69 |
69 |
70 FLOG(_L("CDmEventScheduler::NewL <<")); |
70 _DMEVNT_DEBUG(_L("CDmEventScheduler::NewL <<")); |
71 return self; |
71 return self; |
72 } |
72 } |
73 |
73 |
74 CDmEventScheduler* CDmEventScheduler::NewLC() |
74 CDmEventScheduler* CDmEventScheduler::NewLC() |
75 { |
75 { |
76 FLOG(_L("CDmEventScheduler::NewLC >>")); |
76 _DMEVNT_DEBUG(_L("CDmEventScheduler::NewLC >>")); |
77 |
77 |
78 CDmEventScheduler* self = CDmEventScheduler::NewL(); |
78 CDmEventScheduler* self = CDmEventScheduler::NewL(); |
79 CleanupStack::PushL(self); |
79 CleanupStack::PushL(self); |
80 |
80 |
81 FLOG(_L("CDmEventScheduler::NewLC <<")); |
81 _DMEVNT_DEBUG(_L("CDmEventScheduler::NewLC <<")); |
82 return self; |
82 return self; |
83 } |
83 } |
84 |
84 |
85 // --------------------------------------------------------------------------- |
85 // --------------------------------------------------------------------------- |
86 // CDmEventScheduler::ConstructL() |
86 // CDmEventScheduler::ConstructL() |
87 // --------------------------------------------------------------------------- |
87 // --------------------------------------------------------------------------- |
88 void CDmEventScheduler::ConstructL() |
88 void CDmEventScheduler::ConstructL() |
89 { |
89 { |
90 FLOG(_L("CDmEventScheduler::ConstructL >>")); |
90 _DMEVNT_DEBUG(_L("CDmEventScheduler::ConstructL >>")); |
91 |
91 |
92 __LEAVE_IF_ERROR(iScheduler.Connect()); |
92 __LEAVE_IF_ERROR(iScheduler.Connect()); |
93 |
93 |
94 TFileName handler(KDmEventNotifierExe); |
94 TFileName handler(KDmEventNotifierExe); |
95 |
95 |
99 |
99 |
100 iServices[EJavaService] = CJavaApplicationService::NewL(); |
100 iServices[EJavaService] = CJavaApplicationService::NewL(); |
101 |
101 |
102 iServices[EMmcService] = CMmcService::NewL(); |
102 iServices[EMmcService] = CMmcService::NewL(); |
103 |
103 |
104 FLOG(_L("CDmEventScheduler::ConstructL <<")); |
104 _DMEVNT_DEBUG(_L("CDmEventScheduler::ConstructL <<")); |
105 } |
105 } |
106 |
106 |
107 // --------------------------------------------------------------------------- |
107 // --------------------------------------------------------------------------- |
108 // CDmEventScheduler::CreateConditionScheduleL() |
108 // CDmEventScheduler::CreateConditionScheduleL() |
109 // --------------------------------------------------------------------------- |
109 // --------------------------------------------------------------------------- |
110 void CDmEventScheduler::CreateConditionScheduleL(CDmEventServiceBase* aService) |
110 void CDmEventScheduler::CreateConditionScheduleL(CDmEventServiceBase* aService) |
111 { |
111 { |
112 FLOG(_L("CDmEventScheduler::CreateConditionSchedule >>")); |
112 _DMEVNT_DEBUG(_L("CDmEventScheduler::CreateConditionSchedule >>")); |
113 |
113 |
114 //Create new schedule |
114 //Create new schedule |
115 TInt err(KErrNone); |
115 TInt err(KErrNone); |
116 TBool schenabled (EFalse); |
116 TBool schenabled (EFalse); |
117 TSchedulerItemRef conditionScheduleHandle; |
117 TSchedulerItemRef conditionScheduleHandle; |
124 |
124 |
125 if (aService == NULL) |
125 if (aService == NULL) |
126 { |
126 { |
127 |
127 |
128 TRAP(err, DeleteScheduleL()); |
128 TRAP(err, DeleteScheduleL()); |
129 FLOG(_L("Deleted existing schedule, err = %d"),err); |
129 _DMEVNT_DEBUG(_L("Deleted existing schedule, err = %d"),err); |
130 |
130 |
131 |
131 |
132 //Performing for Software Installer |
132 //Performing for Software Installer |
133 FLOG(_L("Registering for Software Installer...")); |
133 _DMEVNT_DEBUG(_L("Registering for Software Installer...")); |
134 if (iServices[ESoftwareService]->IsKeyValid()) |
134 if (iServices[ESoftwareService]->IsKeyValid()) |
135 { |
135 { |
136 CSchConditionArray* aConditions; |
136 CSchConditionArray* aConditions; |
137 |
137 |
138 aConditions = CreateConditionLC(iServices[ESoftwareService]); |
138 aConditions = CreateConditionLC(iServices[ESoftwareService]); |
208 schenabled = (KErrNone == err); |
208 schenabled = (KErrNone == err); |
209 } |
209 } |
210 |
210 |
211 SetScheduleEnabledL(schenabled); |
211 SetScheduleEnabledL(schenabled); |
212 |
212 |
213 FLOG(_L("CDmEventScheduler::CreateConditionSchedule, error = %d <<"), err); |
213 _DMEVNT_DEBUG(_L("CDmEventScheduler::CreateConditionSchedule, error = %d <<"), err); |
214 } |
214 } |
215 |
215 |
216 // --------------------------------------------------------------------------- |
216 // --------------------------------------------------------------------------- |
217 // CDmEventScheduler::WaitAndCreateConditionScheduleL() |
217 // CDmEventScheduler::WaitAndCreateConditionScheduleL() |
218 // --------------------------------------------------------------------------- |
218 // --------------------------------------------------------------------------- |
219 void CDmEventScheduler::WaitAndCreateConditionScheduleL(TName aTaskName) |
219 void CDmEventScheduler::WaitAndCreateConditionScheduleL(TName& aTaskName) |
220 { |
220 { |
221 FLOG(_L("CDmEventScheduler::WaitAndCreateConditionScheduleL >>")); |
221 _DMEVNT_DEBUG(_L("CDmEventScheduler::WaitAndCreateConditionScheduleL >>")); |
222 |
222 |
223 SetScheduleEnabledL(EHandlerNotRegistered); |
223 SetScheduleEnabledL(EHandlerNotRegistered); |
224 |
224 |
225 CDmEventServiceBase* service = FindExpiredService(aTaskName); |
225 CDmEventServiceBase* service = FindExpiredService(aTaskName); |
226 // CleanupStack::PushL(service); // Not necessary, as service pointer is changed in the code |
226 // CleanupStack::PushL(service); // Not necessary, as service pointer is changed in the code |
227 |
227 |
228 if ( service ) |
228 if(NULL == service) { |
229 { |
229 _DMEVNT_DEBUG(_L("[CDmEventScheduler]-> FindExpiredService() returned NULL...")); |
230 service->WaitForRequestCompleteL(); |
230 return; |
231 } |
231 } |
232 |
232 |
|
233 service->WaitForRequestCompleteL(); |
233 //Read the status from aService |
234 //Read the status from aService |
234 THandlerServiceId srvid; |
235 THandlerServiceId srvid; |
235 THandlerOperation opn; |
236 THandlerOperation opn; |
236 |
237 |
237 if( service ) |
238 |
238 { |
|
239 service->GetServiceIdAndOperation(srvid,opn); |
239 service->GetServiceIdAndOperation(srvid,opn); |
240 } |
|
241 |
240 |
242 TBool mmcservice (EFalse); |
241 TBool mmcservice (EFalse); |
243 if (service == iServices[EMmcService]) |
242 if (service == iServices[EMmcService]) |
244 { |
243 { |
245 mmcservice = ETrue; |
244 mmcservice = ETrue; |
257 } |
256 } |
258 CreateConditionScheduleL(service); |
257 CreateConditionScheduleL(service); |
259 |
258 |
260 if ( opn != ENoOpn ) |
259 if ( opn != ENoOpn ) |
261 { |
260 { |
262 TRAPD(err, NotifyRegisteredServersL(srvid, opn)); |
261 TInt err = KErrNone; |
263 FLOG(_L("Notification error = %d"), err); |
262 TRAP(err, NotifyRegisteredServersL(srvid, opn)); |
|
263 _DMEVNT_DEBUG(_L("Notification error = %d"), err); |
264 } |
264 } |
265 else |
265 else |
266 { |
266 { |
267 FLOG(_L("Operation got cancelled. Skipping notification")); |
267 _DMEVNT_DEBUG(_L("Operation got cancelled. Skipping notification")); |
268 } |
268 } |
269 |
269 |
270 // CleanupStack::Pop(service); //don't destroy as object is not owned |
270 // CleanupStack::Pop(service); //don't destroy as object is not owned |
271 |
271 |
272 FLOG(_L("CDmEventScheduler::WaitAndCreateConditionScheduleL <<")); |
272 _DMEVNT_DEBUG(_L("CDmEventScheduler::WaitAndCreateConditionScheduleL <<")); |
273 } |
273 } |
274 |
274 |
275 // --------------------------------------------------------------------------- |
275 // --------------------------------------------------------------------------- |
276 // CDmEventScheduler::CreateConditionScheduleWithTaskL() |
276 // CDmEventScheduler::CreateConditionScheduleWithTaskL() |
277 // --------------------------------------------------------------------------- |
277 // --------------------------------------------------------------------------- |
308 CleanupStack::PopAndDestroy(); // data |
308 CleanupStack::PopAndDestroy(); // data |
309 } |
309 } |
310 else |
310 else |
311 { |
311 { |
312 //Creating persistent schedule failed, do something... |
312 //Creating persistent schedule failed, do something... |
313 FLOG(_L("Creation of persistent scheduled failed, error = %d"), ret); |
313 _DMEVNT_DEBUG(_L("Creation of persistent scheduled failed, error = %d"), ret); |
314 } |
314 } |
315 |
315 |
316 FLOG(_L("CDmEventScheduler::CreateConditionScheduleWithTaskL, ret = %d <<"), ret); |
316 _DMEVNT_DEBUG(_L("CDmEventScheduler::CreateConditionScheduleWithTaskL, ret = %d <<"), ret); |
317 return ret; |
317 return ret; |
318 } |
318 } |
319 |
319 |
320 // --------------------------------------------------------------------------- |
320 // --------------------------------------------------------------------------- |
321 // CDmEventScheduler::DeleteScheduleL |
321 // CDmEventScheduler::DeleteScheduleL |
322 // --------------------------------------------------------------------------- |
322 // --------------------------------------------------------------------------- |
323 void CDmEventScheduler::DeleteScheduleL() |
323 void CDmEventScheduler::DeleteScheduleL() |
324 { |
324 { |
325 FLOG(_L("CDmEventScheduler::DeleteScheduleL >>")); |
325 _DMEVNT_DEBUG(_L("CDmEventScheduler::DeleteScheduleL >>")); |
326 |
326 |
327 RScheduler sc; |
327 RScheduler sc; |
328 CArrayFixFlat<TSchedulerItemRef>* aSchRefArray = new CArrayFixFlat <TSchedulerItemRef>(KScheduleReferenceMax); |
328 CArrayFixFlat<TSchedulerItemRef>* aSchRefArray = new CArrayFixFlat <TSchedulerItemRef>(KScheduleReferenceMax); |
329 TScheduleFilter aFilter(EAllSchedules); |
329 TScheduleFilter aFilter(EAllSchedules); |
330 User::LeaveIfError( sc.Connect() ); |
330 User::LeaveIfError( sc.Connect() ); |
331 CleanupClosePushL( sc ); |
331 CleanupClosePushL( sc ); |
332 CleanupStack::PushL(aSchRefArray); |
332 CleanupStack::PushL(aSchRefArray); |
333 |
333 |
334 User::LeaveIfError( sc.GetScheduleRefsL( *aSchRefArray,aFilter) ); |
334 User::LeaveIfError( sc.GetScheduleRefsL( *aSchRefArray,aFilter) ); |
335 FLOG(_L("Schedule items: ")); |
335 _DMEVNT_DEBUG(_L("Schedule items: ")); |
336 for ( TInt i=0; i<aSchRefArray->Count(); ++i ) |
336 for ( TInt i=0; i<aSchRefArray->Count(); ++i ) |
337 { |
337 { |
338 TSchedulerItemRef it = (*aSchRefArray)[i]; |
338 TSchedulerItemRef it = (*aSchRefArray)[i]; |
339 if ( it.iName == KAppDmEventNotifierUid.Name() ) |
339 if ( it.iName == KAppDmEventNotifierUid.Name() ) |
340 { |
340 { |
343 TTsTime sc_time; |
343 TTsTime sc_time; |
344 CArrayFixFlat<TTaskInfo>* sc_tasks = new CArrayFixFlat <TTaskInfo>(KTaskArraySizeMax); |
344 CArrayFixFlat<TTaskInfo>* sc_tasks = new CArrayFixFlat <TTaskInfo>(KTaskArraySizeMax); |
345 |
345 |
346 CleanupStack::PushL( sc_entries ); |
346 CleanupStack::PushL( sc_entries ); |
347 CleanupStack::PushL( sc_tasks ); |
347 CleanupStack::PushL( sc_tasks ); |
348 FLOG (_L("%d. schedule handle: %d name:'%S'"),i,it.iHandle, &(it.iName) ); |
348 _DMEVNT_DEBUG (_L("%d. schedule handle: %d name:'%S'"),i,it.iHandle, &(it.iName) ); |
349 |
349 |
350 TInt err = sc.GetScheduleL ( it.iHandle , sc_state, *sc_entries, sc_time, *sc_tasks); |
350 TInt err = sc.GetScheduleL ( it.iHandle , sc_state, *sc_entries, sc_time, *sc_tasks); |
351 |
351 |
352 if (KErrNone == err) |
352 if (KErrNone == err) |
353 { |
353 { |
354 for ( TInt j=0; j<sc_tasks->Count();++j) |
354 for ( TInt j=0; j<sc_tasks->Count();++j) |
355 { |
355 { |
356 TTaskInfo sc_task = (*sc_tasks)[j]; |
356 TTaskInfo sc_task = (*sc_tasks)[j]; |
357 FLOG(_L(" schedule task %d '%S'"),sc_task.iTaskId,&(sc_task.iName) ); |
357 _DMEVNT_DEBUG(_L(" schedule task %d '%S'"),sc_task.iTaskId,&(sc_task.iName) ); |
358 |
358 |
359 err = sc.DeleteTask(sc_task.iTaskId); |
359 err = sc.DeleteTask(sc_task.iTaskId); |
360 FLOG(_L("Deleted task state, error = %d"), err); |
360 _DMEVNT_DEBUG(_L("Deleted task state, error = %d"), err); |
361 } |
361 } |
362 } |
362 } |
363 else |
363 else |
364 { |
364 { |
365 FLOG(_L("Getting schedule error = %d"), err); |
365 _DMEVNT_DEBUG(_L("Getting schedule error = %d"), err); |
366 } |
366 } |
367 |
367 |
368 err = sc.DeleteSchedule(it.iHandle ); |
368 err = sc.DeleteSchedule(it.iHandle ); |
369 FLOG(_L("Deleted schedule %d, error = %d"),i+1, err); |
369 _DMEVNT_DEBUG(_L("Deleted schedule %d, error = %d"),i+1, err); |
370 |
370 |
371 CleanupStack::PopAndDestroy( sc_tasks ); |
371 CleanupStack::PopAndDestroy( sc_tasks ); |
372 CleanupStack::PopAndDestroy( sc_entries ); |
372 CleanupStack::PopAndDestroy( sc_entries ); |
373 } |
373 } |
374 } |
374 } |
375 CleanupStack::PopAndDestroy( aSchRefArray ); |
375 CleanupStack::PopAndDestroy( aSchRefArray ); |
376 CleanupStack::PopAndDestroy(&sc); |
376 CleanupStack::PopAndDestroy(&sc); |
377 FLOG(_L("CDmEventScheduler::DeleteScheduleL <<")); |
377 _DMEVNT_DEBUG(_L("CDmEventScheduler::DeleteScheduleL <<")); |
378 } |
378 } |
379 |
379 |
380 // --------------------------------------------------------------------------- |
380 // --------------------------------------------------------------------------- |
381 // CDmEventScheduler::CreateConditionLC |
381 // CDmEventScheduler::CreateConditionLC |
382 // --------------------------------------------------------------------------- |
382 // --------------------------------------------------------------------------- |
383 CSchConditionArray* CDmEventScheduler::CreateConditionLC(CDmEventServiceBase* aService) |
383 CSchConditionArray* CDmEventScheduler::CreateConditionLC(CDmEventServiceBase* aService) |
384 { |
384 { |
385 FLOG(_L("CDmEventScheduler::CreateConditionLC >>")); |
385 _DMEVNT_DEBUG(_L("CDmEventScheduler::CreateConditionLC >>")); |
386 |
386 |
387 CSchConditionArray* conditions = new (ELeave) CSchConditionArray(KConditionArraySize); |
387 CSchConditionArray* conditions = new (ELeave) CSchConditionArray(KConditionArraySize); |
388 CleanupStack::PushL(conditions); //To be poped/destroyed by the caller |
388 CleanupStack::PushL(conditions); //To be poped/destroyed by the caller |
389 |
389 |
390 TTaskSchedulerCondition Condition; |
390 TTaskSchedulerCondition Condition; |
394 Condition.iState = pskeycondition.iSchState; |
394 Condition.iState = pskeycondition.iSchState; |
395 Condition.iType = pskeycondition.iSchType; |
395 Condition.iType = pskeycondition.iSchType; |
396 |
396 |
397 conditions->AppendL(Condition); |
397 conditions->AppendL(Condition); |
398 |
398 |
399 FLOG(_L("CDmEventScheduler::CreateConditionLC <<")); |
399 _DMEVNT_DEBUG(_L("CDmEventScheduler::CreateConditionLC <<")); |
400 return conditions; |
400 return conditions; |
401 } |
401 } |
402 |
402 |
403 // --------------------------------------------------------------------------- |
403 // --------------------------------------------------------------------------- |
404 // CDmEventScheduler::FindExpiredService |
404 // CDmEventScheduler::FindExpiredService |
405 // --------------------------------------------------------------------------- |
405 // --------------------------------------------------------------------------- |
406 CDmEventServiceBase* CDmEventScheduler::FindExpiredService(TName& aTaskName) |
406 CDmEventServiceBase* CDmEventScheduler::FindExpiredService(TName& aTaskName) |
407 { |
407 { |
408 FLOG(_L("CDmEventScheduler::FindExpiredService >>")); |
408 _DMEVNT_DEBUG(_L("CDmEventScheduler::FindExpiredService >>")); |
409 CDmEventServiceBase* ret (NULL); |
409 CDmEventServiceBase* ret (NULL); |
410 if (iServices[ESoftwareService]->TaskName().Compare(aTaskName) == KErrNone) |
410 if (iServices[ESoftwareService]->TaskName().Compare(aTaskName) == KErrNone) |
411 { |
411 { |
412 FLOG(_L("SW Operation detected...")) |
412 _DMEVNT_DEBUG(_L("SW Operation detected...")) |
413 ret = iServices[ESoftwareService]; |
413 ret = iServices[ESoftwareService]; |
414 } |
414 } |
415 else if (iServices[EJavaService]->TaskName().Compare(aTaskName) == KErrNone) |
415 else if (iServices[EJavaService]->TaskName().Compare(aTaskName) == KErrNone) |
416 { |
416 { |
417 FLOG(_L("Java Inst Operation detected...")) |
417 _DMEVNT_DEBUG(_L("Java Inst Operation detected...")) |
418 ret = iServices[EJavaService]; |
418 ret = iServices[EJavaService]; |
419 } |
419 } |
420 else if (iServices[EMmcService]->TaskName().Compare(aTaskName) == KErrNone) |
420 else if (iServices[EMmcService]->TaskName().Compare(aTaskName) == KErrNone) |
421 { |
421 { |
422 FLOG(_L("MMC Operation detected...")) |
422 _DMEVNT_DEBUG(_L("MMC Operation detected...")) |
423 ret = iServices[EMmcService]; |
423 ret = iServices[EMmcService]; |
424 } |
424 } |
425 else |
425 else |
426 { |
426 { |
427 //Should not land here... |
427 //Should not land here... |
428 FLOG(_L("Unknown trigger")); |
428 _DMEVNT_DEBUG(_L("Unknown trigger")); |
429 } |
429 } |
430 |
430 |
431 FLOG(_L("CDmEventScheduler::FindExpiredService, ret = %X <<"), ret); |
431 _DMEVNT_DEBUG(_L("CDmEventScheduler::FindExpiredService, ret = %X <<"), ret); |
432 return ret; |
432 return ret; |
433 } |
433 } |
434 |
434 |
435 // --------------------------------------------------------------------------- |
435 // --------------------------------------------------------------------------- |
436 // CDmEventScheduler::NotifyRegisteredServicesL |
436 // CDmEventScheduler::NotifyRegisteredServicesL |
437 // --------------------------------------------------------------------------- |
437 // --------------------------------------------------------------------------- |
438 void CDmEventScheduler::NotifyRegisteredServersL(THandlerServiceId aServiceId, THandlerOperation aOpn) |
438 void CDmEventScheduler::NotifyRegisteredServersL(THandlerServiceId aServiceId, THandlerOperation aOpn) |
439 { |
439 { |
440 FLOG(_L("CDmEventScheduler::NotifyRegisteredServersL, serviceid = %d, operation = %d >>"), aServiceId, aOpn); |
440 _DMEVNT_DEBUG(_L("CDmEventScheduler::NotifyRegisteredServersL, serviceid = %d, operation = %d >>"), aServiceId, aOpn); |
441 //Read whome to notify... |
441 //Read whome to notify... |
442 CRepository* cenrep (NULL); |
442 CRepository* cenrep (NULL); |
443 cenrep = CRepository::NewLC( KAppDmEventNotifierUid ); |
443 cenrep = CRepository::NewLC( KAppDmEventNotifierUid ); |
444 TInt notifyscp (KErrNotFound); |
444 TInt notifyscp (KErrNotFound); |
445 TInt error = cenrep->Get(KDmEventNotifierEnabled, notifyscp); |
445 TInt error = cenrep->Get(KDmEventNotifierEnabled, notifyscp); |
449 |
449 |
450 CleanupStack::PopAndDestroy(cenrep); |
450 CleanupStack::PopAndDestroy(cenrep); |
451 |
451 |
452 if (notifyscp) |
452 if (notifyscp) |
453 { |
453 { |
454 FLOG(_L("CDmEventScheduler::NotifyRegisteredServersL: Invocation of SCPEventHandler")); |
454 TInt err = KErrNone; |
455 TRAPD ( err, { |
455 _DMEVNT_DEBUG(_L("CDmEventScheduler::NotifyRegisteredServersL: Invocation of SCPEventHandler")); |
|
456 TRAP( err, { |
456 CSCPEventHandler* handler = CSCPEventHandler::NewL(); |
457 CSCPEventHandler* handler = CSCPEventHandler::NewL(); |
457 handler->NotifyChangesL(aServiceId, aOpn); |
458 handler->NotifyChangesL(aServiceId, aOpn); |
458 delete handler; |
459 delete handler; |
459 handler = NULL; |
460 handler = NULL; |
460 }); |
461 }); |
461 FLOG(_L("CDmEventScheduler::NotifyRegisteredServersL: SCPEventHandler completed with err: %d"), err); |
462 _DMEVNT_DEBUG(_L("CDmEventScheduler::NotifyRegisteredServersL: SCPEventHandler completed with err: %d"), err); |
462 } |
463 } |
463 if (notifyam) |
464 if (notifyam) |
464 { |
465 { |
465 //Notify AM server on the happened operation |
466 //Notify AM server on the happened operation |
466 } |
467 } |
467 |
468 |
468 FLOG(_L("CDmEventScheduler::NotifyRegisteredServersL notifyscp = %d, notifyam = %d<<"),notifyscp,notifyam); |
469 _DMEVNT_DEBUG(_L("CDmEventScheduler::NotifyRegisteredServersL notifyscp = %d, notifyam = %d<<"),notifyscp,notifyam); |
469 } |
470 } |
470 |
471 |
471 // --------------------------------------------------------------------------- |
472 // --------------------------------------------------------------------------- |
472 // CDmEventScheduler::IsScneduleEnabledL |
473 // CDmEventScheduler::IsScneduleEnabledL |
473 // --------------------------------------------------------------------------- |
474 // --------------------------------------------------------------------------- |
474 TBool CDmEventScheduler::IsScheduleEnabledL() |
475 TBool CDmEventScheduler::IsScheduleEnabledL() |
475 { |
476 { |
476 FLOG(_L("CDmEventScheduler::IsScheduleEnabledL >>")); |
477 _DMEVNT_DEBUG(_L("CDmEventScheduler::IsScheduleEnabledL >>")); |
477 CRepository* cenrep (NULL); |
478 CRepository* cenrep (NULL); |
478 TInt error (KErrNone); |
479 TInt error (KErrNone); |
479 TInt value (KErrNotFound); |
480 TInt value (KErrNotFound); |
480 |
481 |
481 TRAP(error, cenrep = CRepository::NewL( KAppDmEventNotifierUid )); |
482 TRAP(error, cenrep = CRepository::NewL( KAppDmEventNotifierUid )); |
482 |
483 |
483 FLOG(_L("Cenrep file read status = %d"), error); |
484 _DMEVNT_DEBUG(_L("Cenrep file read status = %d"), error); |
484 User::LeaveIfError(error); |
485 User::LeaveIfError(error); |
485 CleanupStack::PushL(cenrep); |
486 CleanupStack::PushL(cenrep); |
486 |
487 |
487 error = cenrep->Get(KDmEventNotifierEnabled, value); |
488 error = cenrep->Get(KDmEventNotifierEnabled, value); |
488 |
489 |
489 CleanupStack::PopAndDestroy(cenrep); |
490 CleanupStack::PopAndDestroy(cenrep); |
490 |
491 |
491 FLOG(_L("CDmEventScheduler::IsScheduleEnabledL, value = %d, error = %d <<"),value, error); |
492 _DMEVNT_DEBUG(_L("CDmEventScheduler::IsScheduleEnabledL, value = %d, error = %d <<"),value, error); |
492 return (value == EHandlerRegistered); |
493 return (value == EHandlerRegistered); |
493 } |
494 } |
494 |
495 |
495 // --------------------------------------------------------------------------- |
496 // --------------------------------------------------------------------------- |
496 // CDmEventScheduler::SetScheduleEnabledL |
497 // CDmEventScheduler::SetScheduleEnabledL |
497 // --------------------------------------------------------------------------- |
498 // --------------------------------------------------------------------------- |
498 void CDmEventScheduler::SetScheduleEnabledL(TBool aValue) |
499 void CDmEventScheduler::SetScheduleEnabledL(TBool aValue) |
499 { |
500 { |
500 FLOG(_L("CDmEventScheduler::SetScheduleEnabledL, aValue = %d >>"), aValue); |
501 _DMEVNT_DEBUG(_L("CDmEventScheduler::SetScheduleEnabledL, aValue = %d >>"), aValue); |
501 |
502 |
502 CRepository* cenrep (NULL); |
503 CRepository* cenrep (NULL); |
503 TInt error (KErrNone); |
|
504 |
504 |
505 cenrep = CRepository::NewL( KAppDmEventNotifierUid ); |
505 cenrep = CRepository::NewL( KAppDmEventNotifierUid ); |
506 CleanupStack::PushL(cenrep); |
506 CleanupStack::PushL(cenrep); |
507 |
507 |
508 error = cenrep->Set(KDmEventNotifierEnabled, aValue); |
508 TInt error = cenrep->Set(KDmEventNotifierEnabled, aValue); |
509 |
509 |
510 CleanupStack::PopAndDestroy(cenrep); |
510 CleanupStack::PopAndDestroy(cenrep); |
511 |
511 |
512 FLOG(_L("CDmEventScheduler::SetScheduleEnabledL, error = %d <<"),error); |
512 _DMEVNT_DEBUG(_L("CDmEventScheduler::SetScheduleEnabledL, error = %d <<"),error); |
513 } |
513 } |
514 //End of file |
514 //End of file |