package examples.dataloader;

public enum OfflineVlogFeatureGroupV1 {

    machineinfo_brand,
    machineinfo_model,
    machineinfo_platform,
    machineinfo_system,
    u_1day_exp_cnt,
    u_1day_click_cnt,
    u_1day_share_cnt,
    u_1day_return_cnt,
    u_1day_ctr,
    u_1day_str,
    u_1day_rov,
    u_1day_ros,

    u_3day_exp_cnt,
    u_3day_click_cnt,
    u_3day_share_cnt,
    u_3day_return_cnt,
    u_3day_ctr,
    u_3day_str,
    u_3day_rov,
    u_3day_ros,


    total_time,

    play_count_total,
    i_1day_exp_cnt,
    i_1day_click_cnt,
    i_1day_share_cnt,
    i_1day_return_cnt,
    i_1day_ctr,
    i_1day_str,
    i_1day_rov,
    i_1day_ros,

    i_3day_exp_cnt,
    i_3day_click_cnt,
    i_3day_share_cnt,
    i_3day_return_cnt,
    i_3day_ctr,
    i_3day_str,
    i_3day_rov,
    i_3day_ros,

    ctx_week,
    ctx_hour,
    ctx_region,
    ctx_city,

    ;


    private final byte[] idBytes;
    private final byte[] nameBytes;

    OfflineVlogFeatureGroupV1() {
        this.idBytes = String.valueOf(ordinal()).getBytes();
        this.nameBytes = name().toLowerCase().getBytes();
    }

    public final int getId() {
        return ordinal();
    }

    public final String getGroupName() {
        return name().toLowerCase();
    }

    public final byte[] getGroupNameBytes() {
        return getGroupName().getBytes();
    }

    public final byte[] getIdBytes() {
        return idBytes;
    }

}
