From de0a668d580f5d00db09bc4e0836b8ee2c98d9bf Mon Sep 17 00:00:00 2001 From: Sebastien Premont-Tendland Date: Mon, 17 Feb 2020 18:05:05 -0500 Subject: Add ability to resolve environment variables when reading PrimaryDatabaseConfiguration This is needed to remove hardcoded password in application.properties file by being able to resolve environment variables. OOM would pass the username and password through environment variables. Issue-ID: CCSDK-2095 Signed-off-by: Sebastien Premont-Tendland Change-Id: Ia19ef0ddee29509b0378b048bf58c700870ecce4 --- .../cds/blueprintsprocessor/core/BluePrintCoreConfiguration.kt | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'ms/blueprintsprocessor/modules/commons/processor-core') diff --git a/ms/blueprintsprocessor/modules/commons/processor-core/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/core/BluePrintCoreConfiguration.kt b/ms/blueprintsprocessor/modules/commons/processor-core/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/core/BluePrintCoreConfiguration.kt index 95b2c0154..a86dcc40f 100644 --- a/ms/blueprintsprocessor/modules/commons/processor-core/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/core/BluePrintCoreConfiguration.kt +++ b/ms/blueprintsprocessor/modules/commons/processor-core/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/core/BluePrintCoreConfiguration.kt @@ -25,7 +25,6 @@ import org.slf4j.LoggerFactory import org.springframework.beans.factory.annotation.Autowired import org.springframework.boot.context.properties.bind.Bindable import org.springframework.boot.context.properties.bind.Binder -import org.springframework.boot.context.properties.source.ConfigurationPropertySources import org.springframework.context.ApplicationContext import org.springframework.context.ApplicationContextAware import org.springframework.context.annotation.Bean @@ -55,18 +54,17 @@ open class BluePrintPropertyConfiguration { @Bean open fun bluePrintPropertyBinder(): Binder { - val configurationPropertySource = ConfigurationPropertySources.get(environment) - return Binder(configurationPropertySource) + return Binder.get(environment) } } @Service -open class BluePrintPropertiesService(private var bluePrintPropertyBinder: Binder) { +open class BluePrintPropertiesService(private var bluePrintPropertyConfig: BluePrintPropertyConfiguration) { private val log = logger(BluePrintPropertiesService::class) fun propertyBeanType(prefix: String, type: Class): T { return try { - bluePrintPropertyBinder.bind(prefix, Bindable.of(type)).get() + bluePrintPropertyConfig.bluePrintPropertyBinder().bind(prefix, Bindable.of(type)).get() } catch (e: NoSuchElementException) { val errMsg = "Error: missing property \"$prefix\"... Check the application.properties file." log.error(errMsg) -- cgit 1.2.3-korg