示例#1
0
    public List <AgentDecisionTask> RationaleDecision(List <AgentTasksInfo> agentTasks)
    {
        bestSet = null;

        List <List <Task> > allTasks = new List <List <Task> >();

        //Handle currenTask, only task in iteration task? or sent appart?
        foreach (AgentTasksInfo a in agentTasks)
        {
            List <Task> tasks = new List <Task>(a.GetIterationTasks());
            allTasks.Add(tasks);
        }

        FormSets(allTasks, 0, new List <Task>());

        if (bestSet == null)
        {
            return(null);
        }

        List <AgentDecisionTask> agentsDecisions = new List <AgentDecisionTask>();
        List <Task> bestTasks = bestSet.GetSet();

        for (int i = 0; i < bestTasks.Count; i++)
        {
            AgentDecisionTask adt = new AgentDecisionTask(bestTasks[i], agentTasks[i].GetId());
            agentsDecisions.Add(adt);
        }
        return(agentsDecisions);
    }
示例#2
0
    public Task removeTask(List <Cube> remove)
    {
        TaskSet ts = new TaskSet();

        if (remove.Count > 0)
        {
            TaskManager.PushFront(ts, delegate {
                _sound.remove.Play();
            });
            foreach (Cube c in remove)
            {
                c.isEnabled = false;
                Square s = _view.play.getSquare((int)(c.position.x), (int)(c.position.y));
                ts.push(s.removeTask());
                this._model.score++;
                float a = ((float)(this._model.score)) / 500.0f;
                _speed         = 1.0f * (1 - a) + 10.0f * a;
                Time.timeScale = _speed;
                Debug.Log("speed" + _speed);
            }
        }
        TaskManager.PushBack(ts, delegate {
            refreshModel2View();
        });
        return(ts);
    }
示例#3
0
    private void FormSets(List <List <Task> > allTasks, int index, List <Task> currentSet)
    {
        foreach (Task t in allTasks[index])
        {
            List <Task> cloneSet = new List <Task>(currentSet);
            cloneSet.Add(t);

            if (index < allTasks.Count - 1)
            {
                index++;
                FormSets(allTasks, index, cloneSet);
                index--;
            }
            else
            {
                TaskSet set = new TaskSet(cloneSet);
                CalculateSetUtility(set);
                if (this.bestSet == null)
                {
                    bestSet = set;
                }
                else
                {
                    if (set.GetCost() < bestSet.GetCost())
                    {
                        bestSet = set;
                    }
                }
            }
        }
    }
        public void ThreadSafeDictionary_Modify_MultiThread(int n_tasks)
        {
            ThreadSafeDictionary <int, int> list = new ThreadSafeDictionary <int, int>();

            list.Add(0, 0);
            list.Add(1, 1);

            Func <int, int> fn_inc = (v) => ++ v;
            Func <int, int> fn_inv = (v) => - v;
            TaskSet <int>   ts     = new TaskSet <int>();

            ts.Task = new Action <int>((t) =>
            {
                list.Modify(0, fn_inc);
                list.Modify(1, fn_inv);
            });

            List <Task> tasks = new List <Task>(n_tasks);

            for (int t = 0; t < n_tasks; t++)
            {
                tasks.Add(TaskHandler.StartNew(ts, t));
            }

            Task.WaitAll(tasks.ToArray());

            Assert.Multiple(() =>
            {
                Assert.That(list[0], Is.EqualTo(n_tasks));
                Assert.That(list[1], Is.EqualTo(n_tasks % 2 == 0 ? 1 : -1));
            });
        }
示例#5
0
    public Task moveTask(int number, Vector2 begin, Vector2 end)
    {
        TaskSet ts = new TaskSet();
        Square  s  = (Square)GameObject.Instantiate(_phototype);
        Square  b  = this.getSquare((int)(begin.x), (int)(begin.y));
        Square  e  = this.getSquare((int)(end.x), (int)(end.y));

        s.transform.SetParent(b.transform.parent);
        s.transform.localScale    = b.transform.localScale;
        s.transform.localPosition = b.transform.localPosition;
        s.show();
        s.number = number;
        b.hide();
        TweenTask tt = new TweenTask(delegate() {
            return(TweenLocalPosition.Begin(s.gameObject, 0.5f, e.transform.localPosition));
        });

        TweenTask t2 = new TweenTask(delegate() {
            return(TweenRotation.Begin(s.gameObject, 0.5f, Quaternion.AngleAxis((begin.x - end.x) * 90.0f, Vector3.up)));
        });

        ts.push(tt);
        ts.push(t2);

        TaskManager.PushBack(ts, delegate {
            GameObject.DestroyObject(s.gameObject);
        });
        return(ts);
    }
示例#6
0
    // Use this for initialization
    void Start()
    {
        TaskList taskList = new TaskList();
        //创建任务 当回调为true时进行下一个任务
        Task task1 = new Task();

        task1.init = delegate() {
            Debug.Log("this is first task!!!");
        };
        task1.IsOver = delegate() {
            //只有返回true才会执行下一任务
            return(true);
        };
        taskList.push(task1);

        //挂起两秒
        TaskWait wait = new TaskWait();

        wait.SetAllWaitTime(2f);
        taskList.push(wait);

        //创建第二个任务
        Task task2 = new Task();

        task2.init = delegate() {
            Debug.Log("this is second task!!!");
        };
        taskList.push(task2);


        TaskSet mt = new TaskSet();
        //创建第三个任务
        Task task3 = new Task();

        task3.init = delegate() {
            Debug.Log("this is third task!!!");
        };
        task3.IsOver = delegate()
        {
            Debug.Log("third task is finish");
            return(true);
        };
        mt.push(task3);

        //创建第四个任务
        Task task4 = new Task();

        task4.init = delegate() {
            Debug.Log("this is forth task!!!");
        };
        task4.IsOver = delegate()
        {
            Debug.Log("forth task is finish");
            return(true);
        };
        mt.push(task4);
        taskList.push(mt);

        TaskManager.Run(taskList);
    }
示例#7
0
        public DataTransfer.Models.TaskNode AddTask(DataTransfer.Events.TaskData item, Guid taskGraphId)
        {
            var taskGraph = Get(taskGraphId);

            var task = new DataTransfer.Models.TaskNode
            {
                Data = new TaskData
                {
                    Id            = item.Id,
                    CurrentStatus = item.CurrentStatus,
                    Description   = item.Description,
                    Name          = item.Name
                },
                AssignedUser = null,
                EstimatedCompletionTimespan = 0,
                OutNeighbors = new List <Guid>()
            };

            if (taskGraph.RootId is null && !taskGraph.TaskSetId.HasValue)
            {
                taskGraph.RootId    = task.Data.Id;
                taskGraph.TaskSetId = Guid.NewGuid();
                DataCollectorFactory.taskGraphCollector.Update(taskGraph);
                var taskSet = new TaskSet
                {
                    Id    = taskGraph.TaskSetId.Value,
                    Tasks = new List <TaskNode>()
                };
                taskSet.Tasks.Add(task);
                DataCollectorFactory.taskSetCollector.Add(taskSet);
            }
示例#8
0
        public static void AddTask(TaskLookup task)
        {
            TaskSet taskSet = new TaskSet();

            taskSet.TaskName        = task.TaskName;
            taskSet.TaskDescription = task.TaskDescription;
            taskSet.CreatedBy       = task.CreatedBy;
            taskSet.ModifiedBy      = task.ModifiedBy;
            taskSet.DateCreated     = DateTime.Now;
            // Set Status Id of 1 for Pending
            taskSet.StatusId = 1;

            taskSet.Files = new List <File_Task>();
            foreach (var file in task.Attachments)
            {
                File_Task fileEntity = new File_Task();
                fileEntity.FileGuid      = file.FileGuid;
                fileEntity.FileName      = file.FileName;
                fileEntity.ContentType   = file.ContentType;
                fileEntity.FileExtension = file.FileExtension;
                fileEntity.FilePath      = file.FilePath;
                taskSet.Files.Add(fileEntity);
            }

            ContextManager.AddTask(taskSet);
        }
示例#9
0
        /// <summary>
        /// Store TaskSetName-TaskSetId pair into database.
        /// To prevent duplication, do not add if the TaskSetId already exists.
        /// </summary>
        /// <param name="db">An instance of <see cref="OnboardingDbContext"/>.</param>
        public static void AddOrUpdateTaskSets(OnboardingDbContext db)
        {
            Logger.Debug("Updating TaskSets by retrieving from source depot...");
            SystemHelpers.SyncDepot();
            var xmlDoc = new XmlDocument();

            xmlDoc.Load(Constants.RbacpolicyPath + Constants.TaskSetsFilename);
            var nameList = xmlDoc.GetElementsByTagName("DisplayName");
            var idList   = xmlDoc.GetElementsByTagName("TaskSetId");

            if (nameList != null)
            {
                for (var i = 0; i < nameList.Count; i++)
                {
                    var entity = new TaskSet
                    {
                        TaskSetName = nameList[i].InnerText,
                        TaskSetId   = idList[i].InnerText
                    };
                    if (db.TaskSets.Any(e => e.TaskSetId == entity.TaskSetId))
                    {
                        db.TaskSets.Attach(entity);
                        db.Entry(entity).State = EntityState.Modified;
                    }
                    else
                    {
                        db.TaskSets.Add(entity);
                    }
                }
            }
            var num = db.SaveChanges();

            Logger.Debug(num + " TaskSets have been updated in database");
        }
示例#10
0
        public Task createTask()
        {
            TaskSet ts = new TaskSet();

            ts.push(pointTask());
            ts.push(listTask());
            return(ts);
        }
示例#11
0
    private Task outHeadAndEnd()
    {
        TaskSet ts = new TaskSet();

        ts.push(outHead());
        ts.push(outEnd());
        return(ts);
    }
示例#12
0
    private Task inHeadAndEnd()
    {
        TaskSet ts = new TaskSet();

        ts.push(inHead());
        ts.push(inEnd());
        return(ts);
    }
 public static TaskSet GetTaskById(int taskId)
 {
     using (var db = new Context())
     {
         TaskSet taskRef = db.Tasks.Where(t => t.TaskId == taskId).Include("Status").Include("Files").FirstOrDefault();
         return(taskRef);
     }
 }
示例#14
0
    // Use this for initialization
    void Start()
    {
        TaskList tl    = new TaskList();
        Task     task1 = new Task();

        task1.init = delegate() {
            Debug.Log("this is firs task!!!");
        };
        task1.isOver = delegate() {
            return(true);
        };
        tl.push(task1);
        TaskWait wait = new TaskWait();

        wait.setAllTime(2f);
        tl.push(wait);
        Task task2 = new Task();

        task2.init = delegate() {
            Debug.Log("this is second task!!!");
        };
        tl.push(task2);

        TaskSet mt    = new TaskSet();
        Task    task3 = new Task();

        task3.init = delegate() {
            Debug.Log("this is third task!!!");
        };
        mt.push(task3);

        Task task4 = new Task();

        task4.init = delegate() {
            Debug.Log("this is four task!!!");
        };
        mt.push(task4);
        TaskWait wait2 = new TaskWait();

        wait2.setAllTime(5f);
        mt.push(wait2);

        Task task5 = new Task();

        task5.init = delegate() {
            Debug.Log("this is five task!!!");
        };
        mt.push(task5);

        tl.push(mt);


        TaskManager.Run(tl);
    }
示例#15
0
    private void PrintSet(TaskSet set)
    {
        string print = "Set = (";

        foreach (Task t in set.GetSet())
        {
            print += t.GetId() + ", ";
        }
        print += ")";
        Debug.Log(print);
    }
        private IList<IRunTask> MapTasks(string hostName, TaskSet workItem)
        {
            var tasks = new List<IRunTask>();
            foreach (var item in workItem.Tasks)
            {
                var job = repository.GetJob(item.JobName);
                var client = repository.GetClient(job.ClientName);
                tasks.Add(this.CreateTask(client, job));
            }

            return tasks;
        }
示例#17
0
    private State getInit()
    {
        StateWithEventMap init = TaskState.Create(delegate() {
            _buoy.transform.localScale = Vector3.one * _unit * 1.01f;

            TaskSet ts = new TaskSet();

            ts.push(goLine());
            return(ts);
        }, this.fsm_, "draw");

        return(init);
    }
        public DataTransfer.Models.TaskNode AddTask(DataTransfer.Events.TaskData item, Guid taskGraphId)
        {
            var taskGraph = Get(taskGraphId);

            var task = new DataTransfer.Models.TaskNode
            {
                Data = new TaskData
                {
                    Id            = item.Id,
                    CurrentStatus = (DataLayer.Models.TaskData.Status)((int)item.CurrentStatus),
                    Description   = item.Description,
                    Name          = item.Name
                },
                AssignedUser = null,
                EstimatedCompletionTimespan = item.EstimatedCompletionTime,
                OutNeighbors = new List <Guid>(),
                InNeighbors  = new List <Guid>(),
                ParentId     = null,
                TaskGraphId  = taskGraphId,
                WorkspaceId  = null,
                IsRoot       = false
            };

            if (!taskGraph.TaskSetId.HasValue)
            {
                taskGraph.TaskSetId = Guid.NewGuid();
                var mappedTaskGraph = Mappers[Tuple.Create(Layer.Data, Layer.DataTransfer)].Map <TaskGraph, DataLayer.Models.TaskGraph>(taskGraph);
                DataCollectorFactory.taskGraphCollector.Update(mappedTaskGraph);
                var taskSet = new TaskSet
                {
                    Id    = taskGraph.TaskSetId.Value,
                    Tasks = new List <TaskNode>()
                };
                taskSet.Tasks.Add(task);

                var mappedTaskSet = ConvertTaskSet(taskSet);
                DataCollectorFactory.taskSetCollector.Add(mappedTaskSet);
            }

            if (taskGraph.RootId is null || taskGraph.RootId.Equals(Guid.Empty))
            {
                var taskSet = ServiceFactory.TaskSetService.Get(taskGraph.TaskSetId.Value);
                taskGraph.RootId = task.Data.Id;
                var mappedTaskGraph = Mappers[Tuple.Create(Layer.Data, Layer.DataTransfer)].Map <TaskGraph, DataLayer.Models.TaskGraph>(taskGraph);
                DataCollectorFactory.taskGraphCollector.Update(mappedTaskGraph);
                task.IsRoot             = true;
                task.Data.CurrentStatus = DLStatus.Assignable;
                taskSet.Tasks.Add(task);
                var mappedTaskSet = ConvertTaskSet(taskSet);
                DataCollectorFactory.taskSetCollector.Update(mappedTaskSet);
            }
        public static void AddTask(TaskSet task)
        {
            using (var db = new Context())
            {
                db.Tasks.Add(task);

                // Add Multiple file paths to table
                foreach (var file in task.Files)
                {
                    db.Files.Add(file);
                }

                db.SaveChanges();
            }
        }
示例#20
0
    public Task inCap()
    {
        TaskSet   ts   = new TaskSet();
        TweenTask left = new TweenTask(delegate() {
            return(TweenRotation.Begin(_capLeft, 1.0f, Quaternion.Euler(0, 0, 0)));
        });

        ts.push(left);

        TweenTask right = new TweenTask(delegate() {
            return(TweenRotation.Begin(_capRight, 1.0f, Quaternion.Euler(0, 0, 0)));
        });

        ts.push(right);
        return(ts);
    }
示例#21
0
        public void TaskSetPropertiesTest()
        {
            //arrange
            long   task_set_id   = 1;
            string task_set_name = "Task1";

            //act
            TaskSet taskSet = new TaskSet();

            taskSet.TaskSetId   = task_set_id;
            taskSet.TaskSetName = task_set_name;

            //assert
            Assert.AreEqual(task_set_id, taskSet.TaskSetId, "taskSetId incompatibility");
            Assert.AreEqual(task_set_name, taskSet.TaskSetName, "taskSetName incompatibility");
        }
        public void Should_Process_single_task()
        {
            int freq = 1;
            var task = MockRepository.GenerateMock<ITask>();
            task.Expect(x => x.Process());
            var tasks = new List<ITask> { task };
            IStop stop = MockRepository.GenerateMock<IStop>();
            stop.Expect(x => x.ShouldStop()).Return(false).Repeat.Once();
            stop.Expect(x => x.ShouldStop()).Return(true).Repeat.Once();
            var taskSet = new TaskSet(tasks, stop, freq);

            taskSet.Process();

            task.VerifyAllExpectations();
            stop.VerifyAllExpectations();
        }
示例#23
0
    public Task inFire()
    {
        TaskSet   ts   = new TaskSet();
        TweenTask left = new TweenTask(delegate() {
            return(TweenLocalPosition.Begin(_fireLeft, 1.0f, new Vector3(0, 0, 0)));
        });

        ts.push(left);

        TweenTask right = new TweenTask(delegate() {
            return(TweenLocalPosition.Begin(_fireRight, 1.0f, new Vector3(0, 0, 0)));
        });

        ts.push(right);
        return(ts);
    }
        public static bool UpdateTaskStatusById(int taskId, int statusId)
        {
            using (var db = new Context())
            {
                TaskSet taskRef = db.Tasks.Find(taskId);
                if (taskRef != null)
                {
                    //var status = ContextManager.GetStatusById(statusId);

                    taskRef.StatusId = statusId;
                    db.SaveChanges();
                    return(true);
                }
            }
            return(false);
        }
示例#25
0
    private Task inWing()
    {
        TaskSet   ts   = new TaskSet();
        TweenTask left = new TweenTask(delegate() {
            return(TweenLocalPosition.Begin(_wingLeft, 1.0f, new Vector3(0, 0, 0)));
        });

        ts.push(left);


        TweenTask right = new TweenTask(delegate() {
            return(TweenLocalPosition.Begin(_wingRight, 1.0f, new Vector3(0, 0, 0)));
        });

        ts.push(right);
        return(ts);
    }
示例#26
0
文件: Label.cs 项目: nethz/MrPP.com
        public Task createTask()
        {
            TaskList tl = new TaskList();

            tl.push(_first.createTask());
            TaskSet ts = new TaskSet();

            ts.push(_second.createTask());
            ts.push(_third.createTask());
            tl.push(ts);
            TaskManager.PushBack(tl, delegate
            {
                _title.SetActive(true);
                _text.SetActive(true);
            });
            return(tl);
        }
示例#27
0
        public Task goTask(float duration)
        {
            TaskSet ts = new TaskSet();

            for (int i = 0; i < this._parts.Count; ++i)
            {
                Part part = this._parts[i];

                TaskList tl = new TaskList();
                for (int n = 1; n < part.targets.Count; ++n)
                {
                    Transform tranform = part.targets[n];
                    tl.push(partTask(part.origin.gameObject, tranform, duration));
                }
                ts.push(tl);
            }
            return(ts);
        }
示例#28
0
    /// <summary>
    /// 下落,从下往上检查,当检查到有方块显示时,开始让他从上往下下落到底部
    /// 将下落过程做为一个任务来执行
    /// </summary>
    private Task DoFall()
    {
        TaskSet ts   = new TaskSet();
        Cube    end  = null;
        int     endY = 0;

        for (int i = 0; i < _model.width; i++)
        {
            for (int j = _model.height - 1; j >= 0; --j)
            {
                Cube c = _model.GetCube(i, j);
                if (c.isEnable)
                {
                    for (int k = j + 1; k < _model.height; ++k)
                    {
                        Cube f = _model.GetCube(i, k);
                        if (f == null || f.isEnable)
                        {
                            break;
                        }
                        else
                        {
                            end  = f;
                            endY = k;
                        }
                    }
                    if (end != null)
                    {
                        end.number   = c.number;
                        end.isEnable = true;
                        c.isEnable   = false;
                        ts.push(_view.play.MoveTask(c.number, new Vector2(i, j), new Vector2(i, endY)));
                    }
                }
            }
        }

        //在任务集全部执行完毕后在刷新界面
        TaskManager.PushBack(ts, delegate
        {
            RefreshModelToView();
        });
        return(ts);
    }
示例#29
0
    public Task doFallTask()
    {
        TaskSet ts = new TaskSet();

        for (int x = 0; x < _model.width; ++x)
        {
            for (int y = _model.height - 1; y >= 0; --y)
            {
                Cube c    = _model.getCube(x, y);
                Cube end  = null;
                int  endY = 0;
                if (c.isEnabled)
                {
                    for (int n = y + 1; n < _model.height; ++n)
                    {
                        Cube fall = _model.getCube(x, n);
                        if (fall == null || fall.isEnabled == true)
                        {
                            break;
                        }
                        else
                        {
                            end  = fall;
                            endY = n;
                        }
                    }
                    if (end != null)
                    {
                        end.number    = c.number;
                        end.isEnabled = true;
                        c.isEnabled   = false;
                        ts.push(_view.play.moveTask(c.number, new Vector2(x, y), new Vector2(x, endY)));
                        TaskManager.PushBack(ts, delegate {
                            _sound.fall.Play();
                        });
                    }
                }
            }
        }
        TaskManager.PushBack(ts, delegate() {
            refreshModel2View();
        });
        return(ts);
    }
示例#30
0
文件: Ctrl.cs 项目: Physics-EA/Ten
    private Task DoFallTask()
    {
        TaskSet ts = new TaskSet();

        for (int i = model.height; i >= 1; i--)
        {
            for (int j = 1; j <= model.width; j++)
            {
                Cube c    = model.GetCube(i, j);
                Cube end  = null;
                int  endY = 1;
                if (c.isEnabled == true)
                {
                    for (int k = i + 1; k <= model.height; k++)
                    {
                        Cube fall = model.GetCube(k, j);
                        if (fall == null || fall.isEnabled == true)
                        {
                            break;
                        }
                        else
                        {
                            end  = fall;
                            endY = k;
                        }
                    }
                    if (end != null)
                    {
                        end.number    = c.number;
                        end.isEnabled = true;
                        c.isEnabled   = false;
                        ts.push(view.play.MoveTask(c.number, new Vector2(i, j), new Vector2(endY, j)));
                    }
                }
            }
        }

        TaskManager.PushBack(ts, delegate
        {
            RefreshModel2View();
        });

        return(ts);
    }
示例#31
0
 public TranscodeJob(ThreadPool pool, string jobToken, string callbackUrl)
 {
     this.taskSet          = new TaskSet(pool, this, WaitStrategy.MODERATE);
     this.jobToken         = jobToken;
     this.flaggedComplete  = false;
     this.download         = null;
     this.failed           = false;
     this.cleaned          = false;
     this.startTime        = DateTime.Now;
     this.callbackUrl      = callbackUrl;
     this.markedTasks      = 0;
     this.tag              = null;
     this.passes           = new ConcurrentDictionary <string, Multipass>();
     this.workingDirectory = FFRest.config["workingdir"] + Path.DirectorySeparatorChar + this.jobToken;
     if (this.workingDirectory[this.workingDirectory.Length - 1] != Path.DirectorySeparatorChar)
     {
         this.workingDirectory += Path.DirectorySeparatorChar;
     }
 }
        public void Should_Stop_after_Processing_multiple_tasks()
        {
            int freq = 2;
            var task1 = MockRepository.GenerateMock<ITask>();
            task1.Expect(x => x.Process()).Repeat.Once();
            var task2 = MockRepository.GenerateMock<ITask>();
            task2.Expect(x => x.Process()).Repeat.Once();
            var tasks = new List<ITask> { task1, task2 };
            var stop = MockRepository.GenerateMock<IStop>();
            stop.Expect(x => x.ShouldStop()).Return(false).Repeat.Once();
            stop.Expect(x => x.ShouldStop()).Return(true).Repeat.Once();
            var taskSet = new TaskSet(tasks, stop, freq);

            taskSet.Process();

            task1.VerifyAllExpectations();
            task2.VerifyAllExpectations();
            stop.VerifyAllExpectations();
        }
示例#33
0
 public TranscodeJob(ThreadPool pool, string jobToken, string callbackUrl)
 {
     this.taskSet = new TaskSet(pool,this, WaitStrategy.MODERATE);
     this.jobToken = jobToken;
     this.flaggedComplete = false;
     this.download = null;
     this.failed = false;
     this.cleaned = false;
     this.startTime = DateTime.Now;
     this.callbackUrl = callbackUrl;
     this.markedTasks = 0;
     this.tag = null;
     this.passes = new ConcurrentDictionary<string, Multipass>();
     this.workingDirectory =  FFRest.config["workingdir"] + Path.DirectorySeparatorChar + this.jobToken;
     if (this.workingDirectory[this.workingDirectory.Length-1] != Path.DirectorySeparatorChar)
     {
         this.workingDirectory += Path.DirectorySeparatorChar;
     }
 }
示例#34
0
 public void Should_try_controller()
 {
     var log = LogManager.GetLogger("log");
     log4net.Config.XmlConfigurator.Configure();
     //var host = "metrics.london.ttldev.local";
     //var port = 2003;
     //var connectionString = "Data Source=nuget.london.ttldev.local;Initial Catalog=GoReportingSvn3;User Id=sa;Password=!bcde1234;";
     //var sqlGetter = new SqlGetter(connectionString, host, port, log);
     //var sql = "SELECT [Assigned],DateDiff(s,[Scheduled],[Assigned]) FROM [GoReportingSvn3].[dbo].[V_BuildStateTransition] where Scheduled > '2012-01-01'";
     //sqlGetter.Process("owain.test.Tlsvn3.Assigned", sql);
     var ds = "Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=10.244.127.11)(PORT=1532)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=tracslg2)));User Id=temp_ttl_user;Password=tt1r34dj0b;";
     var taskParam = new TaskParams("ThePath", "SELECT concat(dm_code,concat('_',current_ds_code)) AS dm, COUNT(DISTINCT (d.ID)) AS dm_count FROM DELIVERIES D WHERE d.tr_ID >= (SELECT TR_ID FROM TRANSACTION_FIRSTOFDAY WHERE date_of_tr = TRUNC(SYSDATE)) GROUP BY dm_code, current_ds_code", ds, "Oracle", "name", "graphiteudp");
     var tasks = new List<ITask> { new Task(taskParam, new DataClientFactory(log), new GraphiteClientFactory(log), new GraphiteParams("hostname", 1234), log) };
     var set = new TaskSet(tasks, new Stop(), 1000);
     var sleep = new Sleeper();
     var stop = new Stop();
     var controller = new Controller(set, sleep, stop, log);
     controller.Process();
 }
示例#35
0
    private State getStart()
    {
        State state = new State();

        state.onStart += delegate() {
            //关闭注册窗口
            MenuView.Instance.closeRegister();
            //显示最高排行按钮
            MenuView.Instance.top();
            TaskSet ts = new TaskSet();
            //飞机飞进来
            ts.push(MenuView.Instance._fly.comein());
            TaskManager.Run(ts);
        };

        state.onOver += delegate() {
            TaskManager.Run(MenuView.Instance._fly.goout());
        };
        return(state);
    }
 private static WorkItems CreateWorkItems(string taskName, string roleName, int freq)
 {
     var wi = new WorkItems { RoleName = roleName };
     var ts = new TaskSet { Frequency = freq };
     var task = new Task { JobName = taskName };
     ts.Tasks.Add(task);
     wi.TaskSet.Add(ts);
     return wi;
 }
示例#37
0
        private void BuildTaskList(TaskSet taskset, Panel p, TabPage tab, EventHandler startHandler, EventHandler buttonHandler, List<string> taskList, bool enableTab)
        {
            Button startB = new Button();
            Label startL = new Label();

            p.Tag = taskList;

            startB.Text = "Start";
            startB.Name = "Start";
            startB.Dock = DockStyle.Top;
            startB.Click += new EventHandler(startHandler);

            startL.Text = "Click the button above to start the experiment." + Environment.NewLine + Environment.NewLine + "When the experiment is started a list of tasks is shown. You'll have to solve each of the tasks individually and as fast as possible. When finished or wanting to skip a task press the next button to activate the next task." + Environment.NewLine + Environment.NewLine + "Once the next button has been clicked you cannot edit your answer.";
            startL.Top = startB.Bottom + 10;
            startL.AutoSize = true;
            startL.MaximumSize = new Size(Width - 50, 5000);

            startB.Enabled = enableTab;

            tab.Controls.Add(startB);
            tab.Controls.Add(startL);

            // open file
            StreamReader sr = File.OpenText("./Experiment/Tasks/" + taskset.tasksfile);
            
            // read source filename
            taskset.sourcefile = sr.ReadLine();
            startB.Tag = taskset;

            // read lines 
            while (sr.Peek() >= 0)
            {
                string line = sr.ReadLine();
                taskList.Add(line);
            }

            int buttonWidth = 80;
            int y = 0;
            for (int i = 0; i < taskList.Count; i++)
            {

                Label l = new Label();
                l.Text = "(" + (i + 1).ToString() + ") " + taskList[i];
                l.Top = y;
                l.Font = new Font(l.Font, FontStyle.Bold);
                l.AutoSize = true;
                l.MaximumSize = new Size(panel1.Width - 50, 200);
                l.Name = "Label" + i.ToString();
                l.Visible = false;
                p.Controls.Add(l);

                y += l.Height + 5;

                TextBox t = new TextBox();
                t.Multiline = true;
                t.WordWrap = true;
                t.Height = t.Height * 3;
                t.Width = Width - buttonWidth - 60;
                t.Top = y;
                t.Left = 5;
                if (i != 0)
                    t.Enabled = false;
                t.Name = "Answer" + i.ToString();
                p.Controls.Add(t);

                y += t.Height + 20;

                Button b = new Button();
                b.Left = t.Right + 10;
                b.Width = buttonWidth;
                b.Text = "Next";
                b.Click += new EventHandler(buttonHandler);
                b.Top = t.Top;
                if (i != 0)
                    b.Enabled = false;
                b.Name = "Button" + i.ToString();
                p.Controls.Add(b);

            }
            p.Visible = false;
        }
示例#38
0
 public void CleanUp()
 {
     try
     {
         DirectoryInfo di = new DirectoryInfo(this.workingDirectory);
         foreach (var file in di.GetFiles())
         {
             file.Delete();
         }
         di.Delete();
         this.passes.Clear();
         this.taskSet = null;
         this.download = null;
         this.thumbGenerator = null;
         this.callbackUrl = null;
         this.cleaned = true;
     }
     catch (Exception ex)
     {
         log.Error("Failed to cleanup working directory", ex);
     }
 }