Пример #1
0
 private void logPushing(YomiageTask ntask)
 {
     using (StreamWriter sw = new StreamWriter("log.txt", true))
     {
         sw.WriteLine(ntask.makeLog());
     }
     log.Push(ntask);
 }
Пример #2
0
        public void addTaskBefore(string message, string autherID, string autherName, string auAd, string src, string srcAdd, CCOutputInterface outer)
        {
            YomiageTask ntask = new YomiageTask(message, autherID, autherName, auAd, outer, src, srcAdd, lastQueueCode++);

            ntask.updateListItem();
            queue.Enqueue(ntask);

            if (taskListv.InvokeRequired)
            {
                taskListv.Invoke(new addingTaskDelegate(addingTask), ntask.listviewlinkitem);
            }
            else
            {
                taskListv.Items.Add(ntask.listviewlinkitem);
            }
        }
Пример #3
0
        public void addLog(YomiageTask ntask)
        {
            ListViewItem nitem = new ListViewItem(new string[8] {
                "-" + (DateTime.Now - ntask.LogTime).ToString(@"%h\:mm\:ss")
                , ntask.AuthorName
                , ntask.AuthorID
                , ntask.authorAddinfo
                , ntask.Message
                , ntask.Outputer.getPluginName()
                , ntask.Src
                , ntask.srcAddinfo
            });

            nitem.Tag = ntask;
            listView1.Items.Add(nitem);
        }
Пример #4
0
        public void addTask(string message, string autherID, string autherName, string autherAddinfo, CCInputInterface adder, string adderAddinfo)
        {
            CCOutputInterface def = null;


            if (outputers.Count > 0)
            {
                def = outputers[0];
            }
            string srcName = "";

            if (adder != null)
            {
                srcName = adder.getPluginName();
            }

            YomiageTask ntask = new YomiageTask(message, autherID, autherName, autherAddinfo, def, srcName, adderAddinfo, lastQueueCode++);

            foreach (CCTaskControllInterface e in taskcontrollers)
            {
                e.TaskCheck(ntask, false);
            }

            ntask.updateListItem();
            queue.Enqueue(ntask);

            if (taskListv.InvokeRequired)
            {
                taskListv.Invoke(new addingTaskDelegate(addingTask), ntask.listviewlinkitem);
            }
            else
            {
                taskListv.Items.Add(ntask.listviewlinkitem);
            }

            afterStackExcute();
            //taskListv.Items.Add(ntask.listviewlinkitem);
        }
Пример #5
0
        private void doOutput()
        {
            while (true)
            {
                if (queue.Count == 0)
                {
                    Thread.Sleep(100);
                    break;
                }
                nowtask = queue.Dequeue();
                if (nowtask == null)
                {
                    continue;
                }

                nowtask.listviewlinkitem.BackColor = System.Drawing.Color.Pink;
                nowtask.LogTime = DateTime.Now;
                foreach (CCTaskControllInterface e in taskcontrollers)
                {
                    e.TaskCheck(nowtask, true);
                }

                if (!nowtask.Enable)
                {
                    logPushing(nowtask);
                    nowtask.isDead = true;
                    continue;
                }
                logPushing(nowtask);
                nowtask.DoOutput();
                nowtask.isDead = true;

                nowtask = null;
                break;
            }
        }
Пример #6
0
        public void addTaskAfter(string message, string autherID, string autherName, string auAd, string src, string srcAdd, CCOutputInterface outer)
        {
            YomiageTask ntask = new YomiageTask(message, autherID, autherName, auAd, outer, src, srcAdd, lastQueueCode++);

            afterAddTasks.Add(ntask);
        }