示例#1
0
 public Task UpdateStatus(uint nodeId, long taskId, TaskRunningStatus newStatus)
 {
     using (dbc = DAL.Instance.GetDb()){
         var checkTaskNode = dbc.Select <Task>(t => t.NodeId == nodeId && t.Id == taskId);
         if (checkTaskNode.Count == 1)
         {
             Task t = checkTaskNode[0];
             t.RunStatus = newStatus;
             return(Update(t));
         }
         else
         {
             throw new ArgumentException("Could not find task #" + taskId + " belonging to node #" + nodeId);
         }
     }
 }
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            if (!(value is TaskRunningStatus))
            {
                return(null);
            }
            TaskRunningStatus b = (TaskRunningStatus)value;
            var source          = new BitmapImage();

            source.BeginInit();
            switch (b)
            {
            case TaskRunningStatus.Running:
            {
                source.UriSource = new Uri(@"/AsyncReplicaTool;component/Icons/hourglass.png", UriKind.Relative);
                break;
            }

            case TaskRunningStatus.Success:
            {
                source.UriSource = new Uri(@"/AsyncReplicaTool;component/Icons/checked.png", UriKind.Relative);
                break;
            }

            case TaskRunningStatus.Failure:
            {
                source.UriSource = new Uri(@"/AsyncReplicaTool;component/Icons/error.png", UriKind.Relative);
                break;
            }

            default:
                break;
            }
            source.EndInit();
            return(source);
        }
示例#3
0
 internal void SetTaskRunningStatus(long taskId, TaskRunningStatus status)
 {
     TasksQueue[taskId].RunStatus = status;
 }
示例#4
0
 public TaskNotification(TaskRunningStatus status, string notifier)
 {
     this.Status   = status;
     this.Notifier = notifier;
 }