Files
VisualSapfor/src/_VisualDVM/TestingSystem/Common/TasksPackageState.java
2024-10-14 15:19:13 +03:00

120 lines
3.8 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
package _VisualDVM.TestingSystem.Common;
import Common.Visual.Fonts.VisualiserFonts;
import Common.Visual.StatusEnum;
import java.util.Arrays;
import java.util.Vector;
import java.util.stream.Collectors;
public enum TasksPackageState implements StatusEnum {
Draft,
//--
Inactive, //пакет просто есть. не запущен.
Queued,
//--
TestsSynchronize, //оставить.
PackageWorkspaceCreation,
PackageStart,
//
CompilationWorkspacesCreation,
CompilationPreparation,
CompilationExecution,
//-
RunningWorkspacesCreation,
RunningPreparation,
RunningExecution,
//--
RunningEnd, //скачка архива
Analysis,
//-
Done,
Aborted,
ConnectionError,
DoneWithErrors;
public boolean isActive() {
switch (this) {
case Inactive:
case Done:
case DoneWithErrors:
case Aborted:
case Draft:
case ConnectionError:
return false;
default:
return true;
}
}
public boolean isDone() {
switch (this) {
case Done:
case DoneWithErrors:
return true;
default:
return false;
}
}
@Override
public VisualiserFonts getFont() {
switch (this) {
case TestsSynchronize:
case Analysis:
case Draft:
return VisualiserFonts.BlueState;
case CompilationExecution:
case RunningExecution:
return VisualiserFonts.ProgressState;
case Done:
return VisualiserFonts.GoodState;
case DoneWithErrors:
return VisualiserFonts.BadState;
default:
return StatusEnum.super.getFont();
}
}
//-
public String getDescription() {
switch (this) {
case Inactive:
return "неактивен";
case Draft:
return "Подготовка к публикации";
case Aborted:
return "прерван";
case Queued:
return "в очереди";
case TestsSynchronize:
return "синхронизация тестов";
case PackageWorkspaceCreation:
return "создание рабочей папки пакета";
case PackageStart:
return "старт пакета";
case CompilationWorkspacesCreation:
return "создание рабочих папок компиляции";
case CompilationPreparation:
return "подготовка к компиляции";
case CompilationExecution:
return "компиляция";
case RunningWorkspacesCreation:
return "создание рабочих папок для запуска";
case RunningPreparation:
return "подготовка к запуску";
case RunningExecution:
return "запуск";
case RunningEnd:
return "загрузка результатов";
case Analysis:
return "анализ результатов";
case Done:
return "завершен";
case ConnectionError:
return "сбой связи";
case DoneWithErrors:
return "завершен с ошибками";
default:
return StatusEnum.super.getDescription();
}
}
public Vector<TasksPackageState> getHigherStates() {
return Arrays.stream(values()).filter(state -> state.ordinal() > this.ordinal()).collect(Collectors.toCollection(Vector::new));
}
}