summaryrefslogtreecommitdiffstats
path: root/src/main/java/org/onap/aai/validation/config/TopicPropertiesConfig.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/org/onap/aai/validation/config/TopicPropertiesConfig.java')
-rw-r--r--src/main/java/org/onap/aai/validation/config/TopicPropertiesConfig.java58
1 files changed, 25 insertions, 33 deletions
diff --git a/src/main/java/org/onap/aai/validation/config/TopicPropertiesConfig.java b/src/main/java/org/onap/aai/validation/config/TopicPropertiesConfig.java
index 4742cef..4a2dc16 100644
--- a/src/main/java/org/onap/aai/validation/config/TopicPropertiesConfig.java
+++ b/src/main/java/org/onap/aai/validation/config/TopicPropertiesConfig.java
@@ -1,4 +1,4 @@
-/*
+/**
* ============LICENSE_START===================================================
* Copyright (c) 2018 Amdocs
* ============================================================================
@@ -6,7 +6,7 @@
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@@ -17,19 +17,21 @@
*/
package org.onap.aai.validation.config;
+import java.io.FileNotFoundException;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+import java.util.Properties;
+import org.onap.aai.validation.logging.ApplicationMsgs;
import org.onap.aai.validation.logging.LogHelper;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.beans.factory.config.PropertiesFactoryBean;
-import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
import org.springframework.core.io.Resource;
import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Properties;
-
@Configuration
public class TopicPropertiesConfig {
@@ -38,38 +40,28 @@ public class TopicPropertiesConfig {
@Value("${topics.properties.location}")
private String topicsPropertiesLocation;
- private static final String[] TOPICS_PROPERTIES_LOCATION_TPL = { "file:./%s/*.properties", "classpath:/%s/*.properties" };
+ private static final String[] propertyFilePatterns = { "file:./%s/*.properties", "classpath:/%s/*.properties" };
- @Bean(name="topicProperties")
+ @Bean(name = "topicProperties")
public Properties topicProperties() throws IOException {
- PropertiesFactoryBean config = new PropertiesFactoryBean();
PathMatchingResourcePatternResolver resolver = new PathMatchingResourcePatternResolver();
- List<Resource> resouceList = new ArrayList<Resource>();
- try {
- for (String p : bldrsPropLoc2Path(topicsPropertiesLocation)) {
- Resource[] resources = resolver.getResources(p);
- if (resources != null && resources.length > 0) {
- for (Resource resource : resources) {
- resouceList.add(resource);
- }
- break;
- }
+ List<Resource> resourceList = new ArrayList<>();
+ for (String patternTemplate : propertyFilePatterns) {
+ String pattern = String.format(patternTemplate, topicsPropertiesLocation).replace("//", "/");
+ applicationLogger.info(ApplicationMsgs.LOAD_PROPERTIES, "using pattern " + pattern);
+ try {
+ resourceList.addAll(Arrays.asList(resolver.getResources(pattern)));
+ } catch (FileNotFoundException e) {
+ applicationLogger.info(ApplicationMsgs.LOAD_PROPERTIES, e.getMessage());
}
- } catch (Exception e) {
- applicationLogger.logAuditError(e);
}
- config.setLocations(resouceList.toArray(new Resource[]{}));
+
+ applicationLogger.info(ApplicationMsgs.LOAD_PROPERTIES, resourceList.toString());
+
+ PropertiesFactoryBean config = new PropertiesFactoryBean();
+ config.setLocations(resourceList.toArray(new Resource[resourceList.size()]));
config.afterPropertiesSet();
return config.getObject();
}
- private static String[] bldrsPropLoc2Path(String topicsPropertiesLocation) {
- String[] res = new String[TOPICS_PROPERTIES_LOCATION_TPL.length];
- int indx = 0;
- for (String tmpl : TOPICS_PROPERTIES_LOCATION_TPL) {
- res[indx++] = String.format(tmpl, topicsPropertiesLocation).replace("//", "/");
- }
- return res;
- }
-
}