постепенное выведение старой концепции текущих объектов, касаемо табличных лучше держать их в интерфейсе таблиц, чтобы не писать описание объекта дважды и не мучиться с типом. некоторые фиксы

This commit is contained in:
2024-10-24 23:40:24 +03:00
parent f811d9b3ac
commit 36c11ac93f
153 changed files with 765 additions and 739 deletions

View File

@@ -1,12 +1,18 @@
package _VisualDVM.Passes.All;
import Common.MainModule_;
import Common.Passes.Pass;
import Common.Passes.PassException;
import Common.Utils.Utils_;
import _VisualDVM.Current;
import _VisualDVM.Global;
import _VisualDVM.GlobalData.Machine.Machine;
import _VisualDVM.GlobalData.Machine.MachineType;
import _VisualDVM.GlobalData.Makefile.Makefile;
import _VisualDVM.GlobalData.RunConfiguration.RunConfiguration;
import _VisualDVM.GlobalData.Tasks.CompilationTask.CompilationTask;
import _VisualDVM.GlobalData.Tasks.RunTask.RunTask;
import _VisualDVM.GlobalData.Tasks.TaskState;
import _VisualDVM.GlobalData.User.User;
import _VisualDVM.Passes.PassCode;
import _VisualDVM.ProjectData.Project.db_project_info;
@@ -24,7 +30,9 @@ public class Run extends Pass<db_project_info> {
}
@Override
protected void performPreparation() throws Exception {
runTasks = Global.mainModule.getRunConfiguration().generateRunTasks(target, Global.mainModule.getCompilationTask());
runTasks = MainModule_.instance.getDb().getTable(RunConfiguration.class).getUI().getCurrent().generateRunTasks(target,
MainModule_.instance.getDb().getTable(CompilationTask.class).getUI().getCurrent()
);
for (RunTask runTask : runTasks) {
Global.mainModule.getDb().Insert(runTask);
Utils_.forceDeleteWithCheck(runTask.getLocalWorkspace());
@@ -37,17 +45,17 @@ public class Run extends Pass<db_project_info> {
@Override
protected boolean canStart(Object... args) {
subpass = null;
if (Global.mainModule.Check(Log, Current.Project, Current.Machine, Current.User, Current.Makefile, Current.RunConfiguration,
Current.CompilationTask)) {
if ((Global.mainModule.Check(Log, Current.Project))&&
MainModule_.instance.getDb().Check(Log,Machine.class, User.class, Makefile.class, RunConfiguration.class,CompilationTask.class)) {
//-
target = Global.mainModule.getProject();
//-
if (Global.mainModule.getMachine().type.equals(MachineType.MVS_cluster) &&
Global.mainModule.getRunConfiguration().LauncherCall.isEmpty()
if (MainModule_.instance.getDb().getTable(Machine.class).getUI().getCurrent().type.equals(MachineType.MVS_cluster) &&
MainModule_.instance.getDb().getTable(RunConfiguration.class).getUI().getCurrent().LauncherCall.isEmpty()
) {
Log.Writeln_("Запуск напрямую на кластере запрещён.Используйте для запуска DVM систему или MPI");
}
if (!Global.mainModule.getCompilationTask().state.equals(TaskState.Done))
if (!MainModule_.instance.getDb().getTable(CompilationTask.class).getUI().getCurrent().state.equals(TaskState.Done))
Log.Writeln_("Текущая задача на компиляцию еще не выполнялась, или была завершена с ошибками");
return Log.isEmpty();
}
@@ -55,7 +63,7 @@ public class Run extends Pass<db_project_info> {
}
@Override
protected void body() throws Exception {
switch (Global.mainModule.getMachine().type) {
switch (MainModule_.instance.getDb().getTable(Machine.class).getUI().getCurrent().type) {
case Local:
if (Utils_.isWindows()) {
subpass = Global.mainModule.getPass(PassCode.WindowsLocalRun);
@@ -64,7 +72,9 @@ public class Run extends Pass<db_project_info> {
break;
case Undefined:
case MVS_cluster:
throw new PassException("Запуск не реализован для типа машины " + Utils_.DQuotes(Global.mainModule.getMachine().type));
throw new PassException("Запуск не реализован для типа машины "
+ Utils_.DQuotes(
MainModule_.instance.getDb().getTable(Machine.class).getUI().getCurrent().type));
/*
case MVS_cluster:
subpass = passes.get(PassCode_2021.MVSRun);
@@ -81,7 +91,7 @@ public class Run extends Pass<db_project_info> {
boolean task_completed = false;
task.setProgress(i, runTasks.size());
//-
Global.mainModule.getDb().runTasks.getUI().Refresh();
Global.mainModule.getDb().runTasks.getUI().RedrawControl();
Global.mainModule.getDb().runTasks.getUI().SetCurrentByPK(task.id);
//-
subpass.Do(task, target);
@@ -102,7 +112,7 @@ public class Run extends Pass<db_project_info> {
break;
}
//-
Global.mainModule.getDb().runTasks.getUI().Refresh();
Global.mainModule.getDb().runTasks.getUI().RedrawControl();
Global.mainModule.getUI().getDebugWindow().ShowCurrentRunTask();
//-
if (!task_completed) break;