public void ResetMachines(ConnectionSettings connectionSettings, IList <string> machineIds)
        {
            LocalTrace("new ResetMachines() get called for {0}", "ok");

            InfrastructureEmulator emulator = new InfrastructureEmulator(Path.GetTempPath());

            foreach (string id in machineIds)
            {
                emulator.PowerOnVirtualMachine(id);
            }
        }
        private static void AutoShutdownMachine(Object machineId)
        {
            //LocalTrace("new AutoShutdownMachine() get called for {0}", "ok");
            if (staticLogProvider != null)
            {
                staticLogProvider.TraceMsg("Starting a one minute sleep for the image preparation machine.");
            }

            Thread.Sleep(1 * 60 * 1000);
            InfrastructureEmulator emulator = new InfrastructureEmulator(Path.GetTempPath());

            if (staticLogProvider != null)
            {
                staticLogProvider.TraceMsg("Image preparation timer has elapsed. The preparation machine will now be powered off.");
            }

            // Explicitly power off the machine as a way of emulating the self-shutdown that would happen in the
            // real world.
            emulator.PowerOffVirtualMachine((string)machineId);
        }