vid-automation selenium tests
[vid.git] / vid-automation / src / main / java / vid / automation / test / services / ServicesService.java
1 package vid.automation.test.services;
2
3 import com.fasterxml.jackson.databind.ObjectMapper;
4 import org.openecomp.sdc.ci.tests.utilities.FileHandling;
5 import vid.automation.test.model.Service;
6 import vid.automation.test.model.ServiceModel;
7 import vid.automation.test.model.ServiceModelsList;
8 import vid.automation.test.model.ServicesObject;
9 import vid.automation.test.utils.ReadFile;
10
11 import java.io.File;
12 import java.io.IOException;
13 import java.util.HashMap;
14
15 /**
16  * Created by itzikliderman on 08/09/2017.
17  */
18 public class ServicesService {
19     private HashMap<String, Service> services;
20     private HashMap<String, ServiceModel> serviceModels;
21
22     public ServicesService() {
23         services = getServicesFromJson();
24         serviceModels = getServiceInstancesFromJson();
25     }
26
27     HashMap<String, Service> getServicesFromJson() {
28         String fileName = "services";
29         ObjectMapper mapper = new ObjectMapper();
30         ServicesObject servicesObject;
31         try {
32             File servicesFile = FileHandling.getConfigFile(fileName);
33             if(!servicesFile.exists()) {
34                 String basePath = System.getProperty("BASE_PATH");
35                 servicesFile = new File( basePath + File.separator + "conf" + File.separator + fileName);
36             }
37             servicesObject = mapper.readValue(servicesFile, ServicesObject.class);
38             return servicesObject.services;
39         } catch (IOException e) {
40             e.printStackTrace();
41             return null;
42         } catch (Exception e) {
43             e.printStackTrace();
44             return null;
45         }
46     }
47
48     HashMap<String, ServiceModel> getServiceInstancesFromJson() {
49         return ReadFile.getJsonFile("serviceModels", ServiceModelsList.class).serviceModels;
50     }
51
52     public Service getService(String serviceId) {
53         return services.get(serviceId);
54     }
55
56     public ServiceModel getServiceModel(String modelUUID) {
57         return (ServiceModel) serviceModels.get(modelUUID);
58     }
59 }