package com.aegis.file.enums;

/**
 * 文件分类枚举
 * 
 * @author aegis
 */
public enum FileCategory {
    
    /** 文档 */
    DOCUMENT("document", "文档"),
    
    /** 图片 */
    IMAGE("image", "图片"),
    
    /** 视频 */
    VIDEO("video", "视频"),
    
    /** 音频 */
    AUDIO("audio", "音频"),
    
    /** 压缩包 */
    ARCHIVE("archive", "压缩包"),
    
    /** 其他 */
    OTHER("other", "其他");
    
    private final String code;
    private final String name;
    
    FileCategory(String code, String name) {
        this.code = code;
        this.name = name;
    }
    
    public String getCode() {
        return code;
    }
    
    public String getName() {
        return name;
    }
    
    /**
     * 根据代码获取枚举
     */
    public static FileCategory fromCode(String code) {
        for (FileCategory category : values()) {
            if (category.code.equals(code)) {
                return category;
            }
        }
        return OTHER; // 默认返回其他
    }
}