diff --git a/.idea/workspace.xml b/.idea/workspace.xml
index 7589e077..b0873172 100644
--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -8,8 +8,17 @@
-
-
+
+
+
+
+
+
+
+
+
+
+
@@ -49,9 +58,9 @@
+
-
diff --git a/src/Common/UI/Menus_2023/ConfigurationsMenuBar/ConfigurationsMenuBar.java b/src/Common/UI/Menus_2023/ConfigurationsMenuBar/ConfigurationsMenuBar.java
index 305fe84f..fdcf69b4 100644
--- a/src/Common/UI/Menus_2023/ConfigurationsMenuBar/ConfigurationsMenuBar.java
+++ b/src/Common/UI/Menus_2023/ConfigurationsMenuBar/ConfigurationsMenuBar.java
@@ -8,7 +8,7 @@ public class ConfigurationsMenuBar extends DataMenuBar {
PassCode_2021.StartTests,
PassCode_2021.PublishConfiguration,
PassCode_2021.EditConfiguration,
- PassCode_2021.DeleteSelectedConfigurations
+ PassCode_2021.DeleteConfiguration
);
}
}
diff --git a/src/Common/UI/UI.java b/src/Common/UI/UI.java
index ffab07d2..8affc9f2 100644
--- a/src/Common/UI/UI.java
+++ b/src/Common/UI/UI.java
@@ -74,7 +74,7 @@ import TestingSystem.SAPFOR.SapforConfigurationCommand.SapforConfigurationComman
import TestingSystem.SAPFOR.SapforTask.SapforTasksDBTable;
import TestingSystem.SAPFOR.SapforTasksPackage.SapforTasksPackagesDBTable;
import TestingSystem.SAPFOR.ServerSapfor.ServerSapforsDBTable;
-import TestingSystem.DVM.Configuration.UI.ConfigurationDBTable;
+import TestingSystem.DVM.Configuration.ConfigurationDBTable;
import TestingSystem.Common.Group.GroupsDBTable;
import TestingSystem.DVM.Tasks.TestRunTasksDBTable;
import TestingSystem.DVM.TasksPackage.TasksPackageDBTable;
diff --git a/src/TestingSystem/Common/TestsDatabase.java b/src/TestingSystem/Common/TestsDatabase.java
index 6d5ab9e2..85b50cc0 100644
--- a/src/TestingSystem/Common/TestsDatabase.java
+++ b/src/TestingSystem/Common/TestsDatabase.java
@@ -5,7 +5,7 @@ import GlobalData.Settings.SettingName;
import TestingSystem.SAPFOR.SapforConfiguration.SapforConfigurationDBTable;
import TestingSystem.SAPFOR.SapforConfigurationCommand.SapforConfigurationCommandsDBTable;
import TestingSystem.SAPFOR.ServerSapfor.ServerSapforsDBTable;
-import TestingSystem.DVM.Configuration.UI.ConfigurationDBTable;
+import TestingSystem.DVM.Configuration.ConfigurationDBTable;
import TestingSystem.Common.Group.GroupsDBTable;
import TestingSystem.Common.TSetting.TSetting;
import TestingSystem.Common.TSetting.TSettingsDBTable;
diff --git a/src/TestingSystem/DVM/Configuration/Configuration.java b/src/TestingSystem/DVM/Configuration/Configuration.java
index 8eaf0fc0..e305f1ec 100644
--- a/src/TestingSystem/DVM/Configuration/Configuration.java
+++ b/src/TestingSystem/DVM/Configuration/Configuration.java
@@ -1,7 +1,11 @@
package TestingSystem.DVM.Configuration;
import Common.Database.DBObject;
-import Common.Database.rDBObject;
-public class Configuration extends rDBObject {
+import Common.Database.riDBObject;
+import Common.Utils.Utils;
+import GlobalData.RunConfiguration.RunConfiguration;
+
+import java.util.Vector;
+public class Configuration extends riDBObject {
//компиляция.
public String flags = "\n";
public int c_maxtime = 40;
@@ -33,4 +37,67 @@ public class Configuration extends rDBObject {
this.SynchronizeFields(src);
}
public Configuration(){}
+ //--
+ public Vector getFlags() {
+ return Utils.unpackStrings(flags);
+ }
+ public Vector getEnvironments() {
+ return Utils.unpackStrings(environments);
+ }
+ public Vector getParams() {
+ return Utils.unpackStrings(usr_par);
+ }
+ public Vector getMatrixes(int testDim) {
+ Vector> res_ = new Vector<>();
+ Vector res = new Vector<>();
+ if ((max_proc_count==0) || (min_dim_proc_count == 0 && max_dim_proc_count == 0)) {
+ res.add("");
+ } else {
+ if (testDim > 0) {
+ Vector min_border = new Vector<>();
+ Vector max_border = new Vector<>();
+ for (int i = 1; i <= testDim; ++i) {
+ min_border.add(String.valueOf(min_dim_proc_count));
+ max_border.add(String.valueOf(max_dim_proc_count));
+ }
+ Vector from = RunConfiguration.getBounds(String.join(" ", min_border));
+ Vector to = RunConfiguration.getBounds(String.join(" ", max_border));
+ if (from.size() != to.size()) {
+ System.out.println("Верхняя и нижняя границы матриц конфигурации имеют разные размерности");
+ return res;
+ }
+ if (from.size() != testDim) {
+ System.out.println("Границы матриц не совпадают с размерностью конфигурации");
+ return res;
+ }
+ //1 стадия. заполнение.
+ for (int j = from.get(0); j <= to.get(0); ++j) {
+ Vector m = new Vector<>();
+ res_.add(m);
+ m.add(j);
+ }
+ //---
+ if (testDim > 1) RunConfiguration.gen_rec(from, to, res_, 1, testDim, cube == 1);
+ for (Vector m : res_) {
+ Vector ms = new Vector<>();
+ int proc = 1;
+ for (int i : m) {
+ ms.add(String.valueOf(i));
+ proc *= i;
+ }
+ if (proc <= max_proc_count)
+ res.add(String.join(" ", ms));
+ }
+ } else res.add("");
+ }
+ return res;
+ }
+ public String getParamsText() {
+ Vector params = getParams();
+ if ((params.size() == 1) && params.get(0).isEmpty()) return "";
+ return String.join("\n", params);
+ }
+ public String getSummary() {
+ return description;
+ }
}
diff --git a/src/TestingSystem/DVM/Configuration/UI/ConfigurationDBTable.java b/src/TestingSystem/DVM/Configuration/ConfigurationDBTable.java
similarity index 91%
rename from src/TestingSystem/DVM/Configuration/UI/ConfigurationDBTable.java
rename to src/TestingSystem/DVM/Configuration/ConfigurationDBTable.java
index 84f81008..ad870ef5 100644
--- a/src/TestingSystem/DVM/Configuration/UI/ConfigurationDBTable.java
+++ b/src/TestingSystem/DVM/Configuration/ConfigurationDBTable.java
@@ -1,17 +1,16 @@
-package TestingSystem.DVM.Configuration.UI;
+package TestingSystem.DVM.Configuration;
import Common.Current;
import Common.Database.DBObject;
-import Common.Database.DBTable;
+import Common.Database.iDBTable;
import Common.UI.DataSetControlForm;
import Common.UI.Tables.TableRenderers;
import Common.UI.VisualiserStringList;
import Common.UI.Windows.Dialog.DBObjectDialog;
import Common.Utils.Utils;
-import TestingSystem.DVM.Configuration.Configuration;
-import TestingSystem.DVM.Configuration.ConfigurationInterface;
-public class ConfigurationDBTable extends DBTable {
+import TestingSystem.DVM.Configuration.UI.ConfigurationFields;
+public class ConfigurationDBTable extends iDBTable {
public ConfigurationDBTable() {
- super(String.class, Configuration.class);
+ super(Configuration.class);
}
@Override
public Current CurrentName() {
@@ -34,12 +33,11 @@ public class ConfigurationDBTable extends DBTable {
}
@Override
protected void AdditionalInitColumns() {
- columns.get(0).setVisible(false);
+ // columns.get(0).setVisible(false);
columns.get(4).setRenderer(TableRenderers.RendererMultiline);
columns.get(5).setRenderer(TableRenderers.RendererMultiline);
columns.get(12).setRenderer(TableRenderers.RendererMultiline);
}
-
};
}
@Override
@@ -113,9 +111,9 @@ public class ConfigurationDBTable extends DBTable {
public void fillFields() {
fields.tfName.setText(Result.description);
//------->>>>
- ((VisualiserStringList) (fields.flagsList)).fill(ConfigurationInterface.getFlags(Result));
- ((VisualiserStringList) (fields.environmentsList)).fill(ConfigurationInterface.getEnvironments(Result));
- ((VisualiserStringList) (fields.parList)).fill(ConfigurationInterface.getParams(Result));
+ ((VisualiserStringList) (fields.flagsList)).fill(Result.getFlags());
+ ((VisualiserStringList) (fields.environmentsList)).fill(Result.getEnvironments());
+ ((VisualiserStringList) (fields.parList)).fill(Result.getParams());
//------->>>>
fields.sCompilationMaxtime.setValue(Result.c_maxtime);
//-
diff --git a/src/TestingSystem/DVM/Configuration/ConfigurationInterface.java b/src/TestingSystem/DVM/Configuration/ConfigurationInterface.java
deleted file mode 100644
index ec8a6237..00000000
--- a/src/TestingSystem/DVM/Configuration/ConfigurationInterface.java
+++ /dev/null
@@ -1,69 +0,0 @@
-package TestingSystem.DVM.Configuration;
-import Common.Utils.Utils;
-import GlobalData.RunConfiguration.RunConfiguration;
-
-import java.util.Vector;
-public class ConfigurationInterface {
- public static Vector getFlags(TestingSystem.DVM.Configuration.Configuration object) {
- return Utils.unpackStrings(object.flags);
- }
- public static Vector getEnvironments(TestingSystem.DVM.Configuration.Configuration object) {
- return Utils.unpackStrings(object.environments);
- }
- public static Vector getParams(TestingSystem.DVM.Configuration.Configuration object) {
- return Utils.unpackStrings(object.usr_par);
- }
- public static Vector getMatrixes(TestingSystem.DVM.Configuration.Configuration object, int testDim) {
- Vector> res_ = new Vector<>();
- Vector res = new Vector<>();
- if ((object.max_proc_count==0) || (object.min_dim_proc_count == 0 && object.max_dim_proc_count == 0)) {
- res.add("");
- } else {
- if (testDim > 0) {
- Vector min_border = new Vector<>();
- Vector max_border = new Vector<>();
- for (int i = 1; i <= testDim; ++i) {
- min_border.add(String.valueOf(object.min_dim_proc_count));
- max_border.add(String.valueOf(object.max_dim_proc_count));
- }
- Vector from = RunConfiguration.getBounds(String.join(" ", min_border));
- Vector to = RunConfiguration.getBounds(String.join(" ", max_border));
- if (from.size() != to.size()) {
- System.out.println("Верхняя и нижняя границы матриц конфигурации имеют разные размерности");
- return res;
- }
- if (from.size() != testDim) {
- System.out.println("Границы матриц не совпадают с размерностью конфигурации");
- return res;
- }
- //1 стадия. заполнение.
- for (int j = from.get(0); j <= to.get(0); ++j) {
- Vector m = new Vector<>();
- res_.add(m);
- m.add(j);
- }
- //---
- if (testDim > 1) RunConfiguration.gen_rec(from, to, res_, 1, testDim, object.cube == 1);
- for (Vector m : res_) {
- Vector ms = new Vector<>();
- int proc = 1;
- for (int i : m) {
- ms.add(String.valueOf(i));
- proc *= i;
- }
- if (proc <= object.max_proc_count)
- res.add(String.join(" ", ms));
- }
- } else res.add("");
- }
- return res;
- }
- public static String getParamsText(Configuration object) {
- Vector params = getParams(object);
- if ((params.size() == 1) && params.get(0).isEmpty()) return "";
- return String.join("\n", params);
- }
- public static String getSummary(Configuration configuration) {
- return configuration.description;
- }
-}
diff --git a/src/Visual_DVM_2021/Passes/All/DeleteConfiguration.java b/src/Visual_DVM_2021/Passes/All/DeleteConfiguration.java
new file mode 100644
index 00000000..53ef82cb
--- /dev/null
+++ b/src/Visual_DVM_2021/Passes/All/DeleteConfiguration.java
@@ -0,0 +1,10 @@
+package Visual_DVM_2021.Passes.All;
+import Common.Global;
+import TestingSystem.Common.TestingServer;
+import TestingSystem.DVM.Configuration.Configuration;
+import Visual_DVM_2021.Passes.Server.DeleteServerObject;
+public class DeleteConfiguration extends DeleteServerObject {
+ public DeleteConfiguration() {
+ super(Global.testingServer, Configuration.class);
+ }
+}
diff --git a/src/Visual_DVM_2021/Passes/All/DeleteSelectedConfigurations.java b/src/Visual_DVM_2021/Passes/All/DeleteSelectedConfigurations.java
deleted file mode 100644
index cff56ce4..00000000
--- a/src/Visual_DVM_2021/Passes/All/DeleteSelectedConfigurations.java
+++ /dev/null
@@ -1,8 +0,0 @@
-package Visual_DVM_2021.Passes.All;
-import TestingSystem.DVM.Configuration.Configuration;
-import Visual_DVM_2021.Passes.DeleteSelectedServerObjects;
-public class DeleteSelectedConfigurations extends DeleteSelectedServerObjects {
- public DeleteSelectedConfigurations() {
- super(Configuration.class);
- }
-}
diff --git a/src/Visual_DVM_2021/Passes/All/EditConfiguration.java b/src/Visual_DVM_2021/Passes/All/EditConfiguration.java
index fa588f56..8c8ca4a0 100644
--- a/src/Visual_DVM_2021/Passes/All/EditConfiguration.java
+++ b/src/Visual_DVM_2021/Passes/All/EditConfiguration.java
@@ -1,29 +1,10 @@
package Visual_DVM_2021.Passes.All;
-import Common.Current;
-import Common.Database.Database;
import Common.Global;
+import TestingSystem.Common.TestingServer;
import TestingSystem.DVM.Configuration.Configuration;
-import Visual_DVM_2021.Passes.EditObjectPass;
-import Visual_DVM_2021.Passes.PassCode_2021;
-public class EditConfiguration extends EditObjectPass {
+import Visual_DVM_2021.Passes.Server.EditServerObject;
+public class EditConfiguration extends EditServerObject {
public EditConfiguration() {
- super(Configuration.class);
- }
- @Override
- protected boolean canStart(Object... args) throws Exception {
- if (Current.Check(Log, Current.Configuration)) {
- return getTable().ShowEditObjectDialog(target= Current.getConfiguration());
- }
- return false;
- }
- @Override
- protected Database getDb() {
- return Global.testingServer.db;
- }
- @Override
- protected void performDone() throws Exception {
- super.performDone();
- //отправка.
- passes.get(PassCode_2021.EditConfigurationOnServer).Do(target);
+ super(Global.testingServer, Configuration.class);
}
}
diff --git a/src/Visual_DVM_2021/Passes/All/EditConfigurationOnServer.java b/src/Visual_DVM_2021/Passes/All/EditConfigurationOnServer.java
deleted file mode 100644
index 303e7897..00000000
--- a/src/Visual_DVM_2021/Passes/All/EditConfigurationOnServer.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package Visual_DVM_2021.Passes.All;
-import Repository.Server.ServerCode;
-import Repository.Server.ServerExchangeUnit_2021;
-import TestingSystem.DVM.Configuration.Configuration;
-import Visual_DVM_2021.Passes.Server.TestingSystemPass;
-public class EditConfigurationOnServer extends TestingSystemPass {
- @Override
- protected boolean canStart(Object... args) throws Exception {
- target = (Configuration) args[0];
- return true;
- }
- @Override
- protected void ServerAction() throws Exception {
- Command(new ServerExchangeUnit_2021(ServerCode.EditObject, "", target));
- }
-}
diff --git a/src/Visual_DVM_2021/Passes/All/PublishConfiguration.java b/src/Visual_DVM_2021/Passes/All/PublishConfiguration.java
index 93430c23..4443bad9 100644
--- a/src/Visual_DVM_2021/Passes/All/PublishConfiguration.java
+++ b/src/Visual_DVM_2021/Passes/All/PublishConfiguration.java
@@ -1,42 +1,10 @@
package Visual_DVM_2021.Passes.All;
-import Common.Current;
-import Repository.Server.ServerCode;
-import Repository.Server.ServerExchangeUnit_2021;
+import Common.Global;
+import TestingSystem.Common.TestingServer;
import TestingSystem.DVM.Configuration.Configuration;
-import Visual_DVM_2021.Passes.PassCode_2021;
-import Visual_DVM_2021.Passes.Server.TestingSystemPass;
-public class PublishConfiguration extends TestingSystemPass {
- @Override
- public String getIconPath() {
- return "/icons/RedAdd.png";
- }
- @Override
- public String getButtonText() {
- return "";
- }
- @Override
- protected boolean canStart(Object... args) throws Exception {
- if (Current.getAccount().CheckRegistered(Log)) {
- target = new Configuration();
- target.genName();
- target.sender_name = Current.getAccount().name;
- target.sender_address = Current.getAccount().email;
- return server.db.configurations.ShowAddObjectDialog(target);
- }
- return false;
- }
- @Override
- protected void ServerAction() throws Exception {
- Command(new ServerExchangeUnit_2021(ServerCode.PublishObject, "", target));
- }
- @Override
- protected void performFinish() throws Exception {
- super.performFinish();
- passes.get(PassCode_2021.SynchronizeTests).Do();
- }
- @Override
- protected void showDone() throws Exception {
- super.showDone();
- server.db.configurations.ui_.Show(target.getPK());
+import Visual_DVM_2021.Passes.Server.PublishServerObject;
+public class PublishConfiguration extends PublishServerObject {
+ public PublishConfiguration() {
+ super(Global.testingServer, Configuration.class);
}
}
diff --git a/src/Visual_DVM_2021/Passes/All/StartTests.java b/src/Visual_DVM_2021/Passes/All/StartTests.java
index f1131d06..e1effd34 100644
--- a/src/Visual_DVM_2021/Passes/All/StartTests.java
+++ b/src/Visual_DVM_2021/Passes/All/StartTests.java
@@ -7,12 +7,11 @@ import GlobalData.Machine.MachineType;
import GlobalData.User.UserState;
import Repository.Server.ServerCode;
import Repository.Server.ServerExchangeUnit_2021;
-import TestingSystem.DVM.Configuration.ConfigurationInterface;
import TestingSystem.Common.Group.Group;
+import TestingSystem.Common.Test.Test;
import TestingSystem.DVM.Tasks.TestCompilationTask;
import TestingSystem.DVM.Tasks.TestRunTask;
import TestingSystem.DVM.TasksPackage.TasksPackage;
-import TestingSystem.Common.Test.Test;
import Visual_DVM_2021.Passes.PassCode_2021;
import Visual_DVM_2021.Passes.Server.TestingSystemPass;
@@ -79,7 +78,7 @@ public class StartTests extends TestingSystemPass {
Test test
) {
Vector compilationTasks = new Vector<>();
- for (String flags : ConfigurationInterface.getFlags(configuration)) {
+ for (String flags : configuration.getFlags()) {
TestCompilationTask testCompilationTask = new TestCompilationTask(
configuration,
group,
@@ -87,8 +86,8 @@ public class StartTests extends TestingSystemPass {
flags
);
testCompilationTask.runTasks = new Vector<>();
- Vector matrixes = ConfigurationInterface.getMatrixes(configuration, test.dim);
- Vector environments = ConfigurationInterface.getEnvironments(configuration);
+ Vector matrixes = configuration.getMatrixes(test.dim);
+ Vector environments = configuration.getEnvironments();
for (String environmentSet : environments) {
if (flags.trim().equalsIgnoreCase("-s")) {
testCompilationTask.runTasks.add(new TestRunTask(
@@ -98,7 +97,7 @@ public class StartTests extends TestingSystemPass {
"",
flags,
environmentSet,
- ConfigurationInterface.getParamsText(configuration)
+ configuration.getParamsText()
));
} else
for (String matrix : matrixes) {
@@ -109,7 +108,7 @@ public class StartTests extends TestingSystemPass {
matrix,
flags,
environmentSet,
- ConfigurationInterface.getParamsText(configuration)));
+ configuration.getParamsText()));
}
}
compilationTasks.add(testCompilationTask);
@@ -145,7 +144,7 @@ public class StartTests extends TestingSystemPass {
//2 Проверяем выбраны ли группы.
configurations_lines.add("Конфигурации: ");
for (TestingSystem.DVM.Configuration.Configuration configuration : server.db.configurations.getCheckedItems()) {
- configurations_lines.add(ConfigurationInterface.getSummary(configuration));
+ configurations_lines.add(configuration.getSummary());
groups_lines.add("Группы: ");
for (Group group : server.db.groups.getCheckedItems()) {
groups_lines.add(group.getSummary());
diff --git a/src/Visual_DVM_2021/Passes/PassCode_2021.java b/src/Visual_DVM_2021/Passes/PassCode_2021.java
index d100dee0..71f91b45 100644
--- a/src/Visual_DVM_2021/Passes/PassCode_2021.java
+++ b/src/Visual_DVM_2021/Passes/PassCode_2021.java
@@ -254,10 +254,8 @@ public enum PassCode_2021 {
//-
PublishConfiguration,
EditConfiguration,
- EditConfigurationOnServer,
//-
StartTests,
- DeleteSelectedConfigurations,
SwitchTestingEmail,
//-
DownloadTaskTest,
@@ -301,12 +299,15 @@ public enum PassCode_2021 {
PublishServerSapfor,
PublishTestProject,
DeleteTest,
+ DeleteConfiguration,
//->
TestPass;
public String getDescription() {
switch (this) {
case Undefined:
return "?";
+ case DeleteConfiguration:
+ return "Удалить конфигурацию";
case DeleteTest:
return "Удалить тест";
case PublishServerSapfor:
@@ -437,16 +438,12 @@ public enum PassCode_2021 {
return "Загрузить тест текущей задачи";
case SwitchTestingEmail:
return "Настроить отправку оповещений тестирования";
- case DeleteSelectedConfigurations:
- return "Удалить отмеченные конфигурации";
case StartTests:
return "Запуск тестов";
case PublishConfiguration:
return "Опубликовать конфигурацию тестирования";
case EditConfiguration:
return "Просмотр/Редактирование конфигурацию тестирования";
- case EditConfigurationOnServer:
- return "Редактировать конфигурацию на сервере";
case SPF_GetMaxMinBlockDistribution:
return "Определить размерность теста по DVM директивам";
case PauseTesting: