//public int GetMachinesCount() //{ // lock (_lock) // { // return MachineTable.GetMachinesCount(); // } //} public void PowerOffHost(int machineId) { lock (_lock) { var machine = MachineTable.GetMachineById(machineId); if ((machine as HostMachine).GetContainersCount() != 0) { //return false; throw new NotImplementedException(); } else { machine.StopMachine(); //PoweredOffMachinesTable.AddMachine(machine.MachineId, machine); MachineTable.RemoveMachine(machineId); DataHolder.RemoveUtilization(machineId); ReadyMachineTable.AddMachine(machineId, machine); //Console.WriteLine($"( ) Power off Host #{machineId}"); //return true; } } }