/// <summary>
        /// InternalExecute
        /// </summary>
        protected override void InternalExecute()
        {
            this.virtualPC = new VMVirtualPC();
            switch (this.action)
            {
            case VirtualPCAction.List:
                this.GetListOfVMs();
                break;

            case VirtualPCAction.AddHardDiskConnection:
            case VirtualPCAction.DiscardSavedState:
            case VirtualPCAction.DiscardUndoDisks:
            case VirtualPCAction.LogOff:
            case VirtualPCAction.MergeUndoDisks:
            case VirtualPCAction.Pause:
            case VirtualPCAction.RemoveHardDiskConnection:
            case VirtualPCAction.Reset:
            case VirtualPCAction.Restart:
            case VirtualPCAction.Resume:
            case VirtualPCAction.Save:
            case VirtualPCAction.Shutdown:
            case VirtualPCAction.Startup:
            case VirtualPCAction.Turnoff:
                this.ControlVM();
                break;

            case VirtualPCAction.IsScreenLocked:
                this.IsScreenLocked();
                break;

            case VirtualPCAction.IsHeartBeating:
                this.IsHeartBeating();
                break;

            case VirtualPCAction.WaitForLowCpuUtilization:
                this.WaitForLowCpuUtilization();
                break;

            case VirtualPCAction.TakeScreenshot:
                this.TakeScreenshot();
                break;

            case VirtualPCAction.RunScript:
                this.RunScript();
                break;

            default:
                this.LogBuildError(string.Format(CultureInfo.CurrentCulture, "Invalid action passed: {0}", this.action));
                return;
            }
        }
        /// <summary>
        /// InternalExecute
        /// </summary>
        protected override void InternalExecute()
        {
            if (!this.TargetingLocalMachine())
            {
                return;
            }

            this.virtualPC = new VMVirtualPC();
            switch (this.TaskAction)
            {
                case ListTaskAction:
                    this.LogTaskMessage(MessageImportance.Low, "Listing Virtual Machines");
                    this.VirtualMachines = new ITaskItem[this.virtualPC.VirtualMachines.Count];
                    this.VirtualMachineCount = this.virtualPC.VirtualMachines.Count;
                    int i = 0;
                    foreach (VMVirtualMachine vm in this.virtualPC.VirtualMachines)
                    {
                        this.VirtualMachines[i] = GetVirtualMachineDetails(vm);
                        i++;
                    }

                    break;
                case AddHardDiskConnectionTaskAction:
                case DiscardSavedStateTaskAction:
                case DiscardUndoDisksTaskAction:
                case LogoffTaskAction:
                case MergeUndoDisksTaskAction:
                case PauseTaskAction:
                case RemoveHardDiskConnectionTaskAction:
                case ResetTaskAction:
                case RestartTaskAction:
                case ResumeTaskAction:
                case SaveTaskAction:
                case ShutdownTaskAction:
                case StartupTaskAction:
                case TurnOffTaskAction:
                    this.ConrolVM();
                    break;
                case IsScreenLockedTaskAction:
                    this.IsScreenLocked();
                    break;
                case IsHeartBeatingTaskAction:
                    this.IsHeartBeating();
                    break;
                case TypeAsciiTextTaskAction:
                case TypeKeySequenceTaskAction:
                    this.ManageKeyBoard();
                    break;
                case WaitForLowCpuUtilizationTaskAction:
                    this.WaitForLowCpuUtilization();
                    break;
                case TakeScreenshotTaskAction:
                    this.TakeScreenshot();
                    break;
                case ClickMouseTaskAction:
                    this.ClickMouse();
                    break;
                default:
                    this.Log.LogError(string.Format(CultureInfo.CurrentCulture, "Invalid TaskAction passed: {0}", this.TaskAction));
                    return;
            }
        }
示例#3
0
        /// <summary>
        /// InternalExecute
        /// </summary>
        protected override void InternalExecute()
        {
            if (!this.TargetingLocalMachine())
            {
                return;
            }

            this.virtualPC = new VMVirtualPC();
            switch (this.TaskAction)
            {
            case ListTaskAction:
                this.LogTaskMessage(MessageImportance.Low, "Listing Virtual Machines");
                this.VirtualMachines     = new ITaskItem[this.virtualPC.VirtualMachines.Count];
                this.VirtualMachineCount = this.virtualPC.VirtualMachines.Count;
                int i = 0;
                foreach (VMVirtualMachine vm in this.virtualPC.VirtualMachines)
                {
                    this.VirtualMachines[i] = GetVirtualMachineDetails(vm);
                    i++;
                }

                break;

            case AddHardDiskConnectionTaskAction:
            case DiscardSavedStateTaskAction:
            case DiscardUndoDisksTaskAction:
            case LogoffTaskAction:
            case MergeUndoDisksTaskAction:
            case PauseTaskAction:
            case RemoveHardDiskConnectionTaskAction:
            case ResetTaskAction:
            case RestartTaskAction:
            case ResumeTaskAction:
            case SaveTaskAction:
            case ShutdownTaskAction:
            case StartupTaskAction:
            case TurnOffTaskAction:
                this.ConrolVM();
                break;

            case IsScreenLockedTaskAction:
                this.IsScreenLocked();
                break;

            case IsHeartBeatingTaskAction:
                this.IsHeartBeating();
                break;

            case TypeAsciiTextTaskAction:
            case TypeKeySequenceTaskAction:
                this.ManageKeyBoard();
                break;

            case WaitForLowCpuUtilizationTaskAction:
                this.WaitForLowCpuUtilization();
                break;

            case TakeScreenshotTaskAction:
                this.TakeScreenshot();
                break;

            case ClickMouseTaskAction:
                this.ClickMouse();
                break;

            default:
                this.Log.LogError(string.Format(CultureInfo.CurrentCulture, "Invalid TaskAction passed: {0}", this.TaskAction));
                return;
            }
        }