/*
 * Copyright 2017, The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package cgmblelib.database;


import androidx.room.TypeConverter;

import cgmblelib.Enum.enumError;
import cgmblelib.Enum.enumGlucoseStatus;
import cgmblelib.Enum.enumTrend;
import cgmblelib.Enum.enumUnBind;

/**
 * 枚举类型转换
 * 数据库中，存储时将枚举转换成id值，读取时，将id转换成枚举
 *
 * @author minyuchun
 */
public class EnumConverter {


    @TypeConverter
    public static enumError toEnumError(int errorId) {
        return enumError.getEnumError(errorId);
    }

    @TypeConverter
    public static int toId(enumError error) {
        return error.getErrorId();
    }

    @TypeConverter
    public static enumTrend toEnumTrend(int trendId) {
        return enumTrend.getEnumTrend(trendId);
    }

    @TypeConverter
    public static int toId(enumTrend trend) {
        return trend.getTrendId();
    }

    @TypeConverter
    public static enumUnBind toEnumUnBind(int type) {
        return enumUnBind.getEnumUnBind(type);
    }

    @TypeConverter
    public static int toId(enumUnBind unbind) {
        return unbind.getType();
    }

    @TypeConverter
    public static enumGlucoseStatus toEnumGlucoseStatus(int statusId) {
        return enumGlucoseStatus.getEnumGlucoseStatus(statusId);
    }

    @TypeConverter
    public static int toId(enumGlucoseStatus status) {
        return status.getStatusId();
    }

}
