package io.delphiplatform.api.v2.model;

import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonValue;

/**
 * Currently only grouping by `date` (day) is supported
 */
public enum GroupBy {

    DATE("date");

    private final String value;

    GroupBy(String value) {
        this.value = value;
    }

    @JsonCreator
    public static GroupBy fromValue(String text) {
        for (GroupBy b : GroupBy.values()) {
            if (String.valueOf(b.value).equals(text)) {
                return b;
            }
        }
        return null;
    }

    @Override
    @JsonValue
    public String toString() {
        return String.valueOf(value);
    }
}
