промежуточный. прописал для планировщиков общий класс-предок

This commit is contained in:
2023-12-14 02:30:56 +03:00
parent 749c0397e6
commit c07b72eb5d
18 changed files with 669 additions and 4416 deletions

View File

@@ -2,15 +2,17 @@ package TestingSystem.Common;
import Common.Constants;
import Common.Database.SQLITE.SQLiteDatabase;
import GlobalData.Settings.SettingName;
import TestingSystem.DVM.DVMPackage.DVMPackageDBTable;
import TestingSystem.SAPFOR.SapforConfiguration.SapforConfigurationDBTable;
import TestingSystem.SAPFOR.SapforConfigurationCommand.SapforConfigurationCommandsDBTable;
import TestingSystem.SAPFOR.ServerSapfor.ServerSapforsDBTable;
import TestingSystem.DVM.Configuration.ConfigurationDBTable;
import TestingSystem.Common.Group.GroupsDBTable;
import TestingSystem.Common.TSetting.TSetting;
import TestingSystem.Common.TSetting.TSettingsDBTable;
import TestingSystem.Common.Test.TestDBTable;
import TestingSystem.DVM.Configuration.ConfigurationDBTable;
import TestingSystem.DVM.DVMPackage.DVMPackage;
import TestingSystem.DVM.DVMPackage.DVMPackageDBTable;
import TestingSystem.DVM.TasksPackage.TasksPackageState;
import TestingSystem.SAPFOR.SapforConfiguration.SapforConfigurationDBTable;
import TestingSystem.SAPFOR.SapforConfigurationCommand.SapforConfigurationCommandsDBTable;
import TestingSystem.SAPFOR.ServerSapfor.ServerSapforsDBTable;
import Visual_DVM_2021.Passes.PassCode_2021;
import java.nio.file.Paths;
@@ -59,11 +61,41 @@ public class TestsDatabase extends SQLiteDatabase {
public PassCode_2021 getSynchronizePassCode() {
return PassCode_2021.SynchronizeTests;
}
public long IncKey(SettingName settingName) throws Exception{
public long IncKey(SettingName settingName) throws Exception {
TSetting setting = settings.get(settingName);
long res = setting.value;
setting.value++;
Update(setting);
return res;
}
public DVMPackage getFirstActiveDVMPackage() {
DVMPackage first_active = null;
DVMPackage first_queued = null;
if (!dvmPackages.Data.isEmpty()) {
for (DVMPackage p : dvmPackages.Data.values()) {
switch (p.state) {
case Done:
case Aborted:
break;
case Queued:
if (first_queued == null) first_queued = p;
break;
default:
if (first_active == null) first_active = p; //это и будет первый активный.
break;
}
}
if (first_active != null) return first_active;
if (first_queued != null) {
first_queued.state = TasksPackageState.TestsSynchronize;
try {
Update(first_queued);
} catch (Exception ex) {
ex.printStackTrace();
}
}
return first_queued;
}
return null;
}
}