public override void ExecuteTask()
	   {
		  LoadBalance.MaintainLoadBalancingUrls();
		  //Reset Task
		  SchedulingManager schedulingManager = SchedulingManager.GetManager();
		  
		  var newTask = new LoadBalanceTask()
		  {
			 Key = this.Key,
			 ExecuteTime = DateTime.UtcNow.AddMinutes(5)
		  };
		  schedulingManager.AddTask(newTask);
		  schedulingManager.SaveChanges();
	   }
	   internal static void CreateMaintainLoadBalancingUrlsTask()
	   {
		  SchedulingManager manager = SchedulingManager.GetManager();
		  
		  var key = LoadBalanceTask.GuidKey;
		  
		  var existingTasks = manager.GetTaskData().Where(i => i.Key == key).ToList();
		  if (existingTasks.Count() > 0)
		  {
			 foreach (var task in existingTasks)
			 {
				manager.DeleteTaskData(task);
			 }
			 manager.SaveChanges();
		  }
		  
		  existingTasks = manager.GetTaskData().Where(i => i.Key == key).ToList();
		  
		  if (existingTasks.Count() == 0)
		  {
			 var newTask = new LoadBalanceTask();
			 
			 //Execution time  must be expressed in UTC                		
			 newTask.ExecuteTime = DateTime.UtcNow.AddMinutes(1);
			 newTask.Key = LoadBalanceTask.GuidKey;
			 manager.AddTask(newTask);
			 manager.SaveChanges();
		  }
	   }