package com.huawei.esb;
import java.io.File;
import java.util.Map;
import java.util.Map.Entry;
import org.kxml2.kdom.Element;
public class EnumerateFile {
//枚举文件对应一个File
private File enumFile;
//对应一个element
private Element enumElement;
//对应一个lastModified
private Long enumLastModifieds;
//需要重新加载的枚举文件
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 getEnumLastModifieds() {
return enumLastModifieds;
}
public void setEnumLastModifieds(Long enumLastModifieds) {
this.enumLastModifieds = enumLastModifieds;
}
public String getReLoadEnumFilePath() {
return reLoadEnumFilePath;
}
public void setReLoadEnumFilePath(String reLoadEnumFilePath) {
this.reLoadEnumFilePath = reLoadEnumFilePath;
}
public EnumerateFile(){}
public EnumerateFile(String s){
//设置枚举文件
this.setEnumFile(new File(s));
//设置枚举文件的最后更新时间
this.setEnumLastModifieds(this.getEnumFile().lastModified());
}
//设置需要重新加载的枚举文件
public static boolean checkFileIsModified(Map<String,EnumerateFile> enumerateFiles){
boolean isModified=false;
for(Entry entry : enumerateFiles.entrySet()){
EnumerateFile file = (EnumerateFile)entry.getValue();
file.setReLoadEnumFilePath("");
if(file.getEnumFile().lastModified()>file.getEnumLastModifieds()){
file.setReLoadEnumFilePath((String)entry.getKey());
isModified=true;
}
}
return isModified;
}
}