首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

枚举步骤EnumerateFile

2012-08-22 
枚举方法EnumerateFileimport java.io.Fileimport java.util.Mapimport java.util.Map.Entryimport org

枚举方法EnumerateFile
import java.io.File;
import java.util.Map;
import java.util.Map.Entry;
import org.dom4j.Element;
public class EnumerateFile
{
    // 枚举文件对应一个File
    private File enumFile;

    // 对应一个Element
    private Element enumElement;

    // 对应一个lastModified
    private long enumLastModefieds;

    // 需要重新加载的枚举文件
    private String reloadEnumFilePath = "";

    public File getEnumFile()
    {
        return enumFile;
    }

    public void setEnumFile(File enumFile)
    {
        this.enumFile = enumFile;
    }

    public Element getEnumElement()
    {
        return enumElement;
    }

    public void setEnumElement(Element enumElement)
    {
        this.enumElement = enumElement;
    }

    public long getEnumLastModefieds()
    {
        return enumLastModefieds;
    }

    public void setEnumLastModefieds(long enumLastModefieds)
    {
        this.enumLastModefieds = enumLastModefieds;
    }

    public String getReloadEnumFilePath()
    {
        return reloadEnumFilePath;
    }

    public void setReloadEnumFilePath(String reloadEnumFilePath)
    {
        this.reloadEnumFilePath = reloadEnumFilePath;
    }

    /**
     * 加载枚举文件属性
     * @param filePath
     */
    public EnumerateFile(String filePath)
    {
        // 设置枚举文件
        this.setEnumFile(new File(filePath));
        // 设置枚举文件的最后更新的时间
        this.setEnumLastModefieds(this.getEnumFile().lastModified());
    }

    /**
     * 确认那些枚举文件是要改动的,改过过后的文件要求立即加载
     *  2011-12-28,Xgw123485
     */
    public static boolean checkFileIsModified(
            Map<String, EnumerateFile> enumerateFiles)
    {
        boolean isModified = false;
        for (Entry<String, EnumerateFile> entry : enumerateFiles.entrySet())
        {
            EnumerateFile file = entry.getValue();
            file.setReloadEnumFilePath("");
            if (file.getEnumFile().lastModified() > file.getEnumLastModefieds())
            {
                file.setReloadEnumFilePath(entry.getKey());
                isModified = true;
            }
        }
        return isModified;
    }

}

热点排行