BackgroundTasks.cs CampusAppWP8::Utility::BackgroundTasks CampusAppWP8::Utility CampusAppWP8ScheduledTaskAgent::Resources Microsoft::Phone::Scheduler //----------------------------------------------------------------------- //<copyrightfile="BackgroundTasks.cs"company="BTU/IIT"> //Companycopyrighttag. //</copyright> //<author>stubbfel</author> //<sience>18.09.2013</sience> //---------------------------------------------------------------------- namespaceCampusAppWP8.Utility { usingSystem; usingCampusAppWP8ScheduledTaskAgent.Resources; usingCampusAppWPortalLib8.Utility; usingMicrosoft.Phone.Scheduler; publicclassBackgroundTasks:AbstractBackgroundTasks { publicstaticvoidStartPerodicTask(stringtaskName,stringtaskDesc) { BackgroundTasks.StopPerodicTask(BackgroundTasks.LastAddedTaskName); BackgroundTasks.StopPerodicTask(taskName); PeriodicTaskperiodicTask=newPeriodicTask(taskName); //loaddescriptionfromlocalizedstrings periodicTask.Description=taskDesc; try { ScheduledActionService.Add(periodicTask); //ScheduledActionService.LaunchForTest(taskName,newTimeSpan(10)); } catch(Exceptione) { Logger.LogException(e); return; } BackgroundTasks.LastAddedTaskName=taskName; } publicstaticvoidStopPerodicTask(stringtaskName) { if(taskName==null) { return; } PeriodicTaskperiodicTask=ScheduledActionService.Find(taskName)asPeriodicTask; if(periodicTask!=null) { try { ScheduledActionService.Remove(taskName); } catch(Exceptione) { Logger.LogException(e); } } } publicstaticvoidStartMensaTask() { intcampusId=(int)Settings.UserProfil.DefaultCampus; BackgroundTasks.StartPerodicTask(Constants.BackgroundTask_Mensa,AppResources.BackGroundTaskDesc_Mensa+"-Feed"+campusId); } publicstaticvoidStopMensaTask() { BackgroundTasks.StopPerodicTask(Constants.BackgroundTask_Mensa); } publicstaticvoidStartEventTask() { BackgroundTasks.StartPerodicTask(Constants.BackgroundTask_Event,AppResources.BackGroundTaskDesc_Event); } publicstaticvoidStopEventTask() { BackgroundTasks.StopPerodicTask(Constants.BackgroundTask_Event); } publicstaticvoidStartNewsTask() { BackgroundTasks.StartPerodicTask(Constants.BackgroundTask_News,AppResources.BackGroundTaskDesc_News); } publicstaticvoidStopNewsTask() { BackgroundTasks.StopPerodicTask(Constants.BackgroundTask_News); } } }