рабочий вариант отдельных процессов на разные машины

This commit is contained in:
2024-04-23 22:48:02 +03:00
parent f2d0eb0d2c
commit 4d543cb94f
11 changed files with 80 additions and 78 deletions

View File

@@ -2,30 +2,23 @@ package TestingSystem.Common.MachineProcess;
import Common.Constants;
import Common.Current;
import Common.Database.DBObject;
import Common.Database.iDBObject;
import Common.Global;
import Common.GlobalProperties;
import Common.Utils.Utils;
import TestingSystem.DVM.DVMPackage.DVMPackage;
import com.sun.org.glassfish.gmbal.Description;
import org.apache.commons.io.FileUtils;
import java.io.File;
import java.util.Vector;
public class MachineProcess extends iDBObject {
@Description("DEFAULT ''")
public class MachineProcess extends DBObject {
public String id = "";
public String machineAddress = "";
@Description("DEFAULT -1")
public int machinePort = Constants.Nan;
@Description("DEFAULT ''")
public String userName = "";
@Description("DEFAULT ''")
public String userPassword = "";
@Description("DEFAULT ''")
public String userWorkspace = "";
@Description("DEFAULT ''")
public String testingSystemRoot = "";
@Description("DEFAULT 'Inactive'")
public String serverName = "";
public MachineProcessState state = MachineProcessState.Inactive; //0 неактивен
//--
public MachineProcess() {
@@ -34,12 +27,18 @@ public class MachineProcess extends iDBObject {
SynchronizeFields(p);
}
public MachineProcess(DVMPackage p) {
id = Utils.getDateName("machine_process");
machineAddress = p.machine_address;
machinePort = p.machine_port;
userName = p.user_name;
userPassword = p.user_password;
userWorkspace = p.user_workspace;
testingSystemRoot = Global.Home;
serverName = Global.testingServer.name;
}
@Override
public Object getPK() {
return id;
}
@Override
public void SynchronizeFields(DBObject src) {
@@ -51,6 +50,7 @@ public class MachineProcess extends iDBObject {
userPassword = p.userPassword;
userWorkspace = p.userWorkspace;
testingSystemRoot = p.testingSystemRoot;
serverName = p.serverName;
}
public String getUniqueKey() {
Vector<String> res = new Vector<>();
@@ -61,7 +61,7 @@ public class MachineProcess extends iDBObject {
return String.join("_", res);
}
public File getWorkspace() {
return new File(Global.MachinesDirectory, String.valueOf(id));
return new File(Global.MachinesDirectory, id);
}
public File getStartedFile() {
return new File(getWorkspace(), Constants.STARTED);
@@ -90,6 +90,7 @@ public class MachineProcess extends iDBObject {
//создание настроек
GlobalProperties properties = new GlobalProperties();
properties.Mode = Current.Mode.MachineQueue;
properties.TestingServerPort = 7996;
Utils.jsonToFile(properties, new File(workspace, "properties"));
Vector<String> args = new Vector<>();
args.add(Utils.DQuotes(machineAddress));
@@ -98,10 +99,11 @@ public class MachineProcess extends iDBObject {
args.add(Utils.DQuotes(userPassword));
args.add(Utils.DQuotes(userWorkspace));
args.add(Utils.DQuotes(testingSystemRoot));
args.add(Utils.DQuotes(Global.testingServer.name));
//--
Utils.startScript(workspace, workspace,
"start",
"java -jar VisualSapfor.jar " + String.join(" ", args));
"java -jar VisualSapfor.jar " + String.join(" ", args)+" ");
//---
} catch (Exception ex) {
ex.printStackTrace();