fix use of user credentials logic
[sdc.git] / test-apis-ci / src / main / java / org / openecomp / sdc / ci / tests / config / UserCredentialsFromFile.java
index 42f06f2..c6e684c 100644 (file)
@@ -5,55 +5,34 @@ import org.openecomp.sdc.ci.tests.utils.general.FileHandling;
 import org.yaml.snakeyaml.Yaml;
 
 import java.io.File;
-import java.io.IOException;
-import java.io.InputStream;
-import java.nio.file.Files;
-import java.nio.file.Paths;
+import java.util.HashMap;
 import java.util.Map;
 
 public class UserCredentialsFromFile {
 
     private static final String CREDENTIALS_FILE = "credentials.yaml";
-    private static Map<?, ?> credentials;
+    private static Map<String, UserCredentials> credentials;
     private static Yaml yaml = new Yaml();
 
-    private static UserCredentialsFromFile credentialsFromFile;
-//    private UserCredentialsFromFile() {
-//
-//    }
+    private static final UserCredentialsFromFile instance = new UserCredentialsFromFile();
 
-    public synchronized static UserCredentialsFromFile getInstance() {
-        if (credentialsFromFile == null) {
-            try {
-                credentialsFromFile = new UserCredentialsFromFile();
-            } catch (Exception e) {
-                e.printStackTrace();
-                return null;
-            }
-        }
-        return credentialsFromFile;
+    public static UserCredentialsFromFile getInstance(){
+        return instance;
     }
 
-    private void UserCredentialsFromFile() throws IOException {
+    private UserCredentialsFromFile() {
 
         credentials = null;
 
         File credentialsFileRemote = new File(FileHandling.getBasePath() + File.separator + "conf" + File.separator + CREDENTIALS_FILE);
 //             File credentialsFileLocal = new File(FileHandling.getConfFilesPath() + CREDENTIALS_FILE);
-        File credentialFile = new File(FileHandling.getSdcVnfsPath() + File.separator + "conf"
+        File credentialsFileLocal = new File(FileHandling.getSdcVnfsPath() + File.separator + "conf"
                 + File.separator + CREDENTIALS_FILE);
-
-        if (false == credentialFile.exists()) {
-            throw new RuntimeException("The config file " + credentialFile + " cannot be found.");
-        }
-
-
-        File[] credentialFiles = {credentialsFileRemote, credentialFile};
-
+        File[] credentialFiles = {credentialsFileRemote, credentialsFileLocal};
         for (File credentialsFile : credentialFiles){
             if (credentialsFile.exists()){
                 try {
-                    credentials = FileHandling.parseYamlFile(credentialsFile.getAbsolutePath());
+                    credentials = (Map<String, UserCredentials>) FileHandling.parseYamlFile(credentialsFile.getAbsolutePath());
                 } catch (Exception e) {
                     e.printStackTrace();
                 }
@@ -62,19 +41,16 @@ public class UserCredentialsFromFile {
         }
 
 
-
     }
 
-
-    public static UserCredentials getUserCredentialsByRole(String userRole) throws Exception {
-        @SuppressWarnings("unchecked")
+    public UserCredentials getUserCredentialsByRole(String userRole) {
         Map<String, String> credentialsMap = (Map<String, String>) credentials.get(userRole);
-        String user = (String) credentialsMap.get("username");
-        String password = (String) credentialsMap.get("password");
-        String firstname = (String) credentialsMap.get("firstname");
-        String lastname = (String) credentialsMap.get("lastname");
-
-        return new UserCredentials(user, password, firstname, lastname, userRole);
+        UserCredentials userCredentials = new UserCredentials();
+        userCredentials.setUserId(credentialsMap.get("username"));
+        userCredentials.setFirstName(credentialsMap.get("firstname"));
+        userCredentials.setLastName(credentialsMap.get("lastname"));
+        userCredentials.setPassword(credentialsMap.get("password"));
+        return  userCredentials;
     }
 
 }