import org.apache.commons.io.FileUtils; //导入方法依赖的package包/类
private static MediatorConfig loadConfig(String configPath) throws IOException, RoutingTable.RouteAlreadyMappedException {
MediatorConfig config = new MediatorConfig();
//MediatorFhirConfig config=new MediatorFhirConfig();
if (configPath!=null) {
Properties props = new Properties();
File conf = new File(configPath);
InputStream in = FileUtils.openInputStream(conf);
props.load(in);
IOUtils.closeQuietly(in);
config.setProperties(props);
} else {
config.setProperties("mediator.properties");
}
config.setName(config.getProperty("mediator.name"));
config.setServerHost(config.getProperty("mediator.host"));
config.setServerPort( Integer.parseInt(config.getProperty("mediator.port")) );
config.setRootTimeout(Integer.parseInt(config.getProperty("mediator.timeout")));
config.setCoreHost(config.getProperty("core.host"));
config.setCoreAPIUsername(config.getProperty("core.api.user"));
config.setCoreAPIPassword(config.getProperty("core.api.password"));
if (config.getProperty("core.api.port") != null) {
config.setCoreAPIPort(Integer.parseInt(config.getProperty("core.api.port")));
}
config.setRoutingTable(buildRoutingTable());
config.setStartupActors(buildStartupActorsConfig());
InputStream regInfo = MediatorMain.class.getClassLoader().getResourceAsStream("mediator-registration-info.json");
RegistrationConfig regConfig = new RegistrationConfig(regInfo);
config.setRegistrationConfig(regConfig);
if (config.getProperty("mediator.heartbeats")!=null && "true".equalsIgnoreCase(config.getProperty("mediator.heartbeats"))) {
config.setHeartbeatsEnabled(true);
}
return config;
}