package TestingSystem.DVM; import Common.Global; import Common.Utils.Utils; import GlobalData.Machine.Machine; import GlobalData.Machine.MachineType; import GlobalData.User.User; import Repository.Server.ServerCode; import Repository.Server.ServerExchangeUnit_2021; import TestingSystem.DVM.DVMPackage.DVMPackage; import Visual_DVM_2021.Passes.PassException; import Visual_DVM_2021.Passes.Server.TestingSystemPass; import java.io.Serializable; import java.util.Vector; public class MachineQueueSupervisor { //-- Machine machine = null; User user = null; //-- DVMPackage testingPackage = null; //текущий пакет. //-- protected int getSleepMillis() { return 2000; } protected Object ServerCommand(ServerCode code_in, String arg, Serializable object_in) throws Exception { TestingSystemPass pass = new TestingSystemPass() { @Override public String getDescription() { return ""; } @Override protected void ServerAction() throws Exception { Command(new ServerExchangeUnit_2021(code_in, arg, object_in)); target = response.object; } }; if (!pass.Do()) throw new PassException("Ошибка взаимодействия с сервером " + code_in); return pass.target; } protected Object ServerCommand(ServerCode code_in, Serializable object_in) throws Exception { return ServerCommand(code_in, "", object_in); } protected Object ServerCommand(ServerCode code_in) throws Exception { return ServerCommand(code_in, "", null); } //-- public MachineQueueSupervisor(String... args) { Global.isWindows = System.getProperty("os.name").startsWith("Windows"); //--- String machineAddress = args[0]; int machinePort = Integer.parseInt(args[1]); String userName = args[2]; String userPassword = args[3]; String userWorkspace = args[4]; //--- machine = new Machine(machineAddress, machineAddress, machinePort, MachineType.Server); user = new User(userName, userPassword, userWorkspace); //--- } public void Start() { try { testingPackage = null; testingPackage = (DVMPackage) ServerCommand(ServerCode.GetFirstActiveDVMPackageForMachineURL, machine.getURL(), null); } catch (Exception ex) { ex.printStackTrace(); } finally { Utils.sleep(getSleepMillis()); } } }