package com.code44.finance.common.model;
public enum TransactionState {
Confirmed(TransactionState.VALUE_CONFIRMED),
Pending(TransactionState.VALUE_PENDING);
private static final int VALUE_CONFIRMED = 1;
private static final int VALUE_PENDING = 2;
private final int value;
private TransactionState(int value) {
this.value = value;
}
public static TransactionState fromInt(int value) {
switch (value) {
case VALUE_CONFIRMED:
return Confirmed;
case VALUE_PENDING:
return Pending;
default:
throw new IllegalArgumentException("State " + value + " is not supported.");
}
}
public int asInt() {
return value;
}
public String asString() {
return String.valueOf(value);
}
}