jafea7-ctbrec-v5.3.0-based/common/src/main/java/ctbrec/sites/mfc/State.java

57 lines
1.1 KiB
Java

package ctbrec.sites.mfc;
import java.util.Optional;
public enum State {
ONLINE("online"),
CAMOFF("online - cam off"),
RECORDING("recording"),
INCLUDE("include"),
EXCLUDE("exclude"),
DELETE("delete"),
AWAY("away"),
PRIVATE("private"),
GROUP_SHOW("group_show"),
OFFLINE("offline"),
UNKNOWN("unknown");
String literal;
State(String literal) {
this.literal = literal;
}
public static State of(Integer vs) {
Integer s = Optional.ofNullable(vs).orElse(Integer.MAX_VALUE);
switch (s) {
case 0:
return ONLINE;
case 90:
return CAMOFF;
case -4:
return RECORDING;
case -3:
return INCLUDE;
case -2:
return EXCLUDE;
case -1:
return DELETE;
case 2:
return AWAY;
case 12:
case 91:
return PRIVATE;
case 13:
return GROUP_SHOW;
case 127:
return OFFLINE;
default:
return UNKNOWN;
}
}
@Override
public String toString() {
return literal;
}
}