public bool RunTask(VcssTaskModel vcssTask) { VcssTaskCanExecuteResult canExecute = VcssTaskCanExecuteResult.EMPTY; try { VcssTaskManagerService.Log(vcssTask.VcssTaskInfo.name, vcssTask.data, vcssTask.scheduled_time, "Run", "", DateTime.Now); canExecute = this.CanExecute(vcssTask); if (canExecute == VcssTaskCanExecuteResult.Execute) { this.ExecuteTask(vcssTask); this.UpdateTaskExecutedTime(vcssTask); VcssTaskManagerService.DeleteTask(vcssTask); return(true); } else { VcssTaskManagerService.Log(vcssTask.VcssTaskInfo.name, vcssTask.data, vcssTask.scheduled_time, "Running", canExecute.ToString(), DateTime.Now); return(false); } } catch (Exception ex) { VcssTaskManagerService.Log(vcssTask.VcssTaskInfo.name, "Info -> CanExecute: " + canExecute.ToString() + " -> Data: " + vcssTask.data, vcssTask.scheduled_time, "Run ERROR", ex.Message, DateTime.Now); return(false); } }
protected override void ExecuteTask(VcssTaskModel vcssTask) { string username = vcssTask.VcssTaskInfo.auth_token.Split('-')[0]; string password = vcssTask.VcssTaskInfo.auth_token.Split('-')[1]; string requestURL = String.Format(vcssTask.VcssTaskInfo.url, username, ComputeHash(password)); HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(requestURL); HttpWebResponse response = (HttpWebResponse)request.GetResponse(); using (Stream stream = response.GetResponseStream()) { using (StreamReader reader = new StreamReader(stream)) { var strResponse = reader.ReadToEnd(); dynamic result = JsonConvert.DeserializeObject <dynamic>(strResponse); if (result.Estado.ToString() != "Error") { VcssTaskManagerService.UpdateBOLSARAuthToken(result.Resultado.ToString()); } else { VcssTaskManagerService.Log(vcssTask.VcssTaskInfo.name, vcssTask.data, vcssTask.scheduled_time, "Running", strResponse, DateTime.Now); } } } }
public bool CreateTask(VcssTaskInfoModel vcssTaskInfo, params string[] parameters) { VcssTaskCanScheduleResult canSchedule = VcssTaskCanScheduleResult.EMPTY; string parametersStr = ""; if (parameters != null) { foreach (var item in parameters) { parametersStr += item + ";"; } } try { VcssTaskManagerService.Log(vcssTaskInfo.name, "Last Updated->", vcssTaskInfo.last_updated, "Create", "", DateTime.Now); canSchedule = this.CanSchedule(vcssTaskInfo); if (canSchedule == VcssTaskCanScheduleResult.Schedule) { this.ScheduleTask(vcssTaskInfo, parameters); return(true); } else { VcssTaskManagerService.Log(vcssTaskInfo.name, "Last Updated-> Params:" + parametersStr, vcssTaskInfo.last_updated, "Creating", canSchedule.ToString(), DateTime.Now); return(false); } } catch (Exception ex) { VcssTaskManagerService.Log(vcssTaskInfo.name, "Last Updated-> Params:" + parametersStr + " -> CanSchedule: " + canSchedule.ToString(), vcssTaskInfo.last_updated, "Create ERROR", ex.Message, DateTime.Now); return(false); } }