Исправление клонирования пакетов ДВМ
This commit is contained in:
15
.idea/workspace.xml
generated
15
.idea/workspace.xml
generated
@@ -9,14 +9,17 @@
|
|||||||
<list default="true" id="e42177c3-2328-4b27-8a01-35779b2beb99" name="Default Changelist" comment="">
|
<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$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/properties" beforeDir="false" afterPath="$PROJECT_DIR$/properties" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/properties" beforeDir="false" afterPath="$PROJECT_DIR$/properties" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/src/Common/Database/DataSet.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Common/Database/DataSet.java" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/src/Repository/Component/Visualiser.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Repository/Component/Visualiser.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/Repository/Server/ServerCode.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Repository/Server/ServerCode.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/Repository/Server/ServerCode.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Repository/Server/ServerCode.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/Common/TasksPackageState.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/Common/TasksPackageState.java" afterDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/Common/TestingPlanner.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/Common/TestingPlanner.java" afterDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/Common/TestingServer.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/Common/TestingServer.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/TestingSystem/Common/TestingServer.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/Common/TestingServer.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/Common/TestsDatabase.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/Common/TestsDatabase.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/TestingSystem/DVM/DVMPackage/DVMPackagesBar.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/DVM/DVMPackage/DVMPackagesBar.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/DVM/DVMTestingPlanner.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/DVM/DVMTestingPlanner.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/TestingSystem/DVM/DVMPackage/UI/AddDVMPackageMenu.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/DVM/DVMPackage/UI/AddDVMPackageMenu.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforTestingPlanner.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforTestingPlanner.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforTasksPackage/UI/AddSapforPackageMenu.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforTasksPackage/UI/AddSapforPackageMenu.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/UI/Main/MainForm.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/UI/Main/MainForm.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforTasksPackage/UI/SapforPackagesBar.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforTasksPackage/UI/SapforPackagesBar.java" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/AddSapforPackage.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/AddSapforPackage.java" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/CloneDVMPackage.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/CloneDVMPackage.java" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/CloneSapforPackage.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/CloneSapforPackage.java" afterDir="false" />
|
||||||
</list>
|
</list>
|
||||||
<option name="SHOW_DIALOG" value="false" />
|
<option name="SHOW_DIALOG" value="false" />
|
||||||
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
"ServerUserName": "testuser",
|
"ServerUserName": "testuser",
|
||||||
"ServerUserSHHPort": 23,
|
"ServerUserSHHPort": 23,
|
||||||
"ComponentsServerPort": 7995,
|
"ComponentsServerPort": 7995,
|
||||||
"TestingServerPort": 7996,
|
"TestingServerPort": 7998,
|
||||||
"SocketTimeout": 5000,
|
"SocketTimeout": 5000,
|
||||||
"OldServer": false,
|
"OldServer": false,
|
||||||
"SMTPHost": "smtp.mail.ru",
|
"SMTPHost": "smtp.mail.ru",
|
||||||
@@ -30,12 +30,12 @@
|
|||||||
"InstructionPath": "",
|
"InstructionPath": "",
|
||||||
"PerformanceAnalyzerPath": "",
|
"PerformanceAnalyzerPath": "",
|
||||||
"ComponentsBackUpsCount": 10,
|
"ComponentsBackUpsCount": 10,
|
||||||
"TestingKernels": 28,
|
"TestingKernels": 16,
|
||||||
"AutoCheckTesting": true,
|
"AutoCheckTesting": true,
|
||||||
"CheckTestingIntervalSeconds": 10,
|
"CheckTestingIntervalSeconds": 10,
|
||||||
"EmailOnTestingProgress": false,
|
"EmailOnTestingProgress": false,
|
||||||
"collapseCredentials": false,
|
"collapseCredentials": false,
|
||||||
"collapseFileGraphs": false,
|
"collapseFileGraphs": true,
|
||||||
"collapseFileMessages": false,
|
"collapseFileMessages": true,
|
||||||
"collapseProjectTrees": false
|
"collapseProjectTrees": false
|
||||||
}
|
}
|
||||||
@@ -280,4 +280,18 @@ public class DataSet<K, D extends DBObject> extends DataSetAnchestor {
|
|||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
//--
|
||||||
|
public Vector<D> getCheckedOrCurrent() {
|
||||||
|
Vector<D> res = new Vector<>();
|
||||||
|
if (getCheckedCount() > 0)
|
||||||
|
res = getCheckedItems();
|
||||||
|
else {
|
||||||
|
if (!CurrentName().equals(Current.Undefined)) {
|
||||||
|
if (getCurrent() != null) {
|
||||||
|
res.add(getCurrent());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return res;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -62,7 +62,7 @@ public class Visualiser extends Component {
|
|||||||
//http://www.seostella.com/ru/article/2012/02/05/formatirovanie-daty-v-java.html
|
//http://www.seostella.com/ru/article/2012/02/05/formatirovanie-daty-v-java.html
|
||||||
@Override
|
@Override
|
||||||
public void GetVersionInfo() {
|
public void GetVersionInfo() {
|
||||||
version = 1082;
|
version = 1083;
|
||||||
String pattern = "MMM dd yyyy HH:mm:ss";
|
String pattern = "MMM dd yyyy HH:mm:ss";
|
||||||
DateFormat df = new SimpleDateFormat(pattern, Locale.ENGLISH);
|
DateFormat df = new SimpleDateFormat(pattern, Locale.ENGLISH);
|
||||||
date_text = df.format(getClassBuildTime());
|
date_text = df.format(getClassBuildTime());
|
||||||
|
|||||||
@@ -79,7 +79,7 @@ public enum ServerCode {
|
|||||||
InstallServerSapfor,
|
InstallServerSapfor,
|
||||||
ReplaceTestCode,
|
ReplaceTestCode,
|
||||||
ReplaceTestsCodes,
|
ReplaceTestsCodes,
|
||||||
|
GetDVMPackagesJson,
|
||||||
GetSapforPackagesJson,
|
GetSapforPackagesJson,
|
||||||
GetFirstsActiveDVMPackages
|
GetFirstsActiveDVMPackages;
|
||||||
;
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -16,6 +16,7 @@ import TestingSystem.Common.Test.Test;
|
|||||||
import TestingSystem.Common.Test.TestType;
|
import TestingSystem.Common.Test.TestType;
|
||||||
import TestingSystem.Common.TestingPackageToKill.TestingPackageToKill;
|
import TestingSystem.Common.TestingPackageToKill.TestingPackageToKill;
|
||||||
import TestingSystem.DVM.DVMPackage.DVMPackage;
|
import TestingSystem.DVM.DVMPackage.DVMPackage;
|
||||||
|
import TestingSystem.DVM.DVMPackage.DVMPackage_json;
|
||||||
import TestingSystem.DVM.DVMTestingPlanner;
|
import TestingSystem.DVM.DVMTestingPlanner;
|
||||||
import TestingSystem.SAPFOR.Json.SapforPackage_json;
|
import TestingSystem.SAPFOR.Json.SapforPackage_json;
|
||||||
import TestingSystem.SAPFOR.SapforConfiguration.SapforConfiguration;
|
import TestingSystem.SAPFOR.SapforConfiguration.SapforConfiguration;
|
||||||
@@ -250,6 +251,10 @@ public class TestingServer extends RepositoryServer<TestsDatabase> {
|
|||||||
Print("Получить информацию о задачах пакетов SAPFOR");
|
Print("Получить информацию о задачах пакетов SAPFOR");
|
||||||
GetSapforPackagesJson();
|
GetSapforPackagesJson();
|
||||||
break;
|
break;
|
||||||
|
case GetDVMPackagesJson:
|
||||||
|
Print("Получить информацию о задачах пакетов DVM");
|
||||||
|
GetDVMPackagesJson();
|
||||||
|
break;
|
||||||
case GetFirstsActiveDVMPackages:
|
case GetFirstsActiveDVMPackages:
|
||||||
Print("Получить первые активные пакеты задач DVM на машинах");
|
Print("Получить первые активные пакеты задач DVM на машинах");
|
||||||
GetFirstActiveDVMPackagesByMachines();
|
GetFirstActiveDVMPackagesByMachines();
|
||||||
@@ -258,6 +263,7 @@ public class TestingServer extends RepositoryServer<TestsDatabase> {
|
|||||||
throw new RepositoryRefuseException("Неподдерживаемый код: " + code);
|
throw new RepositoryRefuseException("Неподдерживаемый код: " + code);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//->>
|
//->>
|
||||||
Pair<Group, Vector<File>> ConvertDirectoryToGroup(File src, LanguageName languageName, TestType
|
Pair<Group, Vector<File>> ConvertDirectoryToGroup(File src, LanguageName languageName, TestType
|
||||||
testType, Account account) throws Exception {
|
testType, Account account) throws Exception {
|
||||||
@@ -617,6 +623,21 @@ public class TestingServer extends RepositoryServer<TestsDatabase> {
|
|||||||
//-
|
//-
|
||||||
Email(message, out, err);
|
Email(message, out, err);
|
||||||
}
|
}
|
||||||
|
private void GetDVMPackagesJson() throws Exception{
|
||||||
|
Vector<Integer> packages_ids = (Vector<Integer>) request.object;
|
||||||
|
Vector<DVMPackage_json> jsons = new Vector<>();
|
||||||
|
for (int package_id : packages_ids) {
|
||||||
|
if (!db.dvmPackages.containsKey(package_id))
|
||||||
|
throw new RepositoryRefuseException("Пакета задач DVM " + Utils.Brackets(package_id) + " не существует.");
|
||||||
|
DVMPackage dvmPackage = db.dvmPackages.get(package_id);
|
||||||
|
File json = dvmPackage.getJsonFile();
|
||||||
|
if (!json.exists())
|
||||||
|
throw new RepositoryRefuseException("Не найден JSON файл для пакета задач DVM " + Utils.Brackets(package_id));
|
||||||
|
jsons.add((DVMPackage_json) Utils.jsonFromFile(json, DVMPackage_json.class));
|
||||||
|
}
|
||||||
|
response = new ServerExchangeUnit_2021(ServerCode.OK);
|
||||||
|
response.object = jsons;
|
||||||
|
}
|
||||||
private void GetSapforPackagesJson() throws Exception {
|
private void GetSapforPackagesJson() throws Exception {
|
||||||
Vector<Integer> packages_ids = (Vector<Integer>) request.object;
|
Vector<Integer> packages_ids = (Vector<Integer>) request.object;
|
||||||
Vector<SapforPackage_json> jsons = new Vector<>();
|
Vector<SapforPackage_json> jsons = new Vector<>();
|
||||||
|
|||||||
@@ -3,11 +3,6 @@ import Common.Global;
|
|||||||
import Common.UI.Menus_2023.DataMenuBar;
|
import Common.UI.Menus_2023.DataMenuBar;
|
||||||
import Common.UI.Menus_2023.MenuBarButton;
|
import Common.UI.Menus_2023.MenuBarButton;
|
||||||
import Common.Utils.Utils;
|
import Common.Utils.Utils;
|
||||||
import TestingSystem.Common.Group.UI.AddGroupMenu;
|
|
||||||
import TestingSystem.Common.Group.UI.EditGroupMenu;
|
|
||||||
import TestingSystem.DVM.DVMPackage.UI.AddDVMPackageMenu;
|
|
||||||
import TestingSystem.DVM.DVMPackage.UI.EditDVMPackageMenu;
|
|
||||||
import TestingSystem.SAPFOR.SapforPackage.SapforPackageDBTable;
|
|
||||||
import Visual_DVM_2021.Passes.PassCode_2021;
|
import Visual_DVM_2021.Passes.PassCode_2021;
|
||||||
|
|
||||||
import javax.swing.*;
|
import javax.swing.*;
|
||||||
@@ -16,8 +11,12 @@ public class DVMPackagesBar extends DataMenuBar {
|
|||||||
super("пакеты задач DVM");
|
super("пакеты задач DVM");
|
||||||
addPasses(PassCode_2021.SynchronizeTests);
|
addPasses(PassCode_2021.SynchronizeTests);
|
||||||
addSeparator();
|
addSeparator();
|
||||||
addMenus(new AddDVMPackageMenu());
|
//addMenus(new AddDVMPackageMenu());
|
||||||
addPasses(PassCode_2021.AddTasksToDVMPackage,PassCode_2021.DeleteDVMPackage);
|
addPasses(PassCode_2021.AddDVMPackage, PassCode_2021.AddTasksToDVMPackage);
|
||||||
|
addSeparator();
|
||||||
|
addPasses(PassCode_2021.CloneDVMPackage);
|
||||||
|
addSeparator();
|
||||||
|
addPasses(PassCode_2021.DeleteDVMPackage);
|
||||||
addSeparator();
|
addSeparator();
|
||||||
addPasses(PassCode_2021.StartDVMPackage,
|
addPasses(PassCode_2021.StartDVMPackage,
|
||||||
PassCode_2021.AbortDVMPackage);
|
PassCode_2021.AbortDVMPackage);
|
||||||
@@ -31,13 +30,13 @@ public class DVMPackagesBar extends DataMenuBar {
|
|||||||
setToolTipText("Отображать только пакеты тестов авторства пользователя");
|
setToolTipText("Отображать только пакеты тестов авторства пользователя");
|
||||||
Mark();
|
Mark();
|
||||||
addActionListener(e -> {
|
addActionListener(e -> {
|
||||||
DVMPackageDBTable.filterMyOnly = ! DVMPackageDBTable.filterMyOnly;
|
DVMPackageDBTable.filterMyOnly = !DVMPackageDBTable.filterMyOnly;
|
||||||
Mark();
|
Mark();
|
||||||
Global.testingServer.db.dvmPackages.ShowUI();
|
Global.testingServer.db.dvmPackages.ShowUI();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
public void Mark() {
|
public void Mark() {
|
||||||
setIcon(Utils.getIcon( DVMPackageDBTable.filterMyOnly ? "/icons/Pick.png" : "/icons/NotPick.png"));
|
setIcon(Utils.getIcon(DVMPackageDBTable.filterMyOnly ? "/icons/Pick.png" : "/icons/NotPick.png"));
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,7 +5,9 @@ import Visual_DVM_2021.Passes.Pass_2021;
|
|||||||
public class AddDVMPackageMenu extends VisualiserMenu {
|
public class AddDVMPackageMenu extends VisualiserMenu {
|
||||||
public AddDVMPackageMenu() {
|
public AddDVMPackageMenu() {
|
||||||
super("", "/icons/RedAdd.png");
|
super("", "/icons/RedAdd.png");
|
||||||
|
/*
|
||||||
addPasses(PassCode_2021.AddDVMPackage,
|
addPasses(PassCode_2021.AddDVMPackage,
|
||||||
PassCode_2021.CloneDVMPackage);
|
PassCode_2021.CloneDVMPackage);
|
||||||
|
*/
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,6 +4,6 @@ import Visual_DVM_2021.Passes.PassCode_2021;
|
|||||||
public class AddSapforPackageMenu extends VisualiserMenu {
|
public class AddSapforPackageMenu extends VisualiserMenu {
|
||||||
public AddSapforPackageMenu() {
|
public AddSapforPackageMenu() {
|
||||||
super("", "/icons/RedAdd.png");
|
super("", "/icons/RedAdd.png");
|
||||||
addPasses(PassCode_2021.AddSapforPackage,PassCode_2021.CloneSapforPackage);
|
// addPasses(PassCode_2021.AddSapforPackage,PassCode_2021.CloneSapforPackage);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -12,8 +12,11 @@ public class SapforPackagesBar extends DataMenuBar {
|
|||||||
super("пакеты задач SAPFOR");
|
super("пакеты задач SAPFOR");
|
||||||
addPasses(PassCode_2021.SynchronizeTests);
|
addPasses(PassCode_2021.SynchronizeTests);
|
||||||
addSeparator();
|
addSeparator();
|
||||||
addMenus(new AddSapforPackageMenu());
|
// addMenus(new AddSapforPackageMenu());
|
||||||
addPasses(PassCode_2021.AddTasksToSapforPackage, PassCode_2021.DeleteSapforPackage);
|
addPasses(PassCode_2021.AddSapforPackage, PassCode_2021.AddTasksToSapforPackage);
|
||||||
|
addSeparator();
|
||||||
|
addPasses(PassCode_2021.CloneSapforPackage);
|
||||||
|
addPasses(PassCode_2021.DeleteSapforPackage);
|
||||||
addSeparator();
|
addSeparator();
|
||||||
addPasses(
|
addPasses(
|
||||||
PassCode_2021.StartSapforPackage,
|
PassCode_2021.StartSapforPackage,
|
||||||
|
|||||||
@@ -10,6 +10,10 @@ import Visual_DVM_2021.Passes.AddObjectPass;
|
|||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
public class AddSapforPackage extends AddObjectPass<SapforPackage> {
|
public class AddSapforPackage extends AddObjectPass<SapforPackage> {
|
||||||
|
@Override
|
||||||
|
public String getIconPath() {
|
||||||
|
return "/icons/CreateProject.png";
|
||||||
|
}
|
||||||
protected File sapfor = null;
|
protected File sapfor = null;
|
||||||
//---
|
//---
|
||||||
//временный вариант. в дальнейшем, следует сделать возможность формирования.(?)
|
//временный вариант. в дальнейшем, следует сделать возможность формирования.(?)
|
||||||
|
|||||||
@@ -9,6 +9,8 @@ import GlobalData.Compiler.CompilerType;
|
|||||||
import GlobalData.Machine.MachineType;
|
import GlobalData.Machine.MachineType;
|
||||||
import GlobalData.Tasks.TaskState;
|
import GlobalData.Tasks.TaskState;
|
||||||
import GlobalData.User.UserState;
|
import GlobalData.User.UserState;
|
||||||
|
import Repository.Server.ServerCode;
|
||||||
|
import Repository.Server.ServerExchangeUnit_2021;
|
||||||
import TestingSystem.Common.Group.Group;
|
import TestingSystem.Common.Group.Group;
|
||||||
import TestingSystem.Common.TasksPackageState;
|
import TestingSystem.Common.TasksPackageState;
|
||||||
import TestingSystem.Common.Test.Test;
|
import TestingSystem.Common.Test.Test;
|
||||||
@@ -19,10 +21,17 @@ import TestingSystem.DVM.DVMTasks.DVMCompilationTask;
|
|||||||
import TestingSystem.DVM.DVMTasks.DVMRunTask;
|
import TestingSystem.DVM.DVMTasks.DVMRunTask;
|
||||||
import Visual_DVM_2021.Passes.AddObjectPass;
|
import Visual_DVM_2021.Passes.AddObjectPass;
|
||||||
import Visual_DVM_2021.Passes.PassCode_2021;
|
import Visual_DVM_2021.Passes.PassCode_2021;
|
||||||
|
import Visual_DVM_2021.Passes.Server.TestingSystemPass;
|
||||||
|
|
||||||
import java.util.Vector;
|
import java.util.Vector;
|
||||||
public class CloneDVMPackage extends AddObjectPass<DVMPackage> {
|
public class CloneDVMPackage extends AddObjectPass<DVMPackage> {
|
||||||
DVMPackage src;
|
Vector<DVMPackage> srcPackages;
|
||||||
|
Vector<String> inexistingTests;
|
||||||
|
Vector<String> inexistingConfigurations;
|
||||||
|
//-
|
||||||
|
Vector<Integer> src_ids;
|
||||||
|
Vector<DVMPackage_json> src_jsons;
|
||||||
|
//-
|
||||||
public CloneDVMPackage() {
|
public CloneDVMPackage() {
|
||||||
super(DVMPackage.class);
|
super(DVMPackage.class);
|
||||||
}
|
}
|
||||||
@@ -34,45 +43,7 @@ public class CloneDVMPackage extends AddObjectPass<DVMPackage> {
|
|||||||
protected Database getDb() {
|
protected Database getDb() {
|
||||||
return Global.testingServer.db;
|
return Global.testingServer.db;
|
||||||
}
|
}
|
||||||
@Override
|
protected void createTarget() {
|
||||||
protected boolean canStart(Object... args) throws Exception {
|
|
||||||
src = null;
|
|
||||||
if (!Current.getAccount().CheckRegistered(Log)) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
if (Current.Check(Log, Current.Machine, Current.User, Current.Compiler, Current.DVMPackage)) {
|
|
||||||
if (!Current.getMachine().type.equals(MachineType.Server)) {
|
|
||||||
Log.Writeln_("Тестирование поддерживается только на одиночном удалённом сервере.");
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
if (!Current.getUser().state.equals(UserState.ready_to_work)) {
|
|
||||||
Log.Writeln_("Пользователь не готов к работе. Выполните инициализацию пользователя!");
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
if (!Current.getCompiler().type.equals(CompilerType.dvm)) {
|
|
||||||
Log.Writeln_("Тестирование поддерживается только для DVM компиляторов.");
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
if (!Current.getCompiler().versionLoaded)
|
|
||||||
passes.get(PassCode_2021.ShowCompilerVersion).Do(Current.getCompiler(), false);
|
|
||||||
//-
|
|
||||||
for (DVMPackage dvmPackage : Global.testingServer.db.dvmPackages.Data.values()) {
|
|
||||||
if (dvmPackage.state.equals(TasksPackageState.Draft)) {
|
|
||||||
Log.Writeln_("Может существовать только один пакет, готовящийся к публикации.");
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
//--
|
|
||||||
src = Current.getDVMPackage();
|
|
||||||
if (!src.state.equals(TasksPackageState.Done)) {
|
|
||||||
Log.Writeln_("Возможно повторить только завершенный пакет!");
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
if (!src.isLoaded())
|
|
||||||
passes.get(PassCode_2021.DownloadDVMPackage).Do();
|
|
||||||
if (!src.isLoaded())
|
|
||||||
return false;
|
|
||||||
//---->>
|
|
||||||
target = new DVMPackage();
|
target = new DVMPackage();
|
||||||
target.id = Constants.Nan;
|
target.id = Constants.Nan;
|
||||||
//-
|
//-
|
||||||
@@ -95,12 +66,10 @@ public class CloneDVMPackage extends AddObjectPass<DVMPackage> {
|
|||||||
//--
|
//--
|
||||||
target.tasksCount = 0;
|
target.tasksCount = 0;
|
||||||
//--
|
//--
|
||||||
src.readJson();
|
|
||||||
target.package_json = new DVMPackage_json();
|
target.package_json = new DVMPackage_json();
|
||||||
//--
|
}
|
||||||
Vector<String> inexistingTests = new Vector<>();
|
protected void CloneTasks(DVMPackage_json src_json, DVMPackage_json dst_json) throws Exception {
|
||||||
//--
|
for (DVMCompilationTask src_compilationTask : src_json.compilationTasks) {
|
||||||
for (DVMCompilationTask src_compilationTask : src.package_json.compilationTasks) {
|
|
||||||
if (Global.testingServer.db.tests.containsKey(src_compilationTask.test_id)
|
if (Global.testingServer.db.tests.containsKey(src_compilationTask.test_id)
|
||||||
) {
|
) {
|
||||||
Group group = Global.testingServer.db.groups.get(src_compilationTask.group_id);
|
Group group = Global.testingServer.db.groups.get(src_compilationTask.group_id);
|
||||||
@@ -150,12 +119,82 @@ public class CloneDVMPackage extends AddObjectPass<DVMPackage> {
|
|||||||
compilationTask.runTasks.add(runTask);
|
compilationTask.runTasks.add(runTask);
|
||||||
}
|
}
|
||||||
//--
|
//--
|
||||||
target.package_json.compilationTasks.add(compilationTask);
|
dst_json.compilationTasks.add(compilationTask);
|
||||||
//-
|
//-
|
||||||
} else {
|
} else {
|
||||||
inexistingTests.add(String.valueOf(src_compilationTask.test_id));
|
inexistingTests.add(String.valueOf(src_compilationTask.test_id));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
protected boolean canStart(Object... args) throws Exception {
|
||||||
|
srcPackages = new Vector<>();
|
||||||
|
if (!Current.getAccount().CheckRegistered(Log))
|
||||||
|
return false;
|
||||||
|
//----
|
||||||
|
srcPackages = Global.testingServer.db.dvmPackages.getCheckedOrCurrent();
|
||||||
|
if (srcPackages.isEmpty()){
|
||||||
|
Log.Writeln_("Не отмечено или не выбрано ни одного пакета DVM");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
//-
|
||||||
|
if (!Current.Check(Log, Current.Machine, Current.User, Current.Compiler))
|
||||||
|
return false;
|
||||||
|
//---
|
||||||
|
if (!Current.getMachine().type.equals(MachineType.Server)) {
|
||||||
|
Log.Writeln_("Тестирование поддерживается только на одиночном удалённом сервере.");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (!Current.getUser().state.equals(UserState.ready_to_work)) {
|
||||||
|
Log.Writeln_("Пользователь не готов к работе. Выполните инициализацию пользователя!");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (!Current.getCompiler().type.equals(CompilerType.dvm)) {
|
||||||
|
Log.Writeln_("Тестирование поддерживается только для DVM компиляторов.");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (!Current.getCompiler().versionLoaded)
|
||||||
|
passes.get(PassCode_2021.ShowCompilerVersion).Do(Current.getCompiler(), false);
|
||||||
|
//-
|
||||||
|
for (DVMPackage dvmPackage : Global.testingServer.db.dvmPackages.Data.values()) {
|
||||||
|
if (dvmPackage.state.equals(TasksPackageState.Draft)) {
|
||||||
|
Log.Writeln_("Может существовать только один пакет, готовящийся к публикации.");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//--
|
||||||
|
src_ids = new Vector<>();
|
||||||
|
src_jsons = new Vector<>();
|
||||||
|
for (DVMPackage src : srcPackages) {
|
||||||
|
if (src.state.equals(TasksPackageState.Draft)) {
|
||||||
|
Log.Writeln_("Пакет " + Utils.Brackets(src.id) + " является черновиком.");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
src_ids.add(src.id);
|
||||||
|
}
|
||||||
|
//--
|
||||||
|
TestingSystemPass getJsonsPass = new TestingSystemPass() {
|
||||||
|
@Override
|
||||||
|
public String getDescription() {
|
||||||
|
return "Получить информацию о задачах исходных пакетов";
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
protected void ServerAction() throws Exception {
|
||||||
|
Command(new ServerExchangeUnit_2021(ServerCode.GetDVMPackagesJson, null, src_ids));
|
||||||
|
src_jsons.addAll((Vector<DVMPackage_json>) response.object);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
if (!getJsonsPass.Do())
|
||||||
|
return false;
|
||||||
|
//--
|
||||||
|
createTarget();
|
||||||
|
//--
|
||||||
|
inexistingTests = new Vector<>();
|
||||||
|
inexistingConfigurations = new Vector<>(); //не нужно.
|
||||||
|
//--
|
||||||
|
for (DVMPackage_json srcJson: src_jsons){
|
||||||
|
CloneTasks(srcJson, target.package_json);
|
||||||
|
}
|
||||||
///-
|
///-
|
||||||
//инициализируем идентификаторы задач.
|
//инициализируем идентификаторы задач.
|
||||||
for (DVMCompilationTask compilationTask : target.package_json.compilationTasks) {
|
for (DVMCompilationTask compilationTask : target.package_json.compilationTasks) {
|
||||||
@@ -169,12 +208,10 @@ public class CloneDVMPackage extends AddObjectPass<DVMPackage> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
//--
|
//--
|
||||||
for (String test_id: inexistingTests){
|
for (String test_id : inexistingTests) {
|
||||||
System.out.println("Тест "+test_id+" не найден!");
|
System.out.println("Тест " + test_id + " не найден!");
|
||||||
}
|
}
|
||||||
return inexistingTests.isEmpty()|| UI.Question(inexistingTests.size()+ " тестов отсутствует. Продолжить");
|
return inexistingTests.isEmpty() || UI.Question(inexistingTests.size() + " тестов отсутствует. Продолжить");
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
protected void body() throws Exception {
|
protected void body() throws Exception {
|
||||||
|
|||||||
@@ -85,14 +85,12 @@ public class CloneSapforPackage extends AddObjectPass<SapforPackage> {
|
|||||||
if (!Current.Check(Log, Current.ServerSapfor))
|
if (!Current.Check(Log, Current.ServerSapfor))
|
||||||
return false;
|
return false;
|
||||||
//--
|
//--
|
||||||
if (Global.testingServer.db.sapforPackages.getCheckedCount() > 0) {
|
srcPackages = Global.testingServer.db.sapforPackages.getCheckedOrCurrent();
|
||||||
srcPackages = Global.testingServer.db.sapforPackages.getCheckedItems();
|
if (srcPackages.isEmpty()){
|
||||||
} else {
|
Log.Writeln_("Не отмечено или не выбрано ни одного пакета SAPFOR");
|
||||||
if (Current.Check(Log, Current.SapforPackage)) {
|
return false;
|
||||||
srcPackages.add(Current.getSapforPackage());
|
|
||||||
} else return false;
|
|
||||||
}
|
}
|
||||||
//--
|
// todo изменить чтобы можно было.
|
||||||
for (SapforPackage sapforPackage : Global.testingServer.db.sapforPackages.Data.values()) {
|
for (SapforPackage sapforPackage : Global.testingServer.db.sapforPackages.Data.values()) {
|
||||||
if (sapforPackage.state.equals(TasksPackageState.Draft)) {
|
if (sapforPackage.state.equals(TasksPackageState.Draft)) {
|
||||||
Log.Writeln_("Может существовать только один пакет, готовящийся к публикации.");
|
Log.Writeln_("Может существовать только один пакет, готовящийся к публикации.");
|
||||||
|
|||||||
Reference in New Issue
Block a user