Fix sonar issues
[aai/babel.git] / src / main / java / org / onap / aai / babel / config / PropertyPasswordConfiguration.java
index c8efa01..7539d41 100644 (file)
  */
 package org.onap.aai.babel.config;
 
-import org.apache.commons.io.IOUtils;
+import java.nio.charset.StandardCharsets;
 import org.eclipse.jetty.util.security.Password;
-import org.onap.aai.babel.logging.LogHelper;
 import org.springframework.context.ApplicationContextInitializer;
 import org.springframework.context.ConfigurableApplicationContext;
 import org.springframework.core.env.ConfigurableEnvironment;
 import org.springframework.core.env.MapPropertySource;
 import org.springframework.core.env.PropertySource;
 
-import java.io.File;
 import java.io.FileInputStream;
 import java.io.IOException;
 import java.io.InputStream;
@@ -38,79 +36,50 @@ import java.util.Properties;
 
 public class PropertyPasswordConfiguration implements ApplicationContextInitializer<ConfigurableApplicationContext> {
 
+    private static final String PROP_KEY_STORE_PASS = "server.ssl.key-store-password";
+
     @Override
     public void initialize(ConfigurableApplicationContext applicationContext) {
 
         Map<String, Object> sslProps = new LinkedHashMap<>();
         ConfigurableEnvironment environment = applicationContext.getEnvironment();
         String certPath = environment.getProperty("server.certs.location");
-        File passwordFile = null;
-        File passphrasesFile = null;
-        InputStream passwordStream = null;
-        InputStream passphrasesStream = null;
         String keystorePassword = null;
         String truststorePassword = null;
 
         if (certPath != null) {
-            try {
-                passwordFile = new File(certPath + ".password");
-                passwordStream = new FileInputStream(passwordFile);
-
-                if (passwordStream != null) {
-                    keystorePassword = IOUtils.toString(passwordStream);
-                    if (keystorePassword != null) {
-                        keystorePassword = keystorePassword.trim();
-                    }
-                    sslProps.put("server.ssl.key-store-password", keystorePassword);
-                }
+            try (InputStream passwordStream = new FileInputStream(certPath + ".password")) {
+                keystorePassword = new String(passwordStream.readAllBytes(), StandardCharsets.UTF_8);
+                keystorePassword = keystorePassword.trim();
+                sslProps.put(PROP_KEY_STORE_PASS, keystorePassword);
             } catch (IOException e) {
-            } finally {
-                if (passwordStream != null) {
-                    try {
-                        passwordStream.close();
-                    } catch (Exception e) {
-                    }
-                }
+                keystorePassword = null;
             }
-            try {
-                passphrasesFile = new File(certPath + ".passphrases");
-                passphrasesStream = new FileInputStream(passphrasesFile);
-
-                if (passphrasesStream != null) {
-                    Properties passphrasesProps = new Properties();
-                    passphrasesProps.load(passphrasesStream);
-                    truststorePassword = passphrasesProps.getProperty("cadi_truststore_password");
-                    if (truststorePassword != null) {
-                        truststorePassword = truststorePassword.trim();
-                    }
-                    sslProps.put("server.ssl.trust-store-password", truststorePassword);
-                } else {
+            try (InputStream passphrasesStream = new FileInputStream(certPath + ".passphrases");) {
+                Properties passphrasesProps = new Properties();
+                passphrasesProps.load(passphrasesStream);
+                truststorePassword = passphrasesProps.getProperty("cadi_truststore_password");
+                if (truststorePassword != null) {
+                    truststorePassword = truststorePassword.trim();
                 }
+                sslProps.put("server.ssl.trust-store-password", truststorePassword);
             } catch (IOException e) {
-            } finally {
-                if (passphrasesStream != null) {
-                    try {
-                        passphrasesStream.close();
-                    } catch (Exception e) {
-                    }
-                }
+                truststorePassword = null;
             }
         }
         if (keystorePassword == null || keystorePassword.isEmpty()) {
             keystorePassword = System.getProperty("KEY_STORE_PASSWORD");
             if (keystorePassword != null && (!keystorePassword.isEmpty()) ) {
-                System.setProperty("server.ssl.key-store-password", new Password(keystorePassword).toString());
+                System.setProperty(PROP_KEY_STORE_PASS, new Password(keystorePassword).toString());
             }
             if (keystorePassword == null || keystorePassword.isEmpty()) {
                 throw new IllegalArgumentException("Mandatory property KEY_STORE_PASSWORD not set");
             }
         }
         else {
-            sslProps.put("server.ssl.key-store-password", keystorePassword);
+            sslProps.put(PROP_KEY_STORE_PASS, keystorePassword);
         }
-        if (truststorePassword == null || truststorePassword.isEmpty()) {
-        }
-        else {
+        if (truststorePassword != null && !truststorePassword.isEmpty()) {
             sslProps.put("server.ssl.trust-store-password", truststorePassword);
         }
         if (!sslProps.isEmpty()) {