summaryrefslogtreecommitdiffstats
path: root/src/main/java/org/onap/aai/validation/ValidationServiceApplication.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/org/onap/aai/validation/ValidationServiceApplication.java')
-rw-r--r--src/main/java/org/onap/aai/validation/ValidationServiceApplication.java42
1 files changed, 36 insertions, 6 deletions
diff --git a/src/main/java/org/onap/aai/validation/ValidationServiceApplication.java b/src/main/java/org/onap/aai/validation/ValidationServiceApplication.java
index 409e375..103c6cb 100644
--- a/src/main/java/org/onap/aai/validation/ValidationServiceApplication.java
+++ b/src/main/java/org/onap/aai/validation/ValidationServiceApplication.java
@@ -19,31 +19,61 @@ package org.onap.aai.validation;
import java.util.HashMap;
import java.util.Map;
+import javax.annotation.PostConstruct;
+import org.apache.commons.lang.StringUtils;
import org.eclipse.jetty.util.security.Password;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.onap.aai.validation.config.TopicPropertiesConfig;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.support.SpringBootServletInitializer;
-import org.springframework.context.annotation.ComponentScan;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.Import;
import org.springframework.context.annotation.ImportResource;
+import org.springframework.core.env.Environment;
/**
* Validation Service Spring Boot Application.
*/
-@SpringBootApplication
-@ComponentScan(basePackages = "org.onap.aai.validation.config")
+@Configuration
+@EnableAutoConfiguration
+@Import(TopicPropertiesConfig.class)
@ImportResource("classpath:validation-service-beans.xml")
public class ValidationServiceApplication extends SpringBootServletInitializer {
+ @Autowired
+ private Environment env;
+
public static void main(String[] args) {
Map<String, Object> props = new HashMap<>();
String keyStorePassword = System.getProperty("KEY_STORE_PASSWORD");
- if (keyStorePassword != null && !keyStorePassword.isEmpty()) {
- props.put("server.ssl.key-store-password", Password.deobfuscate(keyStorePassword));
+ if (StringUtils.isEmpty(keyStorePassword)) {
+ throw new IllegalArgumentException("System Property KEY_STORE_PASSWORD not set");
}
+ String deobfuscated = Password.deobfuscate(keyStorePassword);
+ props.put("server.ssl.key-store-password", deobfuscated);
+ props.put("schema.service.ssl.key-store-password", deobfuscated);
+ props.put("schema.service.ssl.trust-store-password", deobfuscated);
new ValidationServiceApplication()
.configure(new SpringApplicationBuilder(ValidationServiceApplication.class).properties(props))
.run(args);
}
+ /**
+ * Set the trust store system properties using default values from the application properties.
+ */
+ @PostConstruct
+ public void setSystemProperties() {
+ String trustStorePath = env.getProperty("server.ssl.key-store");
+ if (trustStorePath != null) {
+ String trustStorePassword = env.getProperty("server.ssl.key-store-password");
+ if (trustStorePassword != null) {
+ System.setProperty("javax.net.ssl.trustStore", trustStorePath);
+ System.setProperty("javax.net.ssl.trustStorePassword", trustStorePassword);
+ } else {
+ throw new IllegalArgumentException("Env property server.ssl.key-store-password not set");
+ }
+ }
+ }
}