コード例 #1
0
        public override IEnumerable <Item> Perform(IEnumerable <Item> items, IEnumerable <Item> modifierItems)
        {
            foreach (Item i in items)
            {
                VMItem   vm = (i as VMItem);
                VMState  NewState;
                VMDynItm mod;

                if (modifierItems.Any())
                {
                    mod      = modifierItems.First() as VMDynItm;
                    NewState = mod.Mode;
                }
                else
                {
                    NewState = VMState.on;
                }

                VMThread thread = new VMThread(NewState, ref vm);
                Thread   t      = new Thread(new ThreadStart(thread.DoAction));
                t.IsBackground = true;
                t.Start();
            }
            yield break;
        }
コード例 #2
0
        public override IEnumerable <Item> Perform(IEnumerable <Item> items, IEnumerable <Item> modifierItems)
        {
            VMItem vm = items.First() as VMItem;

            VMThread thread = new VMThread("VBoxManage", "snapshot " + vm.Uuid + " discardcurrent -state", vm.Status, ref vm);
            Thread   t      = new Thread(new ThreadStart(thread.DoAction));

            t.IsBackground = true;
            t.Start();
            yield break;
        }
コード例 #3
0
        public override IEnumerable <Item> Perform(IEnumerable <Item> items, IEnumerable <Item> modifierItems)
        {
            foreach (Item i in items)
            {
                VMItem vm = (i as VMItem);

                VMThread thread = new VMThread(VMState.on, ref vm);
                Thread   t      = new Thread(new ThreadStart(thread.DoAction));
                t.IsBackground = true;
                t.Start();
            }
            yield break;
        }
コード例 #4
0
        public override IEnumerable <Item> Perform(IEnumerable <Item> items, IEnumerable <Item> modItems)
        {
            VMItem vm = (items.First() as VMItem);

            string SnapshotName;

            if (modItems.Any())
            {
                SnapshotName = (modItems.First() as ITextItem).Text;
            }
            else
            {
                SnapshotName = AddinManager.CurrentLocalizer.GetString("Snapshot (") + DateTime.Now + ")";
            }

            VMThread thread = new VMThread("VBoxManage", "snapshot " + vm.Uuid + " take '" + SnapshotName + "'", vm.Status, ref vm);
            Thread   t      = new Thread(new ThreadStart(thread.DoAction));

            t.IsBackground = true;
            t.Start();
            yield break;
        }
コード例 #5
0
 public override IEnumerable <Item> Perform(IEnumerable <Item> items, IEnumerable <Item> modItems)
 {
     foreach (Item i in items)
     {
         VMItem   vm = (i as VMItem);
         VMThread thread;
         Thread   t;
         if (modItems.Any())
         {
             thread = new VMThread(ref vm);
             t      = new Thread(new ThreadStart(thread.DoShutdownRestoreAction));
         }
         else
         {
             thread = new VMThread(VMState.off, ref vm);
             t      = new Thread(new ThreadStart(thread.DoAction));
         }
         t.IsBackground = true;
         t.Start();
     }
     yield break;
 }