package com.nvarghese.beowulf.common.webtest; public enum ScanPhase { VALIDATION("Validation", 0, false, false), INITIALIZATION("Initialization", 1, false, false), PRIMARY_SCAN("Primary Scan", 2, false, false), RECRAWL("Recrawl", 3, false, false), FINAL_REPORTING("Final Reporting", 4, false, false), ABORTING("Aborting", 5, false, false), TERMINATING("Terminating", 6, false, false), PAUSING("Pausing", 7, false, false), RESUMING("Resuming", 8, false, false), ERROR("Error", 9, true, false), // stop state COMPLETE("Complete", 10, true, false), // stop state ABORTED("Aborted", 11, true, false), // stop state MANUAL_VALIDATION("Manual Validation", 12, false, true), // offline // state PAUSED("Paused", 13, true, false); // stop state String name; int value; boolean stopState; boolean passiveState; ScanPhase(String name, int value, boolean stopState, boolean passiveState) { this.name = name; this.value = value; this.stopState = stopState; this.passiveState = passiveState; } public int getValue() { return value; } public String getName() { return name; } public boolean isStopState() { return stopState; } public boolean isPassiveState() { return passiveState; } public static ScanPhase getScanPhase(String name) { for (ScanPhase scanPhase : ScanPhase.values()) { if (scanPhase.getName().equalsIgnoreCase(name)) return scanPhase; } return null; } public static ScanPhase getScanPhase(int value) { for (ScanPhase scanPhase : ScanPhase.values()) { if (scanPhase.getValue() == value) return scanPhase; } return null; } }