2023-12-11 01:24:30 +03:00
|
|
|
package TestingSystem.Common.TestingPackage;
|
|
|
|
|
import Common.Database.DBObject;
|
2023-12-14 02:30:56 +03:00
|
|
|
import Common.Database.riDBObject;
|
2023-12-15 18:10:27 +03:00
|
|
|
import Common.Global;
|
|
|
|
|
import Common.Utils.Utils;
|
|
|
|
|
import TestingSystem.DVM.DVMPackage.DVMPackage_json;
|
2023-12-11 01:24:30 +03:00
|
|
|
import TestingSystem.DVM.TasksPackage.TasksPackageState;
|
2023-12-15 18:10:27 +03:00
|
|
|
import com.sun.org.glassfish.gmbal.Description;
|
|
|
|
|
|
|
|
|
|
import java.io.File;
|
|
|
|
|
public abstract class TestingPackage<J> extends riDBObject {
|
|
|
|
|
public String PID = "";
|
2023-12-11 01:24:30 +03:00
|
|
|
public int tasksCount = 0; //Общее число задач
|
|
|
|
|
//--
|
|
|
|
|
public int kernels = 1;
|
|
|
|
|
public int needsEmail = 0;
|
|
|
|
|
//---
|
|
|
|
|
public String version = ""; //версия тестируемого объекта
|
|
|
|
|
public String drv = ""; //пусть к исполняемому файлы тестируемого объекта
|
|
|
|
|
//--
|
2023-12-11 18:29:15 +03:00
|
|
|
public int progress = 0; //прогресс выполнения
|
2023-12-15 14:02:12 +03:00
|
|
|
public long StartDate = 0;
|
|
|
|
|
public long ChangeDate = 0;
|
2023-12-11 18:29:15 +03:00
|
|
|
public TasksPackageState state = TasksPackageState.Draft;
|
2023-12-11 01:24:30 +03:00
|
|
|
//--
|
|
|
|
|
@Override
|
|
|
|
|
public void SynchronizeFields(DBObject src) {
|
|
|
|
|
super.SynchronizeFields(src);
|
2023-12-15 18:10:27 +03:00
|
|
|
TestingPackage tp = (TestingPackage) src;
|
2023-12-11 01:24:30 +03:00
|
|
|
//--
|
2023-12-15 18:10:27 +03:00
|
|
|
tasksCount = tp.tasksCount;
|
|
|
|
|
needsEmail = tp.needsEmail;
|
|
|
|
|
version = tp.version;
|
|
|
|
|
drv = tp.drv;
|
|
|
|
|
PID = tp.PID;
|
|
|
|
|
kernels = tp.kernels;
|
|
|
|
|
progress = tp.progress;
|
|
|
|
|
StartDate = tp.StartDate;
|
|
|
|
|
ChangeDate = tp.ChangeDate;
|
|
|
|
|
state = tp.state;
|
2023-12-11 01:24:30 +03:00
|
|
|
}
|
2023-12-15 14:02:12 +03:00
|
|
|
public TestingPackage(TestingPackage p) {
|
|
|
|
|
SynchronizeFields(p);
|
|
|
|
|
}
|
|
|
|
|
public TestingPackage() {
|
|
|
|
|
}
|
2023-12-15 18:10:27 +03:00
|
|
|
public File getLocalWorkspace() {
|
2023-12-15 18:38:05 +03:00
|
|
|
return new File(getHomeDirectory(), String.valueOf(id));
|
2023-12-15 18:10:27 +03:00
|
|
|
}
|
|
|
|
|
//------------------------
|
|
|
|
|
@Description("IGNORED")
|
|
|
|
|
public J package_json=null;
|
|
|
|
|
public abstract Class getJsonClass();
|
2023-12-15 18:38:05 +03:00
|
|
|
public abstract File getHomeDirectory();
|
2023-12-15 18:10:27 +03:00
|
|
|
public File getJsonFile() {
|
|
|
|
|
return new File(getLocalWorkspace(), "package_json");
|
|
|
|
|
}
|
|
|
|
|
public void saveJson() throws Exception {
|
|
|
|
|
Utils.jsonToFile(package_json, getJsonFile());
|
|
|
|
|
}
|
|
|
|
|
public void readJson() throws Exception {
|
|
|
|
|
package_json = (J) Utils.jsonFromFile(getJsonFile(), getJsonClass());
|
|
|
|
|
}
|
2023-12-15 14:02:12 +03:00
|
|
|
public void destructor() {
|
2023-12-15 18:10:27 +03:00
|
|
|
package_json = null;
|
2023-12-15 14:02:12 +03:00
|
|
|
}
|
2023-12-11 01:24:30 +03:00
|
|
|
}
|