2023-11-19 02:12:44 +03:00
|
|
|
|
package Visual_DVM_2021.Passes;
|
2023-11-12 02:14:20 +03:00
|
|
|
|
import Common.Current;
|
|
|
|
|
|
import Common.Global;
|
|
|
|
|
|
import Common.Utils.Utils;
|
|
|
|
|
|
import GlobalData.Settings.SettingName;
|
2023-11-19 02:12:44 +03:00
|
|
|
|
import TestingSystem.SAPFOR.Json.SapforVersion_json;
|
|
|
|
|
|
import TestingSystem.SAPFOR.SapforTask.SapforTask;
|
2023-11-12 02:14:20 +03:00
|
|
|
|
|
|
|
|
|
|
import java.io.File;
|
|
|
|
|
|
import java.nio.file.Paths;
|
|
|
|
|
|
public abstract class OpenSapforVersionPass extends Pass_2021<SapforVersion_json> {
|
|
|
|
|
|
@Override
|
|
|
|
|
|
public String getIconPath() {
|
|
|
|
|
|
return "/icons/OpenProject.png";
|
|
|
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
|
|
|
public String getButtonText() {
|
|
|
|
|
|
return "";
|
|
|
|
|
|
}
|
|
|
|
|
|
public abstract Current getCurrentName();
|
|
|
|
|
|
@Override
|
|
|
|
|
|
protected boolean needsAnimation() {
|
|
|
|
|
|
return true;
|
|
|
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
|
|
|
protected boolean canStart(Object... args) throws Exception {
|
|
|
|
|
|
if (Current.Check(Log, getCurrentName())) {
|
|
|
|
|
|
target = (SapforVersion_json) Current.get(getCurrentName());
|
|
|
|
|
|
return true;
|
|
|
|
|
|
}
|
|
|
|
|
|
return false;
|
|
|
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
|
|
|
protected void body() throws Exception {
|
|
|
|
|
|
SapforTask task = target.task;
|
|
|
|
|
|
ShowMessage1("Построение дерева версий и создание баз данных...");
|
|
|
|
|
|
File rootHome = Paths.get(Global.getSetting(SettingName.Workspace).Value,
|
|
|
|
|
|
Utils.getDateName(task.test_description)).toFile();
|
|
|
|
|
|
for (SapforVersion_json version_json : task.versions) {
|
|
|
|
|
|
ShowMessage2(version_json.version);
|
|
|
|
|
|
version_json.createProject(rootHome);
|
|
|
|
|
|
}
|
|
|
|
|
|
for (SapforVersion_json version_json : task.variants) {
|
|
|
|
|
|
ShowMessage2(version_json.version);
|
|
|
|
|
|
version_json.createProject(rootHome);
|
|
|
|
|
|
}
|
2023-11-14 18:51:08 +03:00
|
|
|
|
//-второй проход это запись логов и сообщений. у вариантов их быть не может.
|
|
|
|
|
|
ShowMessage1("Прочтение журналов и сообщений..."); //без версий нельзя, иначе лишние файлы захватит.
|
|
|
|
|
|
for (SapforVersion_json version_json : task.versions) {
|
|
|
|
|
|
ShowMessage2(version_json.version);
|
|
|
|
|
|
version_json.ReadMessages();
|
|
|
|
|
|
}
|
2023-11-12 02:14:20 +03:00
|
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
|
|
|
protected void performDone() throws Exception {
|
|
|
|
|
|
passes.get(PassCode_2021.OpenCurrentProject).Do(target.project.Home);
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|