From d54223e7cd3026e260e06df39dd52c4368e7053d Mon Sep 17 00:00:00 2001 From: awudzins Date: Wed, 19 Feb 2020 13:34:32 +0100 Subject: Load CMP Servers config from volume Create Kubernetes secret to store Cmp Server config file and mount it to container as volume Issue-ID: AAF-997 Signed-off-by: Adam Wudzinski Change-Id: I163b720ce14729328af34dd61e6eb0108c76d58b --- .../configuration/CmpServersConfig.java | 21 ++++++++++++----- .../configuration/CmpServersConfigLoader.java | 26 +++++++++------------- 2 files changed, 25 insertions(+), 22 deletions(-) (limited to 'certService/src/main/java/org/onap') diff --git a/certService/src/main/java/org/onap/aaf/certservice/certification/configuration/CmpServersConfig.java b/certService/src/main/java/org/onap/aaf/certservice/certification/configuration/CmpServersConfig.java index 105b10e7..414f38bb 100644 --- a/certService/src/main/java/org/onap/aaf/certservice/certification/configuration/CmpServersConfig.java +++ b/certService/src/main/java/org/onap/aaf/certservice/certification/configuration/CmpServersConfig.java @@ -20,21 +20,30 @@ package org.onap.aaf.certservice.certification.configuration; -import java.util.Collections; -import java.util.List; -import javax.annotation.PostConstruct; import org.onap.aaf.certservice.certification.configuration.model.Cmpv2Server; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Configuration; +import javax.annotation.PostConstruct; +import java.io.File; +import java.util.Collections; +import java.util.List; + @Configuration public class CmpServersConfig { - private static final String CMP_SERVERS_CONFIG_FILENAME = "cmpServers.json"; + + @Autowired + private CmpServersConfigLoader cmpServersConfigLoader; + @Value("${app.config.path}") + private String configPath; private List cmpServers; @PostConstruct - private void loadConfiguration() { - cmpServers = Collections.unmodifiableList(new CmpServersConfigLoader().load(CMP_SERVERS_CONFIG_FILENAME)); + void loadConfiguration() { + String configFilePath = configPath + File.separator + CMP_SERVERS_CONFIG_FILENAME; + this.cmpServers = Collections.unmodifiableList(cmpServersConfigLoader.load(configFilePath)); } public List getCmpServers() { diff --git a/certService/src/main/java/org/onap/aaf/certservice/certification/configuration/CmpServersConfigLoader.java b/certService/src/main/java/org/onap/aaf/certservice/certification/configuration/CmpServersConfigLoader.java index b31fbcad..c8415ac0 100644 --- a/certService/src/main/java/org/onap/aaf/certservice/certification/configuration/CmpServersConfigLoader.java +++ b/certService/src/main/java/org/onap/aaf/certservice/certification/configuration/CmpServersConfigLoader.java @@ -21,27 +21,26 @@ package org.onap.aaf.certservice.certification.configuration; import com.fasterxml.jackson.databind.ObjectMapper; -import java.io.File; -import java.io.FileNotFoundException; -import java.io.IOException; -import java.net.URL; -import java.util.ArrayList; -import java.util.List; -import org.onap.aaf.certservice.certification.CertificationModelFactory; import org.onap.aaf.certservice.certification.configuration.model.CmpServers; import org.onap.aaf.certservice.certification.configuration.model.Cmpv2Server; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Component; + +import java.io.File; +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; +@Component class CmpServersConfigLoader { - private static final Logger LOGGER = LoggerFactory.getLogger(CertificationModelFactory.class); + private static final Logger LOGGER = LoggerFactory.getLogger(CmpServersConfigLoader.class); List load(String path) { List result = new ArrayList<>(); try { result = loadConfigFromFile(path).getCmpv2Servers(); - } catch (FileNotFoundException e) { - LOGGER.error("CMP Servers configuration file not found: ", e); + LOGGER.info(String.format("CMP Servers configuration successfully loaded from file '%s'", path)); } catch (IOException e) { LOGGER.error("Exception occurred during CMP Servers configuration loading: ", e); } @@ -50,11 +49,6 @@ class CmpServersConfigLoader { private CmpServers loadConfigFromFile(String path) throws IOException { ObjectMapper objectMapper = new ObjectMapper(); - URL resource = getClass().getClassLoader().getResource(path); - if (resource == null) { - throw new FileNotFoundException(); - } - String configFilePath = resource.getFile(); - return objectMapper.readValue(new File(configFilePath), CmpServers.class); + return objectMapper.readValue(new File(path), CmpServers.class); } } -- cgit 1.2.3-korg