//停止监听
public void desFileLister()
{
if(FMap.size()>0)
{
Iterator<String>it=FMap.keySet().iterator();
while(it.hasNext())
{
String key=(String)it.next();
FMap.get(key).cancel();
}
}
}
//加载配置文件配置信息
private Properties loadProperties()
{
Properties prop=new Properties();
FileInputStream in=null;
InputStreamReader reader=null;
try
{
if(configFile!=null)
{
in=new FileInputStream(configFile);
prop.load(in);
}
else
{
configFile=defaultConfigFile;
//根据文件名加载到其内容
URL url=this.getClass().getClassLoader().getResource(defaultConfigFile);
reader=new InputStreamReader(url.openStream());
prop.load(reader);
}
//print all properties
Enumeration<?> enu=prop.propertyNames();
logger.info("Load configuration file[" + configFile + "] start...");
while (enu.hasMoreElements())
{
String key = (String) enu.nextElement();
logger.info(" key: " + key + ", value: "
+ prop.getProperty(key));
}
logger.info("Load configuration file[" + configFile + "] success.");
}
catch (Exception e)
{
e.printStackTrace();
}
return prop;
}
//对外开放的方法,可以取到监听的文件配置数据
public static String getProperty(String fileName,String key)
{
//如果size为0,则程序没有启动,先启动程序
if(FMap.size()==0)
{
synchronized (FileManager.class)
{
if(FMap.size()==0)
{
startService();
}
}
}
Object obj=FMap.get(fileName);
if(obj!=null)
{
FileListener listener=(FileListener) obj;
if(listener.isFileFlag())
{
return listener.getProperties().getProperty(key);
}
else
{
return key;
}
}
else
{
return null;
}
}
/**
* Function得不到配置文件中的内容时,返回defaultValue的值
*/
public static String getProperty(String fileName,String key,String defaultValue)
{
String value=getProperty(fileName, key);
if(value==null)
{
value=defaultValue;
}
return value;
}
/**
* 提供给ESB使用的方法,取ESB配置文件数据
*/
public static String getESBProperty(String key)
{
return getProperty("esb.properties", key);
}
/**
* 启动监听服务
*/
private static void startService()
{
FileManager fm=new FileManager();
fm.regFileListener();
}
}
public void desFileLister()
{
if(FMap.size()>0)
{
Iterator<String>it=FMap.keySet().iterator();
while(it.hasNext())
{
String key=(String)it.next();
FMap.get(key).cancel();
}
}
}
//加载配置文件配置信息
private Properties loadProperties()
{
Properties prop=new Properties();
FileInputStream in=null;
InputStreamReader reader=null;
try
{
if(configFile!=null)
{
in=new FileInputStream(configFile);
prop.load(in);
}
else
{
configFile=defaultConfigFile;
//根据文件名加载到其内容
URL url=this.getClass().getClassLoader().getResource(defaultConfigFile);
reader=new InputStreamReader(url.openStream());
prop.load(reader);
}
//print all properties
Enumeration<?> enu=prop.propertyNames();
logger.info("Load configuration file[" + configFile + "] start...");
while (enu.hasMoreElements())
{
String key = (String) enu.nextElement();
logger.info(" key: " + key + ", value: "
+ prop.getProperty(key));
}
logger.info("Load configuration file[" + configFile + "] success.");
}
catch (Exception e)
{
e.printStackTrace();
}
return prop;
}
//对外开放的方法,可以取到监听的文件配置数据
public static String getProperty(String fileName,String key)
{
//如果size为0,则程序没有启动,先启动程序
if(FMap.size()==0)
{
synchronized (FileManager.class)
{
if(FMap.size()==0)
{
startService();
}
}
}
Object obj=FMap.get(fileName);
if(obj!=null)
{
FileListener listener=(FileListener) obj;
if(listener.isFileFlag())
{
return listener.getProperties().getProperty(key);
}
else
{
return key;
}
}
else
{
return null;
}
}
/**
* Function得不到配置文件中的内容时,返回defaultValue的值
*/
public static String getProperty(String fileName,String key,String defaultValue)
{
String value=getProperty(fileName, key);
if(value==null)
{
value=defaultValue;
}
return value;
}
/**
* 提供给ESB使用的方法,取ESB配置文件数据
*/
public static String getESBProperty(String key)
{
return getProperty("esb.properties", key);
}
/**
* 启动监听服务
*/
private static void startService()
{
FileManager fm=new FileManager();
fm.regFileListener();
}
}