diff options
Diffstat (limited to 'eaaf_core/src/main/java/at/gv/egiz/eaaf/core/impl/idp/conf/AbstractConfigurationImpl.java')
-rw-r--r-- | eaaf_core/src/main/java/at/gv/egiz/eaaf/core/impl/idp/conf/AbstractConfigurationImpl.java | 25 |
1 files changed, 19 insertions, 6 deletions
diff --git a/eaaf_core/src/main/java/at/gv/egiz/eaaf/core/impl/idp/conf/AbstractConfigurationImpl.java b/eaaf_core/src/main/java/at/gv/egiz/eaaf/core/impl/idp/conf/AbstractConfigurationImpl.java index f269c501..ca99b040 100644 --- a/eaaf_core/src/main/java/at/gv/egiz/eaaf/core/impl/idp/conf/AbstractConfigurationImpl.java +++ b/eaaf_core/src/main/java/at/gv/egiz/eaaf/core/impl/idp/conf/AbstractConfigurationImpl.java @@ -60,6 +60,13 @@ public abstract class AbstractConfigurationImpl implements IConfiguration { if (StringUtils.isEmpty(configPath)) { log.debug("Primary configuration is empty. Search for backup configuration .... "); + String backupConfigPath = getBackupConfigPath(); + if (StringUtils.isEmpty(backupConfigPath)) { + log.error("No configuration file found."); + throw new EAAFConfigurationException("config.01", null); + + } + internalConfigPath = new URI(getBackupConfigPath()); } else @@ -70,7 +77,13 @@ public abstract class AbstractConfigurationImpl implements IConfiguration { //extract configuration root directory //TODO: check if it works with classpath - File propertiesFile = new File(internalConfigPath); + File propertiesFile = new File(internalConfigPath); + if (!propertiesFile.exists()) { + log.error("Configuration file: " + internalConfigPath + " is NOT found on filesystem"); + throw new EAAFConfigurationException("config.18", null); + + } + String configDir = propertiesFile.getParent(); configRootDirectory = new File(configDir).toURI(); log.debug("Set EAAFCore configuration root directory to " + configRootDirectory.toString()); @@ -87,13 +100,14 @@ public abstract class AbstractConfigurationImpl implements IConfiguration { } else { log.error("Can not load EAAFCore configuration. Unsupported prefix! (Only 'file:' and 'classpath:') "); - throw new EAAFConfigurationException("Can not load EAAFCore configuration. Unsupported prefix"); + throw new EAAFConfigurationException("config.24", new Object[] {internalConfigPath, "'file:'"}); } if (is == null) { log.error("Can NOT load EAAFCore configuration from file " + internalConfigPath.toString()); - throw new EAAFConfigurationException("Can NOT load EAAFCore configuration from file " + internalConfigPath.toString()); + throw new EAAFConfigurationException("config.03", + new Object[] {internalConfigPath.toString()}); } @@ -103,11 +117,10 @@ public abstract class AbstractConfigurationImpl implements IConfiguration { properties.load(is); log.info("EAAFCore configuration loaded"); - - + } catch (URISyntaxException | IOException e) { log.error("Can not parse configuration path " + configPath + " or " + getBackupConfigPath()); - throw new EAAFConfigurationException("Can not parse configuration path", e); + throw new EAAFConfigurationException("config.03", new Object[]{configPath + " or " + getBackupConfigPath()}, e); } finally { if (is != null) { |