package _VisualDVM.GlobalData.Tasks; import Common.Visual.Fonts.VisualiserFonts; import Common.Visual.StatusEnum; public enum TaskState implements StatusEnum { Inactive, //-- Waiting, WorkspaceCreated, WorkspaceReady, Running, Canceled, //--- определение без скачки результатов! ResultsDownloaded, //----------------------- Finished, //--- результирующие DoneWithErrors, AbortedByTimeout, AbortedByUser, Crushed, WrongTestFormat, InternalError, Done, //--- сугубо кластерные. Queued, NoSuchTask, FailedToQueue, AbortingByUser; //только для одиночного запуска //для фильтров тестирования двм системы. public boolean isVisible() { switch (this) { case Inactive: case Waiting: case Canceled: case Done: case DoneWithErrors: case AbortedByTimeout: case WrongTestFormat: case InternalError: case Crushed: return true; default: return false; } } public String getDescription() { switch (this) { case Waiting: return "ожидание"; case WorkspaceCreated: return "папка создана"; case WorkspaceReady: return "готова к выполнению"; case Running: return "выполняется"; case Finished: return "ожидание анализа результатов"; case Inactive: return "неактивно"; case AbortedByTimeout: return "таймаут"; case AbortedByUser: return "прервана"; case Done: return "успешно"; case DoneWithErrors: return "с ошибками"; case Crushed: return "авост"; case Canceled: return "отменена"; case InternalError: return "отсутствует файл состояния"; case WrongTestFormat: return "неверный формат"; case FailedToQueue: return "не удалось поставить в очередь"; case NoSuchTask: return "не существует"; case Queued: return "в очереди"; case AbortingByUser: return "прерывание..."; case ResultsDownloaded: return "результаты загружены"; //--------------------------------------->>> default: return StatusEnum.super.getDescription(); } } @Override public VisualiserFonts getFont() { switch (this) { case FailedToQueue: case NoSuchTask: case AbortedByUser: case AbortedByTimeout: case DoneWithErrors: case WrongTestFormat: case InternalError: case Canceled: return VisualiserFonts.BadState; case Queued: case Running: return VisualiserFonts.ProgressState; case Done: return VisualiserFonts.GoodState; case Crushed: return VisualiserFonts.Fatal; case Finished: return VisualiserFonts.BlueState; case WorkspaceReady: return VisualiserFonts.ReadyState; default: return StatusEnum.super.getFont(); } } // public boolean isActive() { switch (this) { case Waiting: case Running: case Queued: case Finished: case AbortingByUser: case WorkspaceReady: case WorkspaceCreated: return true; default: return false; } } public boolean isFinished() { return this == TaskState.Finished; } public boolean isComplete() { switch (this) { case Done: case DoneWithErrors: case AbortedByTimeout: case AbortedByUser: case WrongTestFormat: case Crushed: case InternalError: case Canceled: return true; default: return false; } } }