package net.gepafin.tendermanagement.enums; import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.Arrays; import java.util.List; import java.util.stream.Collectors; public enum CallStatusEnum { DRAFT("DRAFT"), PUBLISH("PUBLISH"), EXPIRED("EXPIRED"), READY_TO_PUBLISH("READY_TO_PUBLISH"); private String value; CallStatusEnum(String value) { this.value = value; } @JsonValue public String getValue() { return value; } @JsonCreator public static CallStatusEnum fromValue(String value) { for (CallStatusEnum b : CallStatusEnum.values()) { if (b.value.equals(value)) { return b; } } throw new IllegalArgumentException("Unexpected value '" + value + "'"); } public static List getStatusValues() { return Arrays.stream(CallStatusEnum.values()) .map(CallStatusEnum::getValue) .collect(Collectors.toList()); } }