промежуточный.привожу в порядок индексы.

This commit is contained in:
2025-03-23 02:14:23 +03:00
parent 10c213feae
commit f6cc447481
35 changed files with 526 additions and 304 deletions

27
.idea/workspace.xml generated
View File

@@ -7,20 +7,41 @@
</component>
<component name="ChangeListManager">
<list default="true" id="e42177c3-2328-4b27-8a01-35779b2beb99" name="Default Changelist" comment="">
<change afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/DVM/DVMConfigurationSettings/DVMConfigurationSettings.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/DVM/DVMConfigurationSettings/DVMConfigurationSettingsDBTable.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/DVM/DVMConfigurationTest/DVMConfigurationTest.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/DVM/DVMConfigurationTest/DVMConfigurationTestsDBTable.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/SAPFOR/SapforConfigurationSettings/SapforConfigurationSettings.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/SAPFOR/SapforConfigurationSettings/SapforConfigurationSettingsDBTable.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/SAPFOR/SapforConfigurationTest/SapforConfigurationTest.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/SAPFOR/SapforConfigurationTest/SapforConfigurationTestsDBTable.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/Common/Database/Database.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Common/Database/Database.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/Common/Database/Tables/DBTable.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Common/Database/Tables/DBTable.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/Common/Database/Tables/DataSet.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Common/Database/Tables/DataSet.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/Common/Visual/DataSetControlForm.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Common/Visual/DataSetControlForm.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/ShowCurrentDVMConfigurationTests.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/ShowCurrentDVMConfigurationTests.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/ShowCurrentSAPFORConfigurationTests.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/ShowCurrentSAPFORConfigurationTests.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/Testing/SaveCurrentConfiguration.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/Testing/SaveCurrentConfiguration.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/Testing/ShowCurrentConfigurationTests.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/Testing/ShowCurrentConfigurationTests.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/ServerObjectsCache/ConfigurationCache.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/ServerObjectsCache/ConfigurationCache.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/ServerObjectsCache/DVMConfigurationCache.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/ServerObjectsCache/DVMConfigurationCache.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/ServerObjectsCache/SapforConfigurationCache.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/ServerObjectsCache/SapforConfigurationCache.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/ServerObjectsCache/VisualCaches.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/ServerObjectsCache/VisualCaches.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/Common/Configuration/Configuration.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/Common/Configuration/Configuration.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/Common/Test/TestDBTable.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/Common/Test/TestDBTable.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/Common/TestingServer.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/Common/TestingServer.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/Common/TestsDatabase.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/Common/TestsDatabase.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/DVM/DVMConfiguration/DVMConfiguration.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/DVM/DVMConfiguration/DVMConfiguration.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/DVM/DVMConfiguration/DVMConfigurationDBTable.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/DVM/DVMConfiguration/DVMConfigurationDBTable.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/DVM/DVMConfiguration/UI/DVMConfigurationsForm.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/DVM/DVMConfiguration/UI/DVMConfigurationsForm.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/DVM/DVMConfigurationGroup/DVMConfigurationGroup.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/DVM/DVMConfigurationGroup/DVMConfigurationGroup.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/DVM/DVMPackage/DVMPackage.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/DVM/DVMPackage/DVMPackage.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/SAPFOR/Json/SapforPackage_json.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/SAPFOR/Json/SapforPackage_json.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/DVM/DVMConfigurationGroup/DVMConfigurationGroupsDBTable.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/DVM/DVMConfigurationGroup/DVMConfigurationGroupsDBTable.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/SAPFOR/Json/SapforTestingSet_json.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/SAPFOR/Json/SapforTestingSet_json.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/SAPFOR/SapforConfiguration/SapforConfiguration.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/SAPFOR/SapforConfiguration/SapforConfiguration.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/SAPFOR/SapforConfiguration/SapforConfigurationDBTable.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/SAPFOR/SapforConfiguration/SapforConfigurationDBTable.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/SAPFOR/SapforConfiguration/UI/SapforConfigurationsForm.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/SAPFOR/SapforConfiguration/UI/SapforConfigurationsForm.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/SAPFOR/SapforConfigurationGroup/SapforConfigurationGroup.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/SAPFOR/SapforConfigurationGroup/SapforConfigurationGroup.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/SAPFOR/SapforConfigurationGroup/SapforConfigurationGroupsDBTable.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/SAPFOR/SapforConfigurationGroup/SapforConfigurationGroupsDBTable.java" afterDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />

View File

@@ -1,8 +1,10 @@
package Common.Database.Tables;
import Common.Database.Database;
import Common.Database.Objects.DBObject;
import _VisualDVM.TestingSystem.DVM.DVMConfigurationGroup.DVMConfigurationGroup;
import java.lang.reflect.Field;
import java.util.Vector;
public abstract class DBTable<K, D extends DBObject> extends DataSet<K, D> {
//-
public DBTableColumn PK = null;
@@ -34,4 +36,31 @@ public abstract class DBTable<K, D extends DBObject> extends DataSet<K, D> {
res.append(c).append("\n");
return res.toString();
}
boolean vectorContains(D object, Vector<D> vector){
for (D v_object: vector){
if (isEqual(object,v_object))
return true;
}
return false;
}
public void ActualizeData(Vector<D> old, Vector<D> actual) throws Exception {
//привести данные вектора old в соответствие с вектором new
//те, что в нем появились вставить, те что отсутствуют но есть в old удалить
Vector<D> to_delete = new Vector<>();
Vector<D> to_insert = new Vector<>();
for (D object: old){
if (!vectorContains(object, actual))
to_delete.add(object);
}
for (D object : actual) {
if (!vectorContains(object, old))
to_insert.add(object);
}
db.BeginTransaction();
for (D object: to_delete)
db.Delete(object);
for (D object: to_insert)
db.Insert(object);
db.Commit();
}
}

View File

@@ -87,4 +87,8 @@ public class DataSet<K, D extends DBObject> extends DataSetAnchestor {
public boolean containsKey(Object key) {
return Data.containsKey(key);
}
//--
public boolean isEqual(D o1, D o2){
return false;
}
}

View File

@@ -581,4 +581,10 @@ public abstract class DataSetControlForm<D extends DBObject> extends ControlForm
public boolean canModifyCurrent(TextLog Log) {
return CheckCurrent(Log);
}
public void SelectKeys(Vector<?> keys_in) {
for (Object key_ : keys_in)
dataSource.get(key_).Select(true);
if (!keys_in.isEmpty())
Show(keys_in.lastElement());
}
}

View File

@@ -4,6 +4,7 @@ import _VisualDVM.Passes.Testing.ShowCurrentConfigurationTests;
import _VisualDVM.ServerObjectsCache.DVMConfigurationCache;
import _VisualDVM.ServerObjectsCache.VisualCaches;
import _VisualDVM.TestingSystem.DVM.DVMConfiguration.DVMConfiguration;
import _VisualDVM.TestingSystem.DVM.DVMConfigurationSettings.DVMConfigurationSettings;
import _VisualDVM.TestingSystem.DVM.DVMSettings.DVMSettings;
import java.util.Vector;
@@ -19,14 +20,8 @@ public class ShowCurrentDVMConfigurationTests extends ShowCurrentConfigurationTe
}
@Override
protected void showDone() throws Exception {
super.showDone();
DVMConfigurationCache cache = (DVMConfigurationCache) VisualCaches.GetCache(target);
Vector<DVMSettings> settings = cache.getSettings();
for (DVMSettings s : settings)
s.Select(true);
//--
if (!settings.isEmpty()) {
Global.testingServer.db.sapforSettings.ShowUI(settings.lastElement().id);
}
Global.testingServer.db.groups.getUI().SelectKeys(Global.testingServer.db.getDVMConfigurationGroupsIds(target));
Global.testingServer.db.tests.getUI().SelectKeys(Global.testingServer.db.getDVMConfigurationTestsIds(target));
Global.testingServer.db.dvmSettings.getUI().SelectKeys(Global.testingServer.db.getDVMConfigurationSettingsIds(target));
}
}

View File

@@ -14,14 +14,8 @@ public class ShowCurrentSAPFORConfigurationTests extends ShowCurrentConfiguratio
}
@Override
protected void showDone() throws Exception {
super.showDone();
SapforConfigurationCache cache = (SapforConfigurationCache) VisualCaches.GetCache(target);
Vector<SapforSettings> settings = cache.getSettings();
for (SapforSettings s : settings)
s.Select(true);
//--
if (!settings.isEmpty()) {
Global.testingServer.db.sapforSettings.ShowUI(settings.lastElement().id);
}
Global.testingServer.db.groups.getUI().SelectKeys(Global.testingServer.db.getSapforConfigurationGroupsIds(target));
Global.testingServer.db.tests.getUI().SelectKeys(Global.testingServer.db.getSapforConfigurationTestsIds(target));
Global.testingServer.db.dvmSettings.getUI().SelectKeys(Global.testingServer.db.getSapforConfigurationSettingsIds(target));
}
}

View File

@@ -50,8 +50,8 @@ public abstract class SaveCurrentConfiguration<C extends Configuration, S extend
protected void ServerAction() throws Exception {
//занесение информации об участвующих группах конфигурациях и тестах
target.saveGroups(groups);
target.saveTestsAsJson(tests);
target.saveSettingsAsJson(settings);
target.saveTests(tests);
target.saveSettings(settings);
//--
super.ServerAction();
}

View File

@@ -31,26 +31,5 @@ public abstract class ShowCurrentConfigurationTests<C extends Configuration> ext
protected void showPreparation() throws Exception {
Global.testingServer.db.UnselectAllGTC();
}
@Override
protected void showDone() throws Exception {
/*
ConfigurationCache cache = (ConfigurationCache) VisualCaches.GetCache(target);
Vector<Group> groups = cache.getGroups();
Vector<Test> tests = cache.getTests();
//-----
//--
for (Group group : groups)
group.Select(true);
for (Test test : tests)
test.Select(true);
//--
if (!groups.isEmpty()) {
Global.testingServer.db.groups.ShowUI(groups.lastElement().id);
}
if (!tests.isEmpty()) {
Global.testingServer.db.tests.ShowUI(tests.lastElement().id);
}
*/
}
}

View File

@@ -12,26 +12,14 @@ import _VisualDVM.TestingSystem.Common.Test.Test;
import java.util.Vector;
public class ConfigurationCache extends VisualCache {
public int configuration_id;
public Vector<String> groupsSummary = null;
public int groupsOnly = 0;
public SettingsArrayJson settingsJson = null;
public int testsCount=0;
public Vector<String> groupsSummary = null;
public String settingsSummary = null;
//--
public ConfigurationCache(Configuration configuration) {
configuration_id = configuration.id;
groupsOnly = configuration.groupsOnly;
//-
if (configuration.packedSettingsJson.isEmpty())
settingsJson = new SettingsArrayJson(); //просто пустой
else
settingsJson = Utils_.gson.fromJson(configuration.packedSettingsJson, SettingsArrayJson.class);
//-
Vector<String> settingsDescriptionsVector = new Vector<>();
for (SettingsJson settingsJson : settingsJson.array)
settingsDescriptionsVector.add(settingsJson.description);
settingsSummary = String.join(";", settingsDescriptionsVector);
}
public int getTestsCount() {
return 0;
}
}

View File

@@ -2,10 +2,10 @@ package _VisualDVM.ServerObjectsCache;
import _VisualDVM.Global;
import _VisualDVM.ProjectData.LanguageName;
import _VisualDVM.TestingSystem.Common.Group.Group;
import _VisualDVM.TestingSystem.Common.Group.Json.GroupJson;
import _VisualDVM.TestingSystem.Common.Settings.Json.SettingsJson;
import _VisualDVM.TestingSystem.DVM.DVMConfiguration.DVMConfiguration;
import _VisualDVM.TestingSystem.DVM.DVMConfigurationGroup.DVMConfigurationGroup;
import _VisualDVM.TestingSystem.DVM.DVMConfigurationSettings.DVMConfigurationSettings;
import _VisualDVM.TestingSystem.DVM.DVMSettings.DVMSettings;
import java.util.LinkedHashMap;
@@ -18,7 +18,6 @@ public class DVMConfigurationCache extends ConfigurationCache {
//--
LinkedHashMap<LanguageName, Vector<String>> gmap = new LinkedHashMap<>();
for (DVMConfigurationGroup configurationGroup : configurationGroups) {
if (Global.testingServer.db.groups.containsKey(configurationGroup.group_id)) {
Group group = Global.testingServer.db.groups.get(configurationGroup.group_id);
Vector<String> vector = null;
if (gmap.containsKey(group.language)) {
@@ -29,17 +28,18 @@ public class DVMConfigurationCache extends ConfigurationCache {
}
vector.add(group.description);
}
}
for (LanguageName language : gmap.keySet()) {
groupsSummary.add(language + ": " + String.join(";", gmap.get(language)));
}
//--
Vector<DVMConfigurationSettings> configurationSettings = Global.testingServer.db.getVectorByFK(configuration, DVMConfigurationSettings.class);
Vector<String> settingsDescriptionsVector = new Vector<>();
for (DVMConfigurationSettings settings : configurationSettings) {
DVMSettings dvmSettings = Global.testingServer.db.dvmSettings.get(settings.dvmsettings_id);
settingsDescriptionsVector.add(dvmSettings.description);
}
public Vector<DVMSettings> getSettings() {
Vector<DVMSettings> res = new Vector<>();
for (SettingsJson settingsJson : settingsJson.array) {
if (Global.testingServer.db.dvmSettings.containsKey(settingsJson.id))
res.add(Global.testingServer.db.dvmSettings.get(settingsJson.id));
}
return res;
settingsSummary = String.join(";", settingsDescriptionsVector);
//--
testsCount = Global.testingServer.db.getDVMConfigurationTestsIds(configuration).size();
}
}

View File

@@ -1,17 +1,16 @@
package _VisualDVM.ServerObjectsCache;
import _VisualDVM.Global;
import _VisualDVM.ProjectData.LanguageName;
import _VisualDVM.TestingSystem.Common.Configuration.Configuration;
import _VisualDVM.TestingSystem.Common.Group.Group;
import _VisualDVM.TestingSystem.Common.Settings.Json.SettingsJson;
import _VisualDVM.TestingSystem.DVM.DVMConfigurationGroup.DVMConfigurationGroup;
import _VisualDVM.TestingSystem.SAPFOR.SapforConfiguration.SapforConfiguration;
import _VisualDVM.TestingSystem.SAPFOR.SapforConfigurationGroup.SapforConfigurationGroup;
import _VisualDVM.TestingSystem.SAPFOR.SapforConfigurationSettings.SapforConfigurationSettings;
import _VisualDVM.TestingSystem.SAPFOR.SapforSettings.SapforSettings;
import java.util.LinkedHashMap;
import java.util.Vector;
public class SapforConfigurationCache extends ConfigurationCache {
public SapforConfigurationCache(Configuration configuration) {
public SapforConfigurationCache(SapforConfiguration configuration) {
super(configuration);
groupsSummary = new Vector<>();
Vector<SapforConfigurationGroup> configurationGroups = Global.testingServer.db.getVectorByFK(configuration, SapforConfigurationGroup.class);
@@ -33,13 +32,15 @@ public class SapforConfigurationCache extends ConfigurationCache {
for (LanguageName language : gmap.keySet()) {
groupsSummary.add(language + ": " + String.join(";", gmap.get(language)));
}
//--
Vector<SapforConfigurationSettings> configurationSettings = Global.testingServer.db.getVectorByFK(configuration, SapforConfigurationSettings.class);
Vector<String> settingsDescriptionsVector = new Vector<>();
for (SapforConfigurationSettings settings : configurationSettings) {
SapforSettings dvmSettings = Global.testingServer.db.sapforSettings.get(settings.sapforsettings_id);
settingsDescriptionsVector.add(dvmSettings.description);
}
public Vector<SapforSettings> getSettings() {
Vector<SapforSettings> res = new Vector<>();
for (SettingsJson settingsJson : settingsJson.array) {
if (Global.testingServer.db.sapforSettings.containsKey(settingsJson.id))
res.add(Global.testingServer.db.sapforSettings.get(settingsJson.id));
}
return res;
settingsSummary = String.join(";", settingsDescriptionsVector);
//-
testsCount = Global.testingServer.db.getSapforConfigurationTestsIds(configuration).size();
}
}

View File

@@ -28,7 +28,7 @@ public class VisualCaches {
}
//чтобы не трогать сами объекты и не сбить сериализацию
static VisualCache createCache(Object object) {
if (object instanceof SapforConfiguration) return new SapforConfigurationCache((Configuration) object);
if (object instanceof SapforConfiguration) return new SapforConfigurationCache((SapforConfiguration) object);
if (object instanceof DVMConfiguration) return new DVMConfigurationCache((DVMConfiguration) object);
if (object instanceof TestingPackage) return new PackageCache((TestingPackage) object);
if (object instanceof DVMSettings) return new DVMSettingsCache((DVMSettings) object);

View File

@@ -1,22 +1,17 @@
package _VisualDVM.TestingSystem.Common.Configuration;
import Common.CommonConstants;
import Common.Database.Objects.DBObject;
import Common.Database.Objects.riDBObject;
import Common.Utils.TextLog;
import Common.Utils.Utils_;
import _VisualDVM.ServerObjectsCache.ConfigurationCache;
import _VisualDVM.TestingSystem.Common.Group.Group;
import _VisualDVM.TestingSystem.Common.Group.Json.GroupJson;
import _VisualDVM.TestingSystem.Common.Settings.Json.SettingsArrayJson;
import _VisualDVM.TestingSystem.Common.Settings.Json.SettingsJson;
import _VisualDVM.TestingSystem.Common.Settings.Settings;
import _VisualDVM.TestingSystem.Common.Test.Json.TestJson;
import _VisualDVM.TestingSystem.Common.Test.Json.TestsJson;
import _VisualDVM.TestingSystem.Common.Test.Test;
import com.sun.org.glassfish.gmbal.Description;
import javax.swing.*;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Vector;
public class Configuration extends riDBObject {
@@ -31,13 +26,13 @@ public class Configuration extends riDBObject {
public int autoTesting = 0;
@Description("DEFAULT 1")
public int kernels = 1; //ядра
//--
//@Description("DEFAULT ''")
// public String packedGroupsJson = "";
@Description("DEFAULT ''")
//todo ВЫВЕСТИ ПОСЛЕ ПАТЧА
/*
public String packedGroupsJson = "";
public String packedTestsJson = "";
@Description("DEFAULT ''")
public String packedSettingsJson = "";
*/
//todo ------------------------
@Description("DEFAULT 0")
public int groupsOnly = 0;
//если флаг выставлен, то при формировании пакета берутся все тесты из участвущих групп. тесты конфигурации игнорируются.
@@ -57,11 +52,10 @@ public class Configuration extends riDBObject {
//--
public void saveGroups(Vector<Group> groups) {
}
public void saveTestsAsJson(Vector<Test> tests) {
packedTestsJson = Utils_.gson.toJson(new TestsJson(tests));
public void saveTests(Vector<Test> tests) {
}
public void saveSettingsAsJson(Vector<Settings> settings) {
packedSettingsJson = Utils_.gson.toJson(new SettingsArrayJson(settings));
public void saveSettings(Vector<Settings> settings_in) {
}
//--
@Override
@@ -73,8 +67,6 @@ public class Configuration extends riDBObject {
autoTesting = c.autoTesting;
kernels = c.kernels;
groupsOnly = c.groupsOnly;
packedTestsJson = c.packedTestsJson;
packedSettingsJson = c.packedSettingsJson;
}
//- для автоматического тестирования главным образом.
public boolean validate(TextLog log) {
@@ -84,31 +76,4 @@ public class Configuration extends riDBObject {
public String getDialogName() {
return description;
}
//работает со стороны сервера.
public boolean tryUpdateSettings(Settings settings) {
ConfigurationCache unpacked = new ConfigurationCache(this);
for (SettingsJson settingsJson : unpacked.settingsJson.array) {
if (settingsJson.id == settings.id) {
settingsJson.description = settings.description;
packedSettingsJson = Utils_.gson.toJson(unpacked.settingsJson);
return true;
}
}
return false;
}
public boolean tryDeleteSettings(Settings settings) {
boolean flag = false;
ConfigurationCache unpacked = new ConfigurationCache(this);
List<SettingsJson> actualSettings = new Vector<>();
for (SettingsJson settingsJson : unpacked.settingsJson.array) {
if (settingsJson.id == settings.id)
flag = true;
else actualSettings.add(settingsJson);
}
if (flag) {
unpacked.settingsJson.array = actualSettings;
packedSettingsJson = Utils_.gson.toJson(unpacked.settingsJson);
}
return flag;
}
}

View File

@@ -9,6 +9,8 @@ import _VisualDVM.Constants;
import _VisualDVM.TestingSystem.Common.Group.Group;
import _VisualDVM.TestingSystem.Common.Test.UI.TestsForm;
import _VisualDVM.TestingSystem.Common.TestFile.TestFile;
import _VisualDVM.TestingSystem.DVM.DVMConfigurationTest.DVMConfigurationTest;
import _VisualDVM.TestingSystem.SAPFOR.SapforConfigurationTest.SapforConfigurationTest;
import javax.swing.*;
import java.util.LinkedHashMap;
@@ -29,6 +31,8 @@ public class TestDBTable extends iDBTable<Test> {
public LinkedHashMap<Class<? extends DBObject>, FKBehaviour> getFKDependencies() {
LinkedHashMap<Class<? extends DBObject>, FKBehaviour> res = new LinkedHashMap<>();
res.put(TestFile.class, new FKBehaviour(FKDataBehaviour.DELETE, FKCurrentObjectBehaviuor.ACTIVE));
res.put(DVMConfigurationTest.class, new FKBehaviour(FKDataBehaviour.DELETE, FKCurrentObjectBehaviuor.PASSIVE));
res.put(SapforConfigurationTest.class, new FKBehaviour(FKDataBehaviour.DELETE, FKCurrentObjectBehaviuor.PASSIVE));
return res;
}
@Override

View File

@@ -31,13 +31,18 @@ import _VisualDVM.TestingSystem.Common.Test.TestType;
import _VisualDVM.TestingSystem.Common.TestFile.TestFile;
import _VisualDVM.TestingSystem.Common.TestingPackageToKill.TestingPackageToKill;
import _VisualDVM.TestingSystem.DVM.DVMConfiguration.DVMConfiguration;
import _VisualDVM.TestingSystem.DVM.DVMConfigurationGroup.DVMConfigurationGroup;
import _VisualDVM.TestingSystem.DVM.DVMConfigurationSettings.DVMConfigurationSettings;
import _VisualDVM.TestingSystem.DVM.DVMConfigurationTest.DVMConfigurationTest;
import _VisualDVM.TestingSystem.DVM.DVMPackage.DVMPackage;
import _VisualDVM.TestingSystem.DVM.DVMSettings.DVMSettings;
import _VisualDVM.TestingSystem.DVM.DVMTestingChecker;
import _VisualDVM.TestingSystem.DVM.PackageCredentials.DVMPackageCredentials;
import _VisualDVM.TestingSystem.SAPFOR.Json.SapforPackage_json;
import _VisualDVM.TestingSystem.SAPFOR.Json.SapforVersion_json;
import _VisualDVM.TestingSystem.SAPFOR.SapforConfiguration.SapforConfiguration;
import _VisualDVM.TestingSystem.SAPFOR.SapforConfigurationGroup.SapforConfigurationGroup;
import _VisualDVM.TestingSystem.SAPFOR.SapforConfigurationSettings.SapforConfigurationSettings;
import _VisualDVM.TestingSystem.SAPFOR.SapforConfigurationTest.SapforConfigurationTest;
import _VisualDVM.TestingSystem.SAPFOR.SapforPackage.SapforPackage;
import _VisualDVM.TestingSystem.SAPFOR.SapforSettings.SapforSettings;
import _VisualDVM.TestingSystem.SAPFOR.SapforSettingsCommand.SapforSettingsCommand;
@@ -154,27 +159,40 @@ public class TestingServer extends RepositoryServer<TestsDatabase> {
}
@Override
protected void afterEditAction(DBObject object) throws Exception {
if (object instanceof DVMSettings) {
DVMSettings dvmSettings = (DVMSettings) object;
//-
for (DVMConfiguration dvmConfiguration : db.dvmConfigurations.Data.values()) {
if (dvmConfiguration.tryUpdateSettings(dvmSettings)) {
db.Update(dvmConfiguration);
}
}
} else if (object instanceof SapforSettings) {
SapforSettings sapforSettings = (SapforSettings) object;
for (SapforConfiguration sapforConfiguration : db.sapforConfigurations.Data.values()) {
if (sapforConfiguration.tryUpdateSettings(sapforSettings)) {
db.Update(sapforConfiguration);
}
}
} else if (object instanceof DVMConfiguration){
if (object instanceof DVMConfiguration){
DVMConfiguration dvmConfiguration = (DVMConfiguration) object;
db.RefreshDVMConfigurationGroups(dvmConfiguration);
//--
if (dvmConfiguration.groups!=null)
db.dvmConfigurationGroups.ActualizeData(
db.getVectorByFK(dvmConfiguration, DVMConfigurationGroup.class),
dvmConfiguration.groups);
if (dvmConfiguration.tests!=null)
db.dvmConfigurationTests.ActualizeData(
db.getVectorByFK(dvmConfiguration, DVMConfigurationTest.class),
dvmConfiguration.tests);
if (dvmConfiguration.settings!=null)
db.dvmConfigurationSettings.ActualizeData(
db.getVectorByFK(dvmConfiguration, DVMConfigurationSettings.class),
dvmConfiguration.settings);
//--
}else if (object instanceof SapforConfiguration){
SapforConfiguration sapforConfiguration = (SapforConfiguration) object;
db.RefreshSapforConfigurationGroups(sapforConfiguration);
if (sapforConfiguration.groups!=null)
db.sapforConfigurationGroups.ActualizeData(
db.getVectorByFK(sapforConfiguration, SapforConfigurationGroup.class),
sapforConfiguration.groups
);
if (sapforConfiguration.tests!=null)
db.sapforConfigurationTests.ActualizeData(
db.getVectorByFK(sapforConfiguration, SapforConfigurationTest.class),
sapforConfiguration.tests
);
if (sapforConfiguration.settings!=null)
db.sapforConfigurationSettings.ActualizeData(
db.getVectorByFK(sapforConfiguration, SapforConfigurationSettings.class),
sapforConfiguration.settings
);
}
}
@Override
@@ -215,22 +233,6 @@ public class TestingServer extends RepositoryServer<TestsDatabase> {
//--
File workspace = sapforPackage.getLocalWorkspace();
Utils_.forceDeleteWithCheck(workspace);
} else if (object instanceof DVMSettings) {
DVMSettings dvmSettings = (DVMSettings) object;
for (DVMConfiguration dvmConfiguration : db.dvmConfigurations.Data.values()) {
if (dvmConfiguration.tryDeleteSettings(dvmSettings)) {
db.Update(dvmConfiguration);
}
}
} else if (object instanceof SapforSettings) {
//--
SapforSettings sapforSettings = (SapforSettings) object;
for (SapforConfiguration sapforConfiguration : db.sapforConfigurations.Data.values()) {
if (sapforConfiguration.tryDeleteSettings(sapforSettings)) {
db.Update(sapforConfiguration);
}
}
//--
}
//-
}

View File

@@ -10,10 +10,6 @@ import _VisualDVM.Passes.PassCode;
import _VisualDVM.ServerObjectsCache.VisualCaches;
import _VisualDVM.TestingSystem.Common.Group.Group;
import _VisualDVM.TestingSystem.Common.Group.GroupsDBTable;
import _VisualDVM.TestingSystem.Common.Settings.Json.SettingsArrayJson;
import _VisualDVM.TestingSystem.Common.Settings.Json.SettingsJson;
import _VisualDVM.TestingSystem.Common.Test.Json.TestJson;
import _VisualDVM.TestingSystem.Common.Test.Json.TestsJson;
import _VisualDVM.TestingSystem.Common.Test.Test;
import _VisualDVM.TestingSystem.Common.Test.TestDBTable;
import _VisualDVM.TestingSystem.Common.TestFile.TestFile;
@@ -23,6 +19,10 @@ import _VisualDVM.TestingSystem.DVM.DVMConfiguration.DVMConfiguration;
import _VisualDVM.TestingSystem.DVM.DVMConfiguration.DVMConfigurationDBTable;
import _VisualDVM.TestingSystem.DVM.DVMConfigurationGroup.DVMConfigurationGroup;
import _VisualDVM.TestingSystem.DVM.DVMConfigurationGroup.DVMConfigurationGroupsDBTable;
import _VisualDVM.TestingSystem.DVM.DVMConfigurationSettings.DVMConfigurationSettings;
import _VisualDVM.TestingSystem.DVM.DVMConfigurationSettings.DVMConfigurationSettingsDBTable;
import _VisualDVM.TestingSystem.DVM.DVMConfigurationTest.DVMConfigurationTest;
import _VisualDVM.TestingSystem.DVM.DVMConfigurationTest.DVMConfigurationTestsDBTable;
import _VisualDVM.TestingSystem.DVM.DVMPackage.DVMPackage;
import _VisualDVM.TestingSystem.DVM.DVMPackage.DVMPackageDBTable;
import _VisualDVM.TestingSystem.DVM.DVMSettings.DVMSettingsDBTable;
@@ -31,6 +31,10 @@ import _VisualDVM.TestingSystem.SAPFOR.SapforConfiguration.SapforConfiguration;
import _VisualDVM.TestingSystem.SAPFOR.SapforConfiguration.SapforConfigurationDBTable;
import _VisualDVM.TestingSystem.SAPFOR.SapforConfigurationGroup.SapforConfigurationGroup;
import _VisualDVM.TestingSystem.SAPFOR.SapforConfigurationGroup.SapforConfigurationGroupsDBTable;
import _VisualDVM.TestingSystem.SAPFOR.SapforConfigurationSettings.SapforConfigurationSettings;
import _VisualDVM.TestingSystem.SAPFOR.SapforConfigurationSettings.SapforConfigurationSettingsDBTable;
import _VisualDVM.TestingSystem.SAPFOR.SapforConfigurationTest.SapforConfigurationTest;
import _VisualDVM.TestingSystem.SAPFOR.SapforConfigurationTest.SapforConfigurationTestsDBTable;
import _VisualDVM.TestingSystem.SAPFOR.SapforPackage.SapforPackage;
import _VisualDVM.TestingSystem.SAPFOR.SapforPackage.SapforPackageDBTable;
import _VisualDVM.TestingSystem.SAPFOR.SapforSettings.SapforSettingsDBTable;
@@ -55,6 +59,8 @@ public class TestsDatabase extends SQLiteDatabase {
public DVMSettingsDBTable dvmSettings;
public DVMConfigurationDBTable dvmConfigurations;
public DVMConfigurationGroupsDBTable dvmConfigurationGroups;
public DVMConfigurationTestsDBTable dvmConfigurationTests;
public DVMConfigurationSettingsDBTable dvmConfigurationSettings;
public DVMPackageDBTable dvmPackages;
public DVMRunTasksSet dvmRunTasks = new DVMRunTasksSet();
//--
@@ -62,7 +68,9 @@ public class TestsDatabase extends SQLiteDatabase {
public SapforSettingsDBTable sapforSettings;
public SapforSettingsCommandsDBTable sapforSettingsCommands;
public SapforConfigurationDBTable sapforConfigurations;
public SapforConfigurationGroupsDBTable sapforConfigurationsGroups;
public SapforConfigurationGroupsDBTable sapforConfigurationGroups;
public SapforConfigurationTestsDBTable sapforConfigurationTests;
public SapforConfigurationSettingsDBTable sapforConfigurationSettings;
public SapforPackageDBTable sapforPackages;
//--
public TestingPackagesToKillDBTable testingPackagesToKill;
@@ -79,13 +87,17 @@ public class TestsDatabase extends SQLiteDatabase {
addTable(dvmSettings = new DVMSettingsDBTable());
addTable(dvmConfigurations = new DVMConfigurationDBTable());
addTable(dvmConfigurationGroups = new DVMConfigurationGroupsDBTable());
addTable(dvmConfigurationTests = new DVMConfigurationTestsDBTable());
addTable(dvmConfigurationSettings = new DVMConfigurationSettingsDBTable());
addTable(dvmPackages = new DVMPackageDBTable());
//-
addTable(serverSapfors = new ServerSapforsDBTable());
addTable(sapforSettings = new SapforSettingsDBTable());
addTable(sapforSettingsCommands = new SapforSettingsCommandsDBTable());
addTable(sapforConfigurations = new SapforConfigurationDBTable());
addTable(sapforConfigurationsGroups = new SapforConfigurationGroupsDBTable());
addTable(sapforConfigurationGroups = new SapforConfigurationGroupsDBTable());
addTable(sapforConfigurationTests = new SapforConfigurationTestsDBTable());
addTable(sapforConfigurationSettings = new SapforConfigurationSettingsDBTable());
addTable(sapforPackages = new SapforPackageDBTable());
//--
addTable(testingPackagesToKill = new TestingPackagesToKillDBTable());
@@ -387,10 +399,8 @@ public class TestsDatabase extends SQLiteDatabase {
for (DVMConfigurationGroup dvmConfigurationGroup: DVMConfigurationGroups)
Insert(dvmConfigurationGroup);
Commit();
*/
//---
/*
Vector<SapforConfigurationGroup> sapforConfigurationGroups =new Vector<>();
Vector<SapforConfigurationGroup> SapforConfigurationGroups =new Vector<>();
//группы sapfor конфигураций
for (SapforConfiguration sapforConfiguration: sapforConfigurations.Data.values()){
GroupsJson groupsJson = Utils_.gson.fromJson(sapforConfiguration.packedGroupsJson, GroupsJson.class);
@@ -398,76 +408,78 @@ public class TestsDatabase extends SQLiteDatabase {
SapforConfigurationGroup sapforConfigurationGroup = new SapforConfigurationGroup();
sapforConfigurationGroup.group_id = groupJson.id;
sapforConfigurationGroup.sapforconfiguration_id = sapforConfiguration.id;
sapforConfigurationGroups.add(sapforConfigurationGroup);
SapforConfigurationGroups.add(sapforConfigurationGroup);
}
}
BeginTransaction();
for (SapforConfigurationGroup sapforConfigurationGroup: sapforConfigurationGroups)
for (SapforConfigurationGroup sapforConfigurationGroup: SapforConfigurationGroups)
Insert(sapforConfigurationGroup);
Commit();
//тесты двм конфигураций
Vector<DVMConfigurationTest> DvmConfigurationTests_ = new Vector<>();
for (DVMConfiguration configuration: dvmConfigurations.Data.values()){
TestsJson testsJson = Utils_.gson.fromJson(configuration.packedTestsJson,TestsJson.class);
for (TestJson testJson: testsJson.array){
DVMConfigurationTest test= new DVMConfigurationTest();
test.test_id=testJson.id;
test.dvmconfiguration_id=configuration.id;
DvmConfigurationTests_.add(test);
}
}
BeginTransaction();
for (DVMConfigurationTest test:DvmConfigurationTests_)
Insert(test);
Commit();
//-
//тесты сапфор конфигураций
Vector<SapforConfigurationTest> SapforConfigurationTests_ = new Vector<>();
for (SapforConfiguration configuration: sapforConfigurations.Data.values()){
TestsJson testsJson = Utils_.gson.fromJson(configuration.packedTestsJson,TestsJson.class);
for (TestJson testJson: testsJson.array){
SapforConfigurationTest test= new SapforConfigurationTest();
test.test_id=testJson.id;
test.sapforconfiguration_id=configuration.id;
SapforConfigurationTests_.add(test);
}
}
BeginTransaction();
for (SapforConfigurationTest test: SapforConfigurationTests_)
Insert(test);
Commit();
//--
Vector<DVMConfigurationSettings> DvmConfigurationSettings_ = new Vector<>();
for (DVMConfiguration configuration: dvmConfigurations.Data.values()){
SettingsArrayJson settingsArrayJson = Utils_.gson.fromJson(configuration.packedSettingsJson,SettingsArrayJson.class);
for (SettingsJson settingsJson: settingsArrayJson.array){
DVMConfigurationSettings Settings= new DVMConfigurationSettings();
Settings.dvmsettings_id=settingsJson.id;
Settings.dvmconfiguration_id=configuration.id;
DvmConfigurationSettings_.add(Settings);
}
}
BeginTransaction();
for (DVMConfigurationSettings Settings:DvmConfigurationSettings_)
Insert(Settings);
Commit();
//-
Vector<SapforConfigurationSettings> SapforConfigurationSettings_ = new Vector<>();
for (SapforConfiguration configuration: sapforConfigurations.Data.values()){
SettingsArrayJson settingsArrayJson = Utils_.gson.fromJson(configuration.packedSettingsJson,SettingsArrayJson.class);
for (SettingsJson settingsJson: settingsArrayJson.array){
SapforConfigurationSettings Settings= new SapforConfigurationSettings();
Settings.sapforsettings_id=settingsJson.id;
Settings.sapforconfiguration_id=configuration.id;
SapforConfigurationSettings_.add(Settings);
}
}
BeginTransaction();
for (SapforConfigurationSettings Settings:SapforConfigurationSettings_)
Insert(Settings);
Commit();
//-
*/
}
public static boolean containsGroup(DVMConfigurationGroup group_, Vector<DVMConfigurationGroup> groups) {
for (DVMConfigurationGroup group : groups) {
if (group.isEqual(group_)) {
return true;
}
}
return false;
}
public static boolean containsGroup(SapforConfigurationGroup group_, Vector<SapforConfigurationGroup> groups) {
for (SapforConfigurationGroup group : groups) {
if (group.isEqual(group_)) {
return true;
}
}
return false;
}
public void RefreshDVMConfigurationGroups(DVMConfiguration dvmConfiguration) throws Exception{
if (dvmConfiguration.configurationGroups != null) {
Vector<DVMConfigurationGroup> old_ = getVectorByFK(dvmConfiguration, DVMConfigurationGroup.class);
Vector<DVMConfigurationGroup> new_ = dvmConfiguration.configurationGroups;
//--
Vector<DVMConfigurationGroup> to_delete = new Vector<>();
Vector<DVMConfigurationGroup> to_add = new Vector<>();
for (DVMConfigurationGroup group: old_){
if (!containsGroup(group, new_))
to_delete.add(group);
}
for (DVMConfigurationGroup group : new_) {
if (!containsGroup(group, old_))
to_add.add(group);
}
for (DVMConfigurationGroup group: to_delete)
Delete(group);
for (DVMConfigurationGroup group: to_add)
Insert(group);
dvmConfiguration.configurationGroups=null;
}
}
//--
public void RefreshSapforConfigurationGroups(SapforConfiguration sapforConfiguration) throws Exception{
if (sapforConfiguration.configurationGroups != null) {
Vector<SapforConfigurationGroup> old_ = getVectorByFK(sapforConfiguration, SapforConfigurationGroup.class);
Vector<SapforConfigurationGroup> new_ = sapforConfiguration.configurationGroups;
//--
Vector<SapforConfigurationGroup> to_delete = new Vector<>();
Vector<SapforConfigurationGroup> to_add = new Vector<>();
for (SapforConfigurationGroup group: old_){
if (!containsGroup(group, new_))
to_delete.add(group);
}
for (SapforConfigurationGroup group : new_) {
if (!containsGroup(group, old_))
to_add.add(group);
}
for (SapforConfigurationGroup group: to_delete)
Delete(group);
for (SapforConfigurationGroup group: to_add)
Insert(group);
}
}
//--
public Vector<Integer> getDVMConfigurationGroupsIds(DVMConfiguration configuration) {
Vector<Integer> res = new Vector<>();
for (DVMConfigurationGroup dvmConfigurationGroup : dvmConfigurationGroups.Data.values()) {
@@ -476,38 +488,85 @@ public class TestsDatabase extends SQLiteDatabase {
}
return res;
}
public Vector<Integer> getDVMConfigurationTestsIds(DVMConfiguration configuration) {
Vector<Integer> res = new Vector<>();
if (configuration.groupsOnly == 0) {
for (DVMConfigurationTest dvmConfigurationTest : dvmConfigurationTests.Data.values()) {
if (dvmConfigurationTest.dvmconfiguration_id == configuration.id)
res.add(dvmConfigurationTest.test_id);
}
} else {
Vector<Integer> groups_ids = getDVMConfigurationGroupsIds(configuration);
for (int groud_id : groups_ids)
res.addAll(getFKi(groud_id, Group.class, Test.class));
}
return res;
}
public Vector<Integer> getDVMConfigurationSettingsIds(DVMConfiguration configuration) {
Vector<Integer> res = new Vector<>();
//временно
SettingsArrayJson settingsArrayJson = Utils_.gson.fromJson(configuration.packedSettingsJson,SettingsArrayJson.class);
for (SettingsJson settingsJson: settingsArrayJson.array){
res.add(settingsJson.id);
for (DVMConfigurationSettings dvmConfigurationSettings : dvmConfigurationSettings.Data.values()) {
if (dvmConfigurationSettings.dvmconfiguration_id == configuration.id)
res.add(dvmConfigurationSettings.dvmsettings_id);
}
return res;
}
//--
public Vector<Integer> getSapforConfigurationGroupsIds(SapforConfiguration configuration) {
Vector<Integer> res = new Vector<>();
for (SapforConfigurationGroup sapforConfigurationGroup : sapforConfigurationGroups.Data.values()) {
if (sapforConfigurationGroup.sapforconfiguration_id == configuration.id)
res.add(sapforConfigurationGroup.group_id);
}
return res;
}
public Vector<Integer> getSapforConfigurationTestsIds(SapforConfiguration configuration) {
Vector<Integer> res = new Vector<>();
if (configuration.groupsOnly == 0) {
for (SapforConfigurationTest sapforConfigurationTest : sapforConfigurationTests.Data.values()) {
if (sapforConfigurationTest.sapforconfiguration_id == configuration.id)
res.add(sapforConfigurationTest.test_id);
}
} else {
Vector<Integer> groups_ids = getSapforConfigurationGroupsIds(configuration);
for (int groud_id : groups_ids)
res.addAll(getFKi(groud_id, Group.class, Test.class));
}
return res;
}
public Vector<Integer> getSapforConfigurationSettingsIds(SapforConfiguration configuration) {
Vector<Integer> res = new Vector<>();
for (SapforConfigurationSettings sapforConfigurationSettings : sapforConfigurationSettings.Data.values()) {
if (sapforConfigurationSettings.sapforconfiguration_id == configuration.id)
res.add(sapforConfigurationSettings.sapforsettings_id);
}
return res;
}
//--
public LinkedHashMap<Integer, Vector<Integer>> getDVMConfigurationGroupsTestsIds(DVMConfiguration configuration) {
LinkedHashMap<Integer, Vector<Integer>> res = new LinkedHashMap<>();
Vector<Integer> all_tests_ids = getDVMConfigurationTestsIds(configuration);
for (int group_id : getDVMConfigurationGroupsIds(configuration)) {
if (configuration.groupsOnly == 0) {
Vector<Integer> test_ids = new Vector<>();
//--
//временно.
TestsJson testsJson = Utils_.gson.fromJson(configuration.packedTestsJson, TestsJson.class);
for (TestJson testJson : testsJson.array) {
if (Global.testingServer.db.tests.containsKey(testJson.id)) {
Test test = Global.testingServer.db.tests.get(testJson.id);
if (test.group_id == group_id)
test_ids.add(test.id);
for (int test_id : all_tests_ids) {
if (tests.get(test_id).group_id == group_id)
test_ids.add(test_id);
}
}
//--
res.put(group_id, test_ids);
} else {
res.put(group_id, getFKi(group_id, Group.class, Test.class));
}
}
return res;
}
public LinkedHashMap<Integer, Vector<Integer>> getSapforConfigurationGroupsTestsIds(SapforConfiguration configuration) {
LinkedHashMap<Integer, Vector<Integer>> res = new LinkedHashMap<>();
Vector<Integer> all_tests_ids = getSapforConfigurationTestsIds(configuration);
for (int group_id : getSapforConfigurationGroupsIds(configuration)) {
Vector<Integer> test_ids = new Vector<>();
for (int test_id : all_tests_ids) {
if (tests.get(test_id).group_id == group_id)
test_ids.add(test_id);
}
res.put(group_id, test_ids);
}
return res;
}
//--
}

View File

@@ -1,10 +1,13 @@
package _VisualDVM.TestingSystem.DVM.DVMConfiguration;
import Common.Database.Objects.DBObject;
import Common.Utils.Utils_;
import _VisualDVM.TestingSystem.Common.Configuration.Configuration;
import _VisualDVM.TestingSystem.Common.Group.Group;
import _VisualDVM.TestingSystem.Common.Group.Json.GroupsJson;
import _VisualDVM.TestingSystem.Common.Settings.Settings;
import _VisualDVM.TestingSystem.Common.Test.Test;
import _VisualDVM.TestingSystem.DVM.DVMConfigurationGroup.DVMConfigurationGroup;
import _VisualDVM.TestingSystem.DVM.DVMConfigurationSettings.DVMConfigurationSettings;
import _VisualDVM.TestingSystem.DVM.DVMConfigurationTest.DVMConfigurationTest;
import _VisualDVM.TestingSystem.DVM.DVMSettings.DVMSettings;
import com.sun.org.glassfish.gmbal.Description;
import java.util.Vector;
@@ -18,7 +21,11 @@ public class DVMConfiguration extends Configuration {
}
//--
@Description("IGNORE")
public Vector<DVMConfigurationGroup> configurationGroups = null;
public Vector<DVMConfigurationGroup> groups = null;
@Description("IGNORE")
public Vector<DVMConfigurationTest> tests = null;
@Description("IGNORE")
public Vector<DVMConfigurationSettings> settings = null;
//--
@Override
public void SynchronizeFields(DBObject src) {
@@ -26,9 +33,23 @@ public class DVMConfiguration extends Configuration {
DVMConfiguration c = (DVMConfiguration) src;
c_maxtime = c.c_maxtime;
}
public void saveGroups(Vector<Group> groups) {
configurationGroups = new Vector<>();
for (Group group: groups)
configurationGroups.add(new DVMConfigurationGroup(this, group));
@Override
public void saveGroups(Vector<Group> groups_in) {
groups = new Vector<>();
for (Group group : groups_in)
groups.add(new DVMConfigurationGroup(this, group));
}
@Override
public void saveTests(Vector<Test> tests_in) {
tests = new Vector<>();
for (Test test:tests_in)
tests.add(new DVMConfigurationTest(this, test));
}
@Override
public void saveSettings(Vector<Settings> settings_in) {
settings = new Vector<>();
for (Settings dvmSettings: settings_in){
settings.add(new DVMConfigurationSettings(this, (DVMSettings) dvmSettings));
}
}
}

View File

@@ -5,9 +5,9 @@ import Common.Database.Tables.FKCurrentObjectBehaviuor;
import Common.Database.Tables.FKDataBehaviour;
import Common.Database.Tables.iDBTable;
import Common.Visual.DataSetControlForm;
import _VisualDVM.TestingSystem.Common.Test.Test;
import _VisualDVM.TestingSystem.DVM.DVMConfiguration.UI.DVMConfigurationsForm;
import _VisualDVM.TestingSystem.DVM.DVMConfigurationGroup.DVMConfigurationGroup;
import _VisualDVM.TestingSystem.DVM.DVMConfigurationTest.DVMConfigurationTest;
import javax.swing.*;
import java.util.LinkedHashMap;
@@ -31,6 +31,8 @@ public class DVMConfigurationDBTable extends iDBTable<DVMConfiguration> {
public LinkedHashMap<Class<? extends DBObject>, FKBehaviour> getFKDependencies() {
LinkedHashMap<Class<? extends DBObject>, FKBehaviour> res = new LinkedHashMap<>();
res.put(DVMConfigurationGroup.class, new FKBehaviour(FKDataBehaviour.DELETE, FKCurrentObjectBehaviuor.PASSIVE));
res.put(DVMConfigurationTest.class, new FKBehaviour(FKDataBehaviour.DELETE, FKCurrentObjectBehaviuor.PASSIVE));
return res;
}
//--
}

View File

@@ -61,7 +61,7 @@ public class DVMConfigurationsForm extends RDataSetControlForm<DVMConfiguration>
new ColumnInfo<DVMConfiguration>("тестов") {
@Override
public Object getFieldAt(DVMConfiguration object) {
return ((ConfigurationCache) VisualCaches.GetCache(object)).getTestsCount();
return ((ConfigurationCache) VisualCaches.GetCache(object)).testsCount;
}
},
new ColumnInfo<DVMConfiguration>("компиляция(с)") {

View File

@@ -20,7 +20,4 @@ public class DVMConfigurationGroup extends iDBObject {
dvmconfiguration_id = configuration.id;
group_id = group.id;
}
public boolean isEqual(DVMConfigurationGroup group_in) {
return dvmconfiguration_id == group_in.dvmconfiguration_id && group_id == group_in.group_id;
}
}

View File

@@ -4,4 +4,8 @@ public class DVMConfigurationGroupsDBTable extends iDBTable<DVMConfigurationGrou
public DVMConfigurationGroupsDBTable() {
super(DVMConfigurationGroup.class);
}
@Override
public boolean isEqual(DVMConfigurationGroup o1, DVMConfigurationGroup o2) {
return o1.dvmconfiguration_id == o2.dvmconfiguration_id && o1.group_id == o2.group_id;
}
}

View File

@@ -0,0 +1,27 @@
package _VisualDVM.TestingSystem.DVM.DVMConfigurationSettings;
import Common.CommonConstants;
import Common.Database.Objects.DBObject;
import Common.Database.Objects.iDBObject;
import _VisualDVM.TestingSystem.DVM.DVMConfiguration.DVMConfiguration;
import _VisualDVM.TestingSystem.DVM.DVMConfigurationTest.DVMConfigurationTest;
import _VisualDVM.TestingSystem.DVM.DVMSettings.DVMSettings;
public class DVMConfigurationSettings extends iDBObject {
public int dvmconfiguration_id = CommonConstants.Nan;
public int dvmsettings_id = CommonConstants.Nan;
public DVMConfigurationSettings() {
}
public DVMConfigurationSettings(DVMConfiguration dvmConfiguration, DVMSettings settings) {
dvmconfiguration_id = dvmConfiguration.id;
dvmsettings_id = settings.id;
}
@Override
public void SynchronizeFields(DBObject src) {
super.SynchronizeFields(src);
DVMConfigurationSettings src_ = (DVMConfigurationSettings) src;
dvmconfiguration_id = src_.dvmconfiguration_id;
dvmsettings_id = src_.dvmsettings_id;
}
public boolean isEqual(DVMConfigurationSettings test_in) {
return dvmconfiguration_id == test_in.dvmconfiguration_id && dvmsettings_id == test_in.dvmsettings_id;
}
}

View File

@@ -0,0 +1,11 @@
package _VisualDVM.TestingSystem.DVM.DVMConfigurationSettings;
import Common.Database.Tables.iDBTable;
public class DVMConfigurationSettingsDBTable extends iDBTable<DVMConfigurationSettings> {
public DVMConfigurationSettingsDBTable() {
super(DVMConfigurationSettings.class);
}
@Override
public boolean isEqual(DVMConfigurationSettings o1, DVMConfigurationSettings o2) {
return o1.dvmconfiguration_id==o2.dvmconfiguration_id&&o1.dvmsettings_id==o2.dvmsettings_id;
}
}

View File

@@ -0,0 +1,25 @@
package _VisualDVM.TestingSystem.DVM.DVMConfigurationTest;
import Common.CommonConstants;
import Common.Database.Objects.DBObject;
import Common.Database.Objects.iDBObject;
import _VisualDVM.TestingSystem.Common.Test.Test;
import _VisualDVM.TestingSystem.DVM.DVMConfiguration.DVMConfiguration;
import _VisualDVM.TestingSystem.DVM.DVMConfigurationGroup.DVMConfigurationGroup;
public class DVMConfigurationTest extends iDBObject {
public int dvmconfiguration_id = CommonConstants.Nan;
public int test_id = CommonConstants.Nan;
public DVMConfigurationTest(){
}
public DVMConfigurationTest(DVMConfiguration dvmConfiguration, Test test) {
dvmconfiguration_id= dvmConfiguration.id;
test_id = test.id;
}
@Override
public void SynchronizeFields(DBObject src) {
super.SynchronizeFields(src);
DVMConfigurationTest src_ = (DVMConfigurationTest) src;
dvmconfiguration_id = src_.dvmconfiguration_id;
test_id = src_.test_id;
}
}

View File

@@ -0,0 +1,11 @@
package _VisualDVM.TestingSystem.DVM.DVMConfigurationTest;
import Common.Database.Tables.iDBTable;
public class DVMConfigurationTestsDBTable extends iDBTable<DVMConfigurationTest> {
public DVMConfigurationTestsDBTable() {
super(DVMConfigurationTest.class);
}
@Override
public boolean isEqual(DVMConfigurationTest o1, DVMConfigurationTest o2) {
return o1.dvmconfiguration_id==o2.dvmconfiguration_id && o2.test_id==o2.test_id;
}
}

View File

@@ -24,7 +24,9 @@ public class SapforTestingSet_json implements Serializable {
public SapforTestingSet_json(Vector<Test> tests_in, SapforConfiguration configuration) {
for (Test test : tests_in)
tests.add(new SapforTest_json(test));
/*
for (SapforSettings sapforSettings : ((SapforConfigurationCache) VisualCaches.GetCache(configuration)).getSettings())
configurations.add(new SapforConfiguration_json(sapforSettings));
*/
}
}

View File

@@ -2,31 +2,47 @@ package _VisualDVM.TestingSystem.SAPFOR.SapforConfiguration;
import Common.CommonConstants;
import Common.Database.Objects.DBObject;
import Common.Utils.TextLog;
import _VisualDVM.ProjectData.LanguageName;
import _VisualDVM.ServerObjectsCache.SapforConfigurationCache;
import _VisualDVM.ServerObjectsCache.VisualCaches;
import _VisualDVM.Global;
import _VisualDVM.TestingSystem.Common.Configuration.Configuration;
import _VisualDVM.TestingSystem.Common.Group.Group;
import _VisualDVM.TestingSystem.Common.Settings.Settings;
import _VisualDVM.TestingSystem.Common.Test.Test;
import _VisualDVM.TestingSystem.DVM.DVMConfigurationGroup.DVMConfigurationGroup;
import _VisualDVM.TestingSystem.SAPFOR.SapforConfigurationGroup.SapforConfigurationGroup;
import _VisualDVM.TestingSystem.SAPFOR.SapforConfigurationSettings.SapforConfigurationSettings;
import _VisualDVM.TestingSystem.SAPFOR.SapforConfigurationTest.SapforConfigurationTest;
import _VisualDVM.TestingSystem.SAPFOR.SapforSettings.SapforSettings;
import com.sun.org.glassfish.gmbal.Description;
import java.util.LinkedHashMap;
import java.util.Vector;
public class SapforConfiguration extends Configuration {
@Description("DEFAULT -1")
public int ethalon_id = CommonConstants.Nan; //пакет-эталон ( в двм тестировании не нужен.)
@Description("IGNORE")
public Vector<SapforConfigurationGroup> configurationGroups = null;
public Vector<SapforConfigurationGroup> groups = null;
@Description("IGNORE")
public Vector<SapforConfigurationTest> tests = null;
@Description("IGNORE")
public Vector<SapforConfigurationSettings> settings = null;
//--
public String printEthalon() {
return (ethalon_id == CommonConstants.Nan) ? "" : String.valueOf(ethalon_id);
}
public void saveGroups(Vector<Group> groups) {
configurationGroups = new Vector<>();
for (Group group: groups)
configurationGroups.add(new SapforConfigurationGroup(this, group));
public void saveGroups(Vector<Group> groups_in) {
groups = new Vector<>();
for (Group group : groups_in)
groups.add(new SapforConfigurationGroup(this, group));
}
@Override
public void saveTests(Vector<Test> tests_in) {
tests = new Vector<>();
for (Test test:tests_in)
tests.add(new SapforConfigurationTest(this, test));
}
@Override
public void saveSettings(Vector<Settings> settings_in) {
settings =new Vector<>();
for (Settings sapforSettings: settings_in)
settings.add(new SapforConfigurationSettings(this, (SapforSettings) sapforSettings));
}
@Override
public void SynchronizeFields(DBObject src) {
@@ -41,10 +57,8 @@ public class SapforConfiguration extends Configuration {
}
@Override
public boolean validate(TextLog Log) {
/*
SapforConfigurationCache cache = (SapforConfigurationCache) VisualCaches.GetCache(this);
//--
Vector<Integer> groups_ids = Global.testingServer.db.getSapforConfigurationGroupsIds();
Vector<Integer>tests_ids = ;
Vector<Group> groups = cache.getGroups();
Vector<SapforSettings> settingsArray = cache.getSettings();
Vector<Test> tests = cache.getTests();
@@ -78,7 +92,6 @@ public class SapforConfiguration extends Configuration {
}
}
//-
*/
return Log.isEmpty();
}
}

View File

@@ -6,10 +6,9 @@ import Common.Database.Tables.FKDataBehaviour;
import Common.Database.Tables.iDBTable;
import Common.Utils.Vector_;
import Common.Visual.DataSetControlForm;
import _VisualDVM.TestingSystem.Common.Test.Test;
import _VisualDVM.TestingSystem.DVM.DVMConfigurationGroup.DVMConfigurationGroup;
import _VisualDVM.TestingSystem.SAPFOR.SapforConfiguration.UI.SapforConfigurationsForm;
import _VisualDVM.TestingSystem.SAPFOR.SapforConfigurationGroup.SapforConfigurationGroup;
import _VisualDVM.TestingSystem.SAPFOR.SapforConfigurationTest.SapforConfigurationTest;
import javax.swing.*;
import java.util.LinkedHashMap;
@@ -30,6 +29,7 @@ public class SapforConfigurationDBTable extends iDBTable<SapforConfiguration> {
public LinkedHashMap<Class<? extends DBObject>, FKBehaviour> getFKDependencies() {
LinkedHashMap<Class<? extends DBObject>, FKBehaviour> res = new LinkedHashMap<>();
res.put(SapforConfigurationGroup.class, new FKBehaviour(FKDataBehaviour.DELETE, FKCurrentObjectBehaviuor.PASSIVE));
res.put(SapforConfigurationTest.class, new FKBehaviour(FKDataBehaviour.DELETE, FKCurrentObjectBehaviuor.PASSIVE));
return res;
}
@Override

View File

@@ -85,7 +85,7 @@ public class SapforConfigurationsForm extends RDataSetControlForm<SapforConfigur
new ColumnInfo<SapforConfiguration>("тестов") {
@Override
public Object getFieldAt(SapforConfiguration object) {
return ((ConfigurationCache) VisualCaches.GetCache(object)).getTestsCount();
return ((ConfigurationCache) VisualCaches.GetCache(object)).testsCount;
}
},
new ColumnInfo<SapforConfiguration>("эталон") {

View File

@@ -22,7 +22,4 @@ public class SapforConfigurationGroup extends iDBObject {
sapforconfiguration_id = src_.sapforconfiguration_id;
group_id = src_.group_id;
}
public boolean isEqual(SapforConfigurationGroup group_in) {
return sapforconfiguration_id == group_in.sapforconfiguration_id && group_id == group_in.group_id;
}
}

View File

@@ -4,5 +4,9 @@ public class SapforConfigurationGroupsDBTable extends iDBTable<SapforConfigurati
public SapforConfigurationGroupsDBTable() {
super(SapforConfigurationGroup.class);
}
@Override
public boolean isEqual(SapforConfigurationGroup o1, SapforConfigurationGroup o2) {
return o1.sapforconfiguration_id==o2.sapforconfiguration_id&&o1.group_id==o2.group_id;
}
}

View File

@@ -0,0 +1,14 @@
package _VisualDVM.TestingSystem.SAPFOR.SapforConfigurationSettings;
import Common.CommonConstants;
import Common.Database.Objects.iDBObject;
import _VisualDVM.TestingSystem.SAPFOR.SapforConfiguration.SapforConfiguration;
import _VisualDVM.TestingSystem.SAPFOR.SapforSettings.SapforSettings;
public class SapforConfigurationSettings extends iDBObject {
public int sapforconfiguration_id = CommonConstants.Nan;
public int sapforsettings_id = CommonConstants.Nan;
public SapforConfigurationSettings(){}
public SapforConfigurationSettings(SapforConfiguration sapforConfiguration, SapforSettings settings) {
sapforconfiguration_id = sapforConfiguration.id;
sapforsettings_id = settings.id;
}
}

View File

@@ -0,0 +1,11 @@
package _VisualDVM.TestingSystem.SAPFOR.SapforConfigurationSettings;
import Common.Database.Tables.iDBTable;
public class SapforConfigurationSettingsDBTable extends iDBTable<SapforConfigurationSettings> {
public SapforConfigurationSettingsDBTable() {
super(SapforConfigurationSettings.class);
}
@Override
public boolean isEqual(SapforConfigurationSettings o1, SapforConfigurationSettings o2) {
return o1.sapforconfiguration_id==o2.sapforconfiguration_id && o1.sapforsettings_id==o2.sapforsettings_id;
}
}

View File

@@ -0,0 +1,25 @@
package _VisualDVM.TestingSystem.SAPFOR.SapforConfigurationTest;
import Common.CommonConstants;
import Common.Database.Objects.DBObject;
import Common.Database.Objects.iDBObject;
import _VisualDVM.TestingSystem.Common.Test.Test;
import _VisualDVM.TestingSystem.DVM.DVMConfigurationTest.DVMConfigurationTest;
import _VisualDVM.TestingSystem.SAPFOR.SapforConfiguration.SapforConfiguration;
public class SapforConfigurationTest extends iDBObject {
public int sapforconfiguration_id = CommonConstants.Nan;
public int test_id = CommonConstants.Nan;
public SapforConfigurationTest(){
}
public SapforConfigurationTest(SapforConfiguration sapforConfiguration, Test test) {
sapforconfiguration_id = sapforConfiguration.id;
test_id = test.id;
}
@Override
public void SynchronizeFields(DBObject src) {
super.SynchronizeFields(src);
SapforConfigurationTest src_ = (SapforConfigurationTest) src;
sapforconfiguration_id = src_.sapforconfiguration_id;
test_id = src_.test_id;
}
}

View File

@@ -0,0 +1,11 @@
package _VisualDVM.TestingSystem.SAPFOR.SapforConfigurationTest;
import Common.Database.Tables.iDBTable;
public class SapforConfigurationTestsDBTable extends iDBTable<SapforConfigurationTest>{
public SapforConfigurationTestsDBTable() {
super(SapforConfigurationTest.class);
}
@Override
public boolean isEqual(SapforConfigurationTest o1, SapforConfigurationTest o2) {
return o1.sapforconfiguration_id==o2.sapforconfiguration_id && o1.test_id==o2.test_id;
}
}