1 package com.jsql.model.accessible;
2
3 import java.util.Arrays;
4 import java.util.Optional;
5
6 public enum ExploitMode {
7
8 AUTO("MODE_AUTO", "MODE_AUTO_TOOLTIP"),
9 QUERY_BODY("MODE_QUERY_BODY", "MODE_QUERY_BODY_TOOLTIP"),
10 TEMP_TABLE("MODE_TEMP_TABLE", "MODE_TEMP_TABLE_TOOLTIP"),
11 NETSHARE("MODE_NETSHARE", "MODE_NETSHARE_TOOLTIP");
12
13 private final String keyLabel;
14 private final String keyTooltip;
15
16 ExploitMode(String keyLabel, String keyTooltip) {
17 this.keyLabel = keyLabel;
18 this.keyTooltip = keyTooltip;
19 }
20
21 public static Optional<ExploitMode> forName(String label) {
22 return Arrays.stream(ExploitMode.values())
23 .filter(action -> label.equals(action.name()))
24 .findFirst();
25 }
26
27 public String getKeyLabel() {
28 return this.keyLabel;
29 }
30
31 public String getKeyTooltip() {
32 return this.keyTooltip;
33 }
34 }