//加载配置文件配置信息
private Properties loadProperties()
{
Properties prop = new Properties();
try
{
if (configFile != null)
{
FileInputStream in = new FileInputStream(configFile);
prop.load(in);
in.close();
}
else
{
configFile = defaultConfigFile;
URL url = this.getClass().getClassLoader().getResource(defaultConfigFile);
InputStreamReader reader = new InputStreamReader(url.openStream());
prop.load(reader);
reader.close();
}
//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.");
return prop;
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
catch (IOException 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 listener.getTransferValue(key);
}
// Properties prop = ((FileListener)obj).getProperties();
// return prop.getProperty(key);
}
else
{
return null;
}
}
//提供给ESB使用的方法,取ESB配置文件数据
public static String getESBProperty(String key)
{
return getProperty("esb.properties", key);
}
public static String getTransferValue(String type,String value)
{
StringBuffer buf = new StringBuffer(type).append("||")
.append(XMLParserHelper.ORIGINALL_VALUE)
.append("||")
.append(value);
return getProperty(ENUMERATE,buf.toString());
}
public static String getOriginallyValue(String type,String value)
{
StringBuffer buf = new StringBuffer(type).append("||")
.append(XMLParserHelper.TRANSFER_VALUE)
.append("||")
.append(value);
return getProperty(ENUMERATE,buf.toString());
}
//启动监听服务
private static void startService()
{
FileManager fm = new FileManager();
fm.regFileListener();
}
}
分享到:
相关推荐
Ubuntu18.04右键打开terminator. 安装包filemanager-actions_3.4-1_amd64.deb
Synology File Manager
【标题】"极简网盘veno-file-manager-v3.5.6.zip"指的是一个针对网盘服务的软件包,其版本号为v3.5.6。这通常是一个开源或者商业软件的更新版本,提供了简化操作、高效管理个人或团队云端存储文件的功能。 【描述】...
**Angular FileManager 深度解析** Angular FileManager 是一个基于 AngularJS 框架开发的开源、响应式的文件管理系统。这个项目由 Joni2back 创建并维护,它提供了一个直观的用户界面,允许用户轻松地浏览、上传、...
《filemanager-0.0.2.zip:探索KindEditor与Kind-FileManager的开源魅力》 在互联网技术高速发展的今天,HTML编辑器已经成为网页内容创作不可或缺的一部分。KindEditor(http://kindeditor.org/)是一个备受赞誉的...
"js在线文件管理插件angular-filemanager-master"是一款基于JavaScript技术构建的文件管理工具,它主要利用了AngularJS和jQuery库,同时结合了Bootstrap的UI框架,为用户提供了一个直观、易用的界面来管理和操作...
python库。 资源全名:masonite_filemanager-0.0.0-py3-none-any.whl
"FileManager-master.zip"这个压缩包,暗示我们即将探讨的是一款名为FileManager的项目,可能是用于提升文件管理效率的工具或者代码库。在这个项目中,我们将深入理解其核心功能、设计原理以及实际应用。 首先,让...
【标题】"File-Manager-UI-Wpf-master.7z" 涉及的是一个基于WPF(Windows Presentation Foundation)的文件管理器用户界面项目。这个压缩包包含了一个完整的开发环境,供开发者进行学习和使用。 【描述】"自用资源...
filemanager-手机拓展连接移动硬盘
群晖FileManager是一款强大的远程文件管理工具,专为群晖NAS(网络附加存储)用户设计,提供了便捷、高效的方式来管理和组织存储在群晖设备上的数据。该工具的主要特点是其直观的界面和丰富的功能集,使用户能够轻松...
filemanager-28428f07.ipch
npm install filemanager-plugin --save-dev 用法 大事记 在构建过程中控制运行顺序。 start {Object} :将操作注册到挂钩,以编译器。 创建编译参数后执行插件。 end {Object} :注册动作以对编译器的挂接,编译...
【标题】"spring-boot-filemanager-master.zip"是一个包含Spring Boot集成的文件管理器项目源代码的压缩包。这个项目利用了Spring Boot的强大功能,结合AngularJS的前端动态性,以及CSS3和HTML5的现代网页技术,构建...
《Android 文件管理器源码解析——深入理解"FileManager-source-1.2.zip_android_values-ug-rCN"》 在移动设备领域,Android操作系统以其开放性和灵活性深受开发者喜爱。在这个环境中,文件管理是不可或缺的一部分...
《Python库:ajenti.plugin.filemanager-0.23.tar.gz深度解析》 在IT行业中,Python作为一种简洁、高效且易读性强的编程语言,深受开发者喜爱。它拥有一套庞大的第三方库,这些库极大地扩展了Python的功能,使得...
lca_com.zui.filemanager-77090210.apk
lca_com.zui.filemanager-77090100.apk
"fileManager"是一个基于Java语言开发的文件管理器系统,主要设计用于命令行操作,它提供了丰富的文件和文件夹管理功能。在这个系统中,用户可以通过简单的命令行指令来执行各种文件操作,比如创建新的文件夹、复制...