Esempio n. 1
0
        private void RestartTask(TaskModel taskModel, string msg, Exception ex)
        {
            int repeatCrashCount = taskModel.ScheduleInformation.RepeatCrashCount - 1;
            //if (repeatCrashCount <= 1)
            //{
            //    logger.WriteTrace("All restart attempts have been expired. Task will be mark as failed.");
            //    //TODO: Set RepeatCrashCount to 0
            //    //TODO: Add message why task has been failed.
            //    TaskStateModel taskStateModel = new TaskStateModel(taskModel.Id, taskModel.QueueId, taskModel.ServerId, TaskStates.Failed);
            //    taskDataContext.SetTaskState(taskStateModel);
            //}
            //else
            //{
            TaskStateModel taskStateModel;

            if (repeatCrashCount > 0)
            {
                logger.WriteTrace("Task will be restarted.");
                taskStateModel = new TaskStateModel(taskModel.Id, taskModel.QueueId, taskModel.ServerId, TaskStates.New);
            }
            else
            {
                logger.WriteTrace("Task will be failed.");
                taskStateModel = new TaskStateModel(taskModel.Id, taskModel.QueueId, taskModel.ServerId, TaskStates.Failed);
            }
            taskDataContext.RestartTask(taskStateModel, timeShiftAfterCrash, repeatCrashCount, msg, ex);
            //}
        }
Esempio n. 2
0
        private void RestartTask(TaskModel taskModel, string msg, Exception ex)
        {
            int repeatCrashCount = taskModel.ScheduleInformation.RepeatCrashCount;

            if (repeatCrashCount <= 1)
            {
                logger.WriteTrace("All restart attempts have been expired. Task will be mark as failed.");
                //TODO: Set RepeatCrashCount to 0
                //TODO: Add message why task has been failed.
                taskDataContext.SetTaskState(taskModel.Id, TaskStates.Failed);
            }
            else
            {
                logger.WriteTrace("Task wull be restarting.");
                taskDataContext.RestartTask(taskModel.Id, timeShiftAfterCrash, taskModel.ScheduleInformation.RepeatCrashCount - 1, msg, ex);
            }
        }