Merge "Added support for using oauth token for Kafka"
[nonrtric/plt/ranpm.git] / datafilecollector / src / main / java / org / onap / dcaegen2 / collectors / datafile / commons / SecurityUtil.java
1 /*-
2  * ============LICENSE_START======================================================================
3  * Copyright (C) 2021 Nokia. All rights reserved.
4  * ===============================================================================================
5  * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
6  * in compliance with the License. You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software distributed under the License
11  * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
12  * or implied. See the License for the specific language governing permissions and limitations under
13  * the License.
14  * ============LICENSE_END========================================================================
15  */
16 package org.onap.dcaegen2.collectors.datafile.commons;
17
18 import java.io.IOException;
19 import java.nio.file.Files;
20 import java.nio.file.Paths;
21
22 import org.slf4j.Logger;
23 import org.slf4j.LoggerFactory;
24
25 /**
26  * Utility class containing functions used for certificates configuration
27  *
28  * @author <a href="mailto:krzysztof.gajewski@nokia.com">Krzysztof Gajewski</a>
29  */
30 public final class SecurityUtil {
31     private SecurityUtil() {
32     }
33
34     private static final Logger logger = LoggerFactory.getLogger(SecurityUtil.class);
35
36     public static String getKeystorePasswordFromFile(String passwordPath) {
37         return getPasswordFromFile(passwordPath, "Keystore");
38     }
39
40     public static String getTruststorePasswordFromFile(String passwordPath) {
41         return getPasswordFromFile(passwordPath, "Truststore");
42     }
43
44     public static String getPasswordFromFile(String passwordPath, String element) {
45         try {
46             return new String(Files.readAllBytes(Paths.get(passwordPath)));
47         } catch (IOException e) {
48             logger.error("{} password file at path: {} cannot be opened ", element, passwordPath);
49         }
50         return "";
51     }
52 }