package examples.dataloader;

public enum OfflineVlogFeatureGroupV2 {

    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,
    view_pv_list_1day,
    view_uv_list_1day,
    play_pv_list_1day,
    play_uv_list_1day,
    share_pv_list_1day,
    share_uv_list_1day,
    return_uv_list_1day,
    p_view_uv_list_1day,
    p_view_pv_list_1day,
    p_return_uv_list_1day,
    share_uv_list_2day,
    share_pv_list_2day,
    share_uv_list_3day,
    share_pv_list_3day,
    view_uv_list_1h,
    view_pv_list_1h,
    play_uv_list_1h,
    play_pv_list_1h,
    share_uv_list_1h,
    share_pv_list_1h,
    return_uv_list_1h,
    p_return_uv_list_1h,
    i_1day_ctr_rt,
    i_1day_str_rt,
    i_1day_ros_rt,
    i_1day_rov_rt,
    i_1h_ctr_rt,
    i_1h_str_rt,
    i_1h_ros_rt,
    i_1h_rov_rt,
    u_7day_exp_cnt,
    u_7day_click_cnt,
    u_7day_share_cnt,
    u_7day_return_cnt,
    i_7day_exp_cnt,
    i_7day_click_cnt,
    i_7day_share_cnt,
    i_7day_return_cnt,
    u_7day_ctr,
    u_7day_str,
    u_7day_rov,
    u_7day_ros,
    i_7day_ctr,
    i_7day_str,
    i_7day_rov,
    i_7day_ros
    ;


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

    OfflineVlogFeatureGroupV2() {
        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;
    }

}
