прмежуточный. в процесе рефакторина лишних джсон. частично в разобранном виде поэтому не сливать!
This commit is contained in:
17
.idea/workspace.xml
generated
17
.idea/workspace.xml
generated
@@ -8,11 +8,19 @@
|
||||
<component name="ChangeListManager">
|
||||
<list default="true" id="e42177c3-2328-4b27-8a01-35779b2beb99" name="Default Changelist" comment="">
|
||||
<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/_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/TestCache.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/ServerObjectsCache/TestCache.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/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/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/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/SapforConfigurationGroup/SapforConfigurationGroup.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/SAPFOR/SapforConfigurationGroup/SapforConfigurationGroup.java" afterDir="false" />
|
||||
</list>
|
||||
<option name="SHOW_DIALOG" value="false" />
|
||||
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
||||
@@ -82,6 +90,7 @@
|
||||
<property name="JavaClassFindUsagesOptions.isDerivedClasses" value="true" />
|
||||
<property name="JavaClassFindUsagesOptions.isFieldsUsages" value="true" />
|
||||
<property name="JavaClassFindUsagesOptions.isMethodsUsages" value="true" />
|
||||
<property name="OverrideImplement.combined" value="false" />
|
||||
<property name="RunOnceActivity.OpenProjectViewOnStart" value="true" />
|
||||
<property name="RunOnceActivity.ShowReadmeOnStart" value="true" />
|
||||
<property name="SHARE_PROJECT_CONFIGURATION_FILES" value="true" />
|
||||
|
||||
@@ -11,6 +11,7 @@ import org.apache.commons.io.FileUtils;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.Locale;
|
||||
import java.util.Vector;
|
||||
//самый общий интерфейс базы данных, независимо от реализации.
|
||||
public abstract class Database {
|
||||
@@ -224,6 +225,20 @@ public abstract class Database {
|
||||
public <O extends DBObject, F extends iDBObject> LinkedHashMap<Integer, F> getMapByFKi(O owner, Class<F> fk_class) {
|
||||
return getMapByFK(owner, fk_class, java.lang.Integer.class);
|
||||
}
|
||||
public <O extends iDBObject, F extends iDBObject> Vector<Integer> getFKi(
|
||||
Integer owner_pk, Class<O> owner_class, Class<F> fk_class) {
|
||||
String fk_name = owner_class.getSimpleName().toLowerCase()+"_id";
|
||||
Vector<Integer> res = new Vector<>();
|
||||
try {
|
||||
for (Object o : tables.get(fk_class).Data.values()) {
|
||||
F f = (F) o;
|
||||
if (fk_class.getField(fk_name).get(f).equals(owner_pk)) res.add((Integer) f.getPK());
|
||||
}
|
||||
} catch (Exception e) {
|
||||
Utils_.MainLog.PrintException(e);
|
||||
}
|
||||
return res;
|
||||
}
|
||||
//-
|
||||
public <O extends DBObject, F extends DBObject> Vector<String> getVectorStringByFK(O owner, Class<F> fk_class) {
|
||||
Vector<String> res = new Vector<>();
|
||||
|
||||
@@ -49,7 +49,7 @@ public abstract class SaveCurrentConfiguration<C extends Configuration, S extend
|
||||
@Override
|
||||
protected void ServerAction() throws Exception {
|
||||
//занесение информации об участвующих группах конфигурациях и тестах
|
||||
target.saveGroupsAsJson(groups);
|
||||
target.saveGroups(groups);
|
||||
target.saveTestsAsJson(tests);
|
||||
target.saveSettingsAsJson(settings);
|
||||
//--
|
||||
|
||||
@@ -33,6 +33,7 @@ public abstract class ShowCurrentConfigurationTests<C extends Configuration> ext
|
||||
}
|
||||
@Override
|
||||
protected void showDone() throws Exception {
|
||||
/*
|
||||
ConfigurationCache cache = (ConfigurationCache) VisualCaches.GetCache(target);
|
||||
Vector<Group> groups = cache.getGroups();
|
||||
Vector<Test> tests = cache.getTests();
|
||||
@@ -49,6 +50,7 @@ public abstract class ShowCurrentConfigurationTests<C extends Configuration> ext
|
||||
if (!tests.isEmpty()) {
|
||||
Global.testingServer.db.tests.ShowUI(tests.lastElement().id);
|
||||
}
|
||||
*/
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -3,104 +3,35 @@ import Common.Utils.Utils_;
|
||||
import _VisualDVM.Global;
|
||||
import _VisualDVM.TestingSystem.Common.Configuration.Configuration;
|
||||
import _VisualDVM.TestingSystem.Common.Group.Group;
|
||||
import _VisualDVM.TestingSystem.Common.Group.Json.GroupJson;
|
||||
import _VisualDVM.TestingSystem.Common.Group.Json.GroupsJson;
|
||||
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 java.util.LinkedHashMap;
|
||||
import java.util.Vector;
|
||||
public class ConfigurationCache extends VisualCache {
|
||||
public GroupsJson groupsJson = null;
|
||||
public TestsJson testsJson = null;
|
||||
public int configuration_id;
|
||||
public Vector<String> groupsSummary = null;
|
||||
public int groupsOnly = 0;
|
||||
public SettingsArrayJson settingsJson = null;
|
||||
public String settingsSummary = null;
|
||||
public Vector<String> groupsSummary = null;
|
||||
//--
|
||||
public ConfigurationCache(Configuration configuration) {
|
||||
groupsSummary = new Vector<>();
|
||||
configuration_id = configuration.id;
|
||||
groupsOnly = configuration.groupsOnly;
|
||||
if (configuration.packedGroupsJson.isEmpty())
|
||||
groupsJson = new GroupsJson(); //просто пустой
|
||||
else
|
||||
groupsJson = Utils_.gson.fromJson(configuration.packedGroupsJson, GroupsJson.class);
|
||||
//--
|
||||
if (configuration.packedTestsJson.isEmpty())
|
||||
testsJson = new TestsJson(); //просто пустой
|
||||
else
|
||||
testsJson = Utils_.gson.fromJson(configuration.packedTestsJson, TestsJson.class);
|
||||
//-
|
||||
if (configuration.packedSettingsJson.isEmpty())
|
||||
settingsJson = new SettingsArrayJson(); //просто пустой
|
||||
else
|
||||
settingsJson = Utils_.gson.fromJson(configuration.packedSettingsJson, SettingsArrayJson.class);
|
||||
//-
|
||||
/*
|
||||
LinkedHashMap<String, Vector<String>> gmap = new LinkedHashMap<>();
|
||||
for (GroupJson groupJson : groupsJson.array) {
|
||||
Vector<String> vector = null;
|
||||
if (gmap.containsKey(groupJson.language)) {
|
||||
vector = gmap.get(groupJson.language);
|
||||
} else {
|
||||
vector = new Vector<>();
|
||||
gmap.put(groupJson.language, vector);
|
||||
}
|
||||
vector.add(groupJson.description);
|
||||
}
|
||||
groupsSummary = new Vector<>();
|
||||
for (String language : gmap.keySet()) {
|
||||
groupsSummary.add(language + ": " + String.join(";", gmap.get(language)));
|
||||
}
|
||||
*/
|
||||
Vector<String> settingsDescriptionsVector = new Vector<>();
|
||||
for (SettingsJson settingsJson : settingsJson.array)
|
||||
settingsDescriptionsVector.add(settingsJson.description);
|
||||
settingsSummary = String.join(";", settingsDescriptionsVector);
|
||||
}
|
||||
public int getTestsCount() {
|
||||
return getTests().size();
|
||||
// testsJson.array.size(); временно, до обновления БД.
|
||||
|
||||
}
|
||||
public Vector<Group> getGroups() {
|
||||
Vector<Group> groups = new Vector<>();
|
||||
for (GroupJson groupJson : groupsJson.array) {
|
||||
if (Global.testingServer.db.groups.containsKey(groupJson.id))
|
||||
groups.add(Global.testingServer.db.groups.get(groupJson.id));
|
||||
}
|
||||
return groups;
|
||||
}
|
||||
public Vector<Test> getTests() {
|
||||
Vector<Test> tests = new Vector<>();
|
||||
if (groupsOnly==0) {
|
||||
for (TestJson testJson : testsJson.array) {
|
||||
if (Global.testingServer.db.tests.containsKey(testJson.id))
|
||||
tests.add(Global.testingServer.db.tests.get(testJson.id));
|
||||
}
|
||||
}else {
|
||||
for (Group group: getGroups()){
|
||||
tests.addAll(Global.testingServer.db.getVectorByFK(group,Test.class));
|
||||
}
|
||||
}
|
||||
return tests;
|
||||
}
|
||||
public Vector<Test> getGroupTests(Group group) {
|
||||
Vector<Test> tests = new Vector<>();
|
||||
if (groupsOnly==0) {
|
||||
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)
|
||||
tests.add(test);
|
||||
}
|
||||
}
|
||||
}else {
|
||||
return Global.testingServer.db.getVectorByFK(group, Test.class);
|
||||
}
|
||||
return tests;
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,7 +7,6 @@ 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.Group.Json.GroupsJson;
|
||||
import _VisualDVM.TestingSystem.Common.Settings.Json.SettingsArrayJson;
|
||||
import _VisualDVM.TestingSystem.Common.Settings.Json.SettingsJson;
|
||||
import _VisualDVM.TestingSystem.Common.Settings.Settings;
|
||||
@@ -33,14 +32,12 @@ public class Configuration extends riDBObject {
|
||||
@Description("DEFAULT 1")
|
||||
public int kernels = 1; //ядра
|
||||
//--
|
||||
@Description("DEFAULT ''")
|
||||
public String packedGroupsJson = "";
|
||||
//@Description("DEFAULT ''")
|
||||
// public String packedGroupsJson = "";
|
||||
@Description("DEFAULT ''")
|
||||
public String packedTestsJson = "";
|
||||
@Description("DEFAULT ''")
|
||||
public String packedSettingsJson = "";
|
||||
@Description("DEFAULT -1")
|
||||
public int ethalon_id = CommonConstants.Nan; //пакет-эталон ( в двм тестировании не нужен.)
|
||||
@Description("DEFAULT 0")
|
||||
public int groupsOnly = 0;
|
||||
//если флаг выставлен, то при формировании пакета берутся все тесты из участвущих групп. тесты конфигурации игнорируются.
|
||||
@@ -51,9 +48,6 @@ public class Configuration extends riDBObject {
|
||||
public String printGroupsOnly() {
|
||||
return groupsOnly !=0 ? "Да" : "Нет";
|
||||
}
|
||||
public String printEthalon() {
|
||||
return (ethalon_id == CommonConstants.Nan) ? "—" : String.valueOf(ethalon_id);
|
||||
}
|
||||
public void SwitchAuto() {
|
||||
autoTesting = (autoTesting == 0) ? 1 : 0;
|
||||
}
|
||||
@@ -61,7 +55,7 @@ public class Configuration extends riDBObject {
|
||||
return Utils_.getIcon("/Common/icons/" + (autoTesting == 1 ? "RedPick" : "NotPick") + ".png");
|
||||
}
|
||||
//--
|
||||
public void saveGroupsAsJson(Vector<Group> groups) {
|
||||
public void saveGroups(Vector<Group> groups) {
|
||||
}
|
||||
public void saveTestsAsJson(Vector<Test> tests) {
|
||||
packedTestsJson = Utils_.gson.toJson(new TestsJson(tests));
|
||||
@@ -75,13 +69,10 @@ public class Configuration extends riDBObject {
|
||||
super.SynchronizeFields(src);
|
||||
Configuration c = (Configuration) src;
|
||||
//--
|
||||
ethalon_id = c.ethalon_id;
|
||||
maxtime = c.maxtime;
|
||||
autoTesting = c.autoTesting;
|
||||
kernels = c.kernels;
|
||||
groupsOnly = c.groupsOnly;
|
||||
//-
|
||||
// packedGroupsJson = c.packedGroupsJson;
|
||||
packedTestsJson = c.packedTestsJson;
|
||||
packedSettingsJson = c.packedSettingsJson;
|
||||
}
|
||||
@@ -94,33 +85,6 @@ public class Configuration extends riDBObject {
|
||||
return description;
|
||||
}
|
||||
//работает со стороны сервера.
|
||||
public boolean tryUpdateGroup(Group group) {
|
||||
ConfigurationCache unpacked = new ConfigurationCache(this);
|
||||
for (GroupJson groupJson : unpacked.groupsJson.array) {
|
||||
if (groupJson.id == group.id) {
|
||||
groupJson.description = group.description;
|
||||
groupJson.language = String.valueOf(group.language);
|
||||
// packedGroupsJson = Utils_.gson.toJson(unpacked.groupsJson);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
public boolean tryDeleteGroup(Group group) {
|
||||
boolean flag = false;
|
||||
ConfigurationCache unpacked = new ConfigurationCache(this);
|
||||
List<GroupJson> actualGroups = new Vector<>();
|
||||
for (GroupJson groupJson : unpacked.groupsJson.array) {
|
||||
if (groupJson.id == group.id)
|
||||
flag = true;
|
||||
else actualGroups.add(groupJson);
|
||||
}
|
||||
if (flag) {
|
||||
unpacked.groupsJson.array = actualGroups;
|
||||
// packedGroupsJson = Utils_.gson.toJson(unpacked.groupsJson);
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
public boolean tryUpdateSettings(Settings settings) {
|
||||
ConfigurationCache unpacked = new ConfigurationCache(this);
|
||||
for (SettingsJson settingsJson : unpacked.settingsJson.array) {
|
||||
@@ -147,34 +111,4 @@ public class Configuration extends riDBObject {
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
public boolean tryDeleteTest(Test test) {
|
||||
boolean flag = false;
|
||||
ConfigurationCache unpacked = new ConfigurationCache(this);
|
||||
List<TestJson> actualTests = new Vector<>();
|
||||
for (TestJson testJson : unpacked.testsJson.array) {
|
||||
if (testJson.id == test.id)
|
||||
flag = true;
|
||||
else actualTests.add(testJson);
|
||||
}
|
||||
if (flag) {
|
||||
unpacked.testsJson.array = actualTests;
|
||||
packedTestsJson = Utils_.gson.toJson(unpacked.testsJson);
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
public boolean tryDeleteTests(LinkedHashMap<Integer, Test> tests) {
|
||||
boolean flag = false;
|
||||
ConfigurationCache unpacked = new ConfigurationCache(this);
|
||||
List<TestJson> actualTests = new Vector<>();
|
||||
for (TestJson testJson : unpacked.testsJson.array) {
|
||||
if (tests.containsKey(testJson.id))
|
||||
flag = true;
|
||||
else actualTests.add(testJson);
|
||||
}
|
||||
if (flag) {
|
||||
unpacked.testsJson.array = actualTests;
|
||||
packedTestsJson = Utils_.gson.toJson(unpacked.testsJson);
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -154,20 +154,7 @@ public class TestingServer extends RepositoryServer<TestsDatabase> {
|
||||
}
|
||||
@Override
|
||||
protected void afterEditAction(DBObject object) throws Exception {
|
||||
if (object instanceof Group) {
|
||||
Group group = (Group) object;
|
||||
//-
|
||||
for (DVMConfiguration dvmConfiguration : db.dvmConfigurations.Data.values()) {
|
||||
if (dvmConfiguration.tryUpdateGroup(group)) {
|
||||
db.Update(dvmConfiguration);
|
||||
}
|
||||
}
|
||||
for (SapforConfiguration sapforConfiguration : db.sapforConfigurations.Data.values()) {
|
||||
if (sapforConfiguration.tryUpdateGroup(group)) {
|
||||
db.Update(sapforConfiguration);
|
||||
}
|
||||
}
|
||||
} else if (object instanceof DVMSettings) {
|
||||
if (object instanceof DVMSettings) {
|
||||
DVMSettings dvmSettings = (DVMSettings) object;
|
||||
//-
|
||||
for (DVMConfiguration dvmConfiguration : db.dvmConfigurations.Data.values()) {
|
||||
@@ -182,6 +169,12 @@ public class TestingServer extends RepositoryServer<TestsDatabase> {
|
||||
db.Update(sapforConfiguration);
|
||||
}
|
||||
}
|
||||
} else if (object instanceof DVMConfiguration){
|
||||
DVMConfiguration dvmConfiguration = (DVMConfiguration) object;
|
||||
db.RefreshDVMConfigurationGroups(dvmConfiguration);
|
||||
}else if (object instanceof SapforConfiguration){
|
||||
SapforConfiguration sapforConfiguration = (SapforConfiguration) object;
|
||||
db.RefreshSapforConfigurationGroups(sapforConfiguration);
|
||||
}
|
||||
}
|
||||
@Override
|
||||
@@ -190,34 +183,10 @@ public class TestingServer extends RepositoryServer<TestsDatabase> {
|
||||
Test test = (Test) object;
|
||||
Utils_.forceDeleteWithCheck(test.getServerPath());
|
||||
//--
|
||||
for (DVMConfiguration dvmConfiguration : db.dvmConfigurations.Data.values()) {
|
||||
if (dvmConfiguration.tryDeleteTest(test)) {
|
||||
db.Update(dvmConfiguration);
|
||||
}
|
||||
}
|
||||
for (SapforConfiguration sapforConfiguration : db.sapforConfigurations.Data.values()) {
|
||||
if (sapforConfiguration.tryDeleteTest(test)) {
|
||||
db.Update(sapforConfiguration);
|
||||
}
|
||||
}
|
||||
//-
|
||||
} else if (object instanceof Group) {
|
||||
Group group = (Group) object;
|
||||
LinkedHashMap<Integer, Test> groupTests = db.getMapByFKi(group, Test.class);
|
||||
//--
|
||||
for (DVMConfiguration dvmConfiguration : db.dvmConfigurations.Data.values()) {
|
||||
if (dvmConfiguration.tryDeleteGroup(group)) {
|
||||
dvmConfiguration.tryDeleteTests(groupTests);
|
||||
db.Update(dvmConfiguration);
|
||||
}
|
||||
}
|
||||
for (SapforConfiguration sapforConfiguration : db.sapforConfigurations.Data.values()) {
|
||||
if (sapforConfiguration.tryDeleteGroup(group)) {
|
||||
sapforConfiguration.tryDeleteTests(groupTests);
|
||||
db.Update(sapforConfiguration);
|
||||
}
|
||||
}
|
||||
//--
|
||||
for (Test group_test : groupTests.values()) {
|
||||
Utils_.forceDeleteWithCheck(group_test.getServerPath());
|
||||
db.DeleteDependencies(group_test);
|
||||
|
||||
@@ -10,8 +10,10 @@ import _VisualDVM.Passes.PassCode;
|
||||
import _VisualDVM.ServerObjectsCache.VisualCaches;
|
||||
import _VisualDVM.TestingSystem.Common.Group.Group;
|
||||
import _VisualDVM.TestingSystem.Common.Group.GroupsDBTable;
|
||||
import _VisualDVM.TestingSystem.Common.Group.Json.GroupJson;
|
||||
import _VisualDVM.TestingSystem.Common.Group.Json.GroupsJson;
|
||||
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;
|
||||
@@ -25,10 +27,10 @@ import _VisualDVM.TestingSystem.DVM.DVMPackage.DVMPackage;
|
||||
import _VisualDVM.TestingSystem.DVM.DVMPackage.DVMPackageDBTable;
|
||||
import _VisualDVM.TestingSystem.DVM.DVMSettings.DVMSettingsDBTable;
|
||||
import _VisualDVM.TestingSystem.DVM.DVMTasks.DVMRunTasksSet;
|
||||
import _VisualDVM.TestingSystem.SAPFOR.SapforConfigurationGroup.SapforConfigurationGroup;
|
||||
import _VisualDVM.TestingSystem.SAPFOR.SapforConfigurationGroup.SapforConfigurationGroupsDBTable;
|
||||
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.SapforPackage.SapforPackage;
|
||||
import _VisualDVM.TestingSystem.SAPFOR.SapforPackage.SapforPackageDBTable;
|
||||
import _VisualDVM.TestingSystem.SAPFOR.SapforSettings.SapforSettingsDBTable;
|
||||
@@ -405,4 +407,107 @@ public class TestsDatabase extends SQLiteDatabase {
|
||||
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()){
|
||||
if (dvmConfigurationGroup.dvmconfiguration_id==configuration.id)
|
||||
res.add(dvmConfigurationGroup.group_id);
|
||||
}
|
||||
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);
|
||||
}
|
||||
return res;
|
||||
|
||||
}
|
||||
public LinkedHashMap<Integer, Vector<Integer>> getDVMConfigurationGroupsTestsIds(DVMConfiguration configuration) {
|
||||
LinkedHashMap<Integer,Vector<Integer>> res =new LinkedHashMap<>();
|
||||
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);
|
||||
}
|
||||
}
|
||||
//--
|
||||
res.put(group_id, test_ids);
|
||||
} else {
|
||||
res.put(group_id, getFKi(group_id, Group.class, Test.class));
|
||||
}
|
||||
}
|
||||
return res;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -4,6 +4,7 @@ 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.DVM.DVMConfigurationGroup.DVMConfigurationGroup;
|
||||
import com.sun.org.glassfish.gmbal.Description;
|
||||
|
||||
import java.util.Vector;
|
||||
@@ -15,15 +16,19 @@ public class DVMConfiguration extends Configuration {
|
||||
}
|
||||
public DVMConfiguration() {
|
||||
}
|
||||
//--
|
||||
@Description("IGNORE")
|
||||
public Vector<DVMConfigurationGroup> configurationGroups = null;
|
||||
//--
|
||||
@Override
|
||||
public void SynchronizeFields(DBObject src) {
|
||||
super.SynchronizeFields(src);
|
||||
DVMConfiguration c = (DVMConfiguration) src;
|
||||
c_maxtime = c.c_maxtime;
|
||||
packedGroupsJson = c.packedGroupsJson;
|
||||
}
|
||||
@Override
|
||||
public void saveGroupsAsJson(Vector<Group> groups) {
|
||||
packedGroupsJson = Utils_.gson.toJson(new GroupsJson(groups));
|
||||
public void saveGroups(Vector<Group> groups) {
|
||||
configurationGroups = new Vector<>();
|
||||
for (Group group: groups)
|
||||
configurationGroups.add(new DVMConfigurationGroup(this, group));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,6 +2,8 @@ package _VisualDVM.TestingSystem.DVM.DVMConfigurationGroup;
|
||||
import Common.CommonConstants;
|
||||
import Common.Database.Objects.DBObject;
|
||||
import Common.Database.Objects.iDBObject;
|
||||
import _VisualDVM.TestingSystem.Common.Group.Group;
|
||||
import _VisualDVM.TestingSystem.DVM.DVMConfiguration.DVMConfiguration;
|
||||
public class DVMConfigurationGroup extends iDBObject {
|
||||
public int dvmconfiguration_id = CommonConstants.Nan;
|
||||
public int group_id = CommonConstants.Nan;
|
||||
@@ -12,4 +14,13 @@ public class DVMConfigurationGroup extends iDBObject {
|
||||
dvmconfiguration_id = src_.dvmconfiguration_id;
|
||||
group_id = src_.group_id;
|
||||
}
|
||||
public DVMConfigurationGroup() {
|
||||
}
|
||||
public DVMConfigurationGroup(DVMConfiguration configuration, Group group) {
|
||||
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;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -81,18 +81,24 @@ public class DVMPackage extends TestingPackage<DVMPackage_json> {
|
||||
//-
|
||||
tasksCount = 0;
|
||||
Index index = new Index();
|
||||
//---
|
||||
Vector<DVMCompilationTask> compilationTasks = new Vector<DVMCompilationTask>();
|
||||
for (DVMConfiguration configuration : configurations) {
|
||||
DVMConfigurationCache cache = (DVMConfigurationCache) VisualCaches.GetCache(configuration);
|
||||
for (Group group : cache.getGroups()) {
|
||||
for (Test test : cache.getGroupTests(group)) {
|
||||
//--
|
||||
LinkedHashMap<Integer,Vector<Integer>> groupsTestsIds= Global.testingServer.db.getDVMConfigurationGroupsTestsIds(configuration);
|
||||
Vector<Integer> settingsIds = Global.testingServer.db.getDVMConfigurationSettingsIds(configuration);
|
||||
for (int group_id : groupsTestsIds.keySet()) {
|
||||
Group group = Global.testingServer.db.groups.get(group_id);
|
||||
for (int test_id : groupsTestsIds.get(group_id)) {
|
||||
Test test = Global.testingServer.db.tests.get(test_id);
|
||||
//--
|
||||
DVMCompilationTask compilationTask = null;
|
||||
DVMRunTask runTask = null;
|
||||
Vector<DVMRunTask> testRunTasks = new Vector<>(); //для выставления эталона
|
||||
DVMRunTask ethalon = null; //эталон. последовательная задача -s без окружения и матрицы.
|
||||
//--
|
||||
for (DVMSettings dvmSettings : cache.getSettings()) {
|
||||
for (int settings_id : settingsIds) {
|
||||
DVMSettings dvmSettings=Global.testingServer.db.dvmSettings.get(settings_id);
|
||||
//---
|
||||
DVMSettingsCache settingsCache = (DVMSettingsCache) VisualCaches.GetCache(dvmSettings);
|
||||
Vector<Pair<String, String>> params = settingsCache.getTasksParameters();
|
||||
|
||||
@@ -42,10 +42,12 @@ public class SapforPackage_json implements Serializable {
|
||||
public SapforPackage_json() {
|
||||
}
|
||||
public SapforPackage_json(ServerSapfor serverSapfor, Vector<SapforConfiguration> configurations, int kernels_in) {
|
||||
/*
|
||||
sapfor_drv = serverSapfor.call_command;
|
||||
kernels = kernels_in;
|
||||
for (SapforConfiguration sapforConfiguration : configurations) {
|
||||
SapforTestingSet_json testingSet = new SapforTestingSet_json(((SapforConfigurationCache) VisualCaches.GetCache(sapforConfiguration)).getTests(), sapforConfiguration);
|
||||
SapforTestingSet_json testingSet =
|
||||
new SapforTestingSet_json(((SapforConfigurationCache) VisualCaches.GetCache(sapforConfiguration)).getTests(), sapforConfiguration);
|
||||
testingSet.id = getMaxSetId();
|
||||
testingSets.add(testingSet);
|
||||
// формирование задач
|
||||
@@ -62,6 +64,7 @@ public class SapforPackage_json implements Serializable {
|
||||
}
|
||||
tasks.addAll(sortedTasks.values());
|
||||
}
|
||||
*/
|
||||
}
|
||||
public int getMaxSetId() {
|
||||
return max_set_id++;
|
||||
|
||||
@@ -1,30 +1,38 @@
|
||||
package _VisualDVM.TestingSystem.SAPFOR.SapforConfiguration;
|
||||
import Common.CommonConstants;
|
||||
import Common.Database.Objects.DBObject;
|
||||
import Common.Utils.TextLog;
|
||||
import Common.Utils.Utils_;
|
||||
import _VisualDVM.ProjectData.LanguageName;
|
||||
import _VisualDVM.ServerObjectsCache.SapforConfigurationCache;
|
||||
import _VisualDVM.ServerObjectsCache.VisualCaches;
|
||||
import _VisualDVM.TestingSystem.Common.Configuration.Configuration;
|
||||
import _VisualDVM.TestingSystem.Common.Group.Group;
|
||||
import _VisualDVM.TestingSystem.Common.Group.Json.GroupsJson;
|
||||
import _VisualDVM.TestingSystem.Common.Test.Test;
|
||||
import _VisualDVM.TestingSystem.DVM.DVMConfiguration.DVMConfiguration;
|
||||
import _VisualDVM.TestingSystem.DVM.DVMConfigurationGroup.DVMConfigurationGroup;
|
||||
import _VisualDVM.TestingSystem.SAPFOR.SapforConfigurationGroup.SapforConfigurationGroup;
|
||||
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 {
|
||||
@Override
|
||||
public void saveGroupsAsJson(Vector<Group> groups) {
|
||||
packedGroupsJson = Utils_.gson.toJson(new GroupsJson(groups));
|
||||
@Description("DEFAULT -1")
|
||||
public int ethalon_id = CommonConstants.Nan; //пакет-эталон ( в двм тестировании не нужен.)
|
||||
@Description("IGNORE")
|
||||
public Vector<SapforConfigurationGroup> configurationGroups = 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));
|
||||
}
|
||||
@Override
|
||||
public void SynchronizeFields(DBObject src) {
|
||||
super.SynchronizeFields(src);
|
||||
SapforConfiguration c = (SapforConfiguration) src;
|
||||
packedGroupsJson = c.packedGroupsJson;
|
||||
ethalon_id = c.ethalon_id;
|
||||
}
|
||||
public SapforConfiguration(SapforConfiguration sapforConfiguration) {
|
||||
this.SynchronizeFields(sapforConfiguration);
|
||||
@@ -33,11 +41,14 @@ public class SapforConfiguration extends Configuration {
|
||||
}
|
||||
@Override
|
||||
public boolean validate(TextLog Log) {
|
||||
/*
|
||||
SapforConfigurationCache cache = (SapforConfigurationCache) VisualCaches.GetCache(this);
|
||||
//--
|
||||
|
||||
Vector<Group> groups = cache.getGroups();
|
||||
Vector<SapforSettings> settingsArray = cache.getSettings();
|
||||
Vector<Test> tests = cache.getTests();
|
||||
|
||||
//--
|
||||
Vector<LanguageName> groupsLanguages = new Vector<>();
|
||||
for (Group group : groups) {
|
||||
@@ -67,6 +78,7 @@ public class SapforConfiguration extends Configuration {
|
||||
}
|
||||
}
|
||||
//-
|
||||
*/
|
||||
return Log.isEmpty();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,9 +2,19 @@ package _VisualDVM.TestingSystem.SAPFOR.SapforConfigurationGroup;
|
||||
import Common.CommonConstants;
|
||||
import Common.Database.Objects.DBObject;
|
||||
import Common.Database.Objects.iDBObject;
|
||||
import _VisualDVM.TestingSystem.Common.Group.Group;
|
||||
import _VisualDVM.TestingSystem.DVM.DVMConfigurationGroup.DVMConfigurationGroup;
|
||||
import _VisualDVM.TestingSystem.SAPFOR.SapforConfiguration.SapforConfiguration;
|
||||
public class SapforConfigurationGroup extends iDBObject {
|
||||
public int sapforconfiguration_id = CommonConstants.Nan;
|
||||
public int group_id = CommonConstants.Nan;
|
||||
public SapforConfigurationGroup(SapforConfiguration configuration, Group group) {
|
||||
sapforconfiguration_id = configuration.id;
|
||||
group_id = group.id;
|
||||
}
|
||||
public SapforConfigurationGroup(){
|
||||
|
||||
}
|
||||
@Override
|
||||
public void SynchronizeFields(DBObject src) {
|
||||
super.SynchronizeFields(src);
|
||||
@@ -12,4 +22,7 @@ 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;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user