【Vesta发号器源码】IdType

Vesta发号器源码解析——IdType

一个枚举类型,标识了ID的类型

枚举类型

public enum IdType {
    SECONDS("seconds"), MILLISECONDS("milliseconds"), SHORTID("short_id");

    private String name;

    private IdType(String name) {
        this.name = name;
    }

    public long value() {
        switch (this) {
            case SECONDS:
                return 0;
            case MILLISECONDS:
                return 1;
            case SHORTID:
                return 2;
            default:
                return 0;
        }
    }

    @Override
    public String toString() {
        return this.name;
    }

    public static IdType parse(String name) {
        if ("seconds".equals(name)) {
            return SECONDS;
        } else if ("milliseconds".equals(name)) {
            return MILLISECONDS;
        } else if ("short_id".equals(name)) {
            return SHORTID;
        }
        throw new IllegalArgumentException("Illegal IdType name <[" + name
                + "]>, available names are seconds and milliseconds");
    }

    public static IdType parse(long type) {
        if (type == 1) {
            return MILLISECONDS;
        } else if (type == 0) {
            return SECONDS;
        }
        else if(type==2){
            return SHORTID;
        }

        throw new IllegalArgumentException("Illegal IdType value <[" + type
                + "]>, available values are 0 (for seconds) and 1 (for milliseconds)");
    }
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 敬笃 夜色顺着窗口坠落下来,厌倦了飞翔的鸟儿选择了回家。它闭合的翅膀和大地同一个颜色。 离去的黄昏,将最美的夕阳馈...
    山谷小道士阅读 310评论 0 2
  • 实干兴邦同砥砺,城乡竞秀芳容。党群共树为民风。治贪手腕硬,廉韵古今通。 龙飞九天创伟业,盛年成就英...
    刘广申阅读 684评论 5 7
  • 午后阳光如碎金般在两边林间穿梭而过,风过,叶落,相遇,温暖!
    卿莹阅读 445评论 2 0
  • 【关于校门口】 老道的门卫大爷还在不厌其烦的谈论着种种 校门口右侧门不会为离别开放 夜幕拉开了门口大字的光亮 黑夜...
    大豆w阅读 241评论 0 0
  • 暂且假定你的信息量足够,你已经知道哪一份工作是“适合你的工作”,你现在的难题只有一个---如何把这份工作搞到手? ...
    阿白不急阅读 679评论 1 0