Merge "Reorder modifiers"
[so.git] / bpmn / MSOInfrastructureBPMN / src / main / java / org / openecomp / mso / bpmn / infrastructure / aai / AAICreateResources.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * ONAP - SO
4  * ================================================================================
5  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6  * ================================================================================
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  *
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  * ============LICENSE_END=========================================================
19  */
20
21 package org.openecomp.mso.bpmn.infrastructure.aai;
22
23 import java.util.HashMap;
24 import java.util.Map;
25 import java.util.Optional;
26
27 import org.onap.aai.domain.yang.v12.GenericVnf;
28 import org.openecomp.mso.client.aai.AAIObjectType;
29 import org.openecomp.mso.client.aai.AAIResourcesClient;
30 import org.openecomp.mso.client.aai.entities.AAIResultWrapper;
31 import org.openecomp.mso.client.aai.entities.uri.AAIResourceUri;
32 import org.openecomp.mso.client.aai.entities.uri.AAIUriFactory;
33
34 public class AAICreateResources {
35
36
37         public void createAAIProject (String projectName, String serviceInstance){
38                 AAIResourceUri projectURI = AAIUriFactory.createResourceUri(AAIObjectType.PROJECT, projectName);
39                 AAIResourceUri serviceInstanceURI = AAIUriFactory.createResourceUri(AAIObjectType.SERVICE_INSTANCE, serviceInstance);
40                 AAIResourcesClient aaiRC = new AAIResourcesClient();      
41                 aaiRC.createIfNotExists(projectURI, Optional.empty()).connect(projectURI, serviceInstanceURI);
42                 
43         }
44         
45         public void createAAIOwningEntity(String owningEntityId, String owningEntityName,String serviceInstance){
46                 AAIResourceUri owningEntityURI = AAIUriFactory.createResourceUri(AAIObjectType.OWNING_ENTITY, owningEntityId);
47                 AAIResourceUri serviceInstanceURI = AAIUriFactory.createResourceUri(AAIObjectType.SERVICE_INSTANCE, serviceInstance);
48                 Map<String, String> hashMap= new HashMap<>();
49                 hashMap.put("owning-entity-name", owningEntityName);    
50                 AAIResourcesClient aaiRC = new AAIResourcesClient();
51                 aaiRC.createIfNotExists(owningEntityURI, Optional.of(hashMap)).connect(owningEntityURI, serviceInstanceURI);
52         }
53
54         public boolean existsOwningEntity(String owningEntityId){
55                 AAIResourceUri owningEntityURI = AAIUriFactory.createResourceUri(AAIObjectType.OWNING_ENTITY, owningEntityId);
56                 AAIResourcesClient aaiRC = new AAIResourcesClient();      
57                 return aaiRC.exists(owningEntityURI);
58         }
59         
60         public void connectOwningEntityandServiceInstance (String owningEntityId, String serviceInstance){
61                 AAIResourceUri owningEntityURI = AAIUriFactory.createResourceUri(AAIObjectType.OWNING_ENTITY, owningEntityId);
62                 AAIResourceUri serviceInstanceURI = AAIUriFactory.createResourceUri(AAIObjectType.SERVICE_INSTANCE, serviceInstance);
63                 AAIResourcesClient aaiRC = new AAIResourcesClient();
64                 aaiRC.connect(owningEntityURI, serviceInstanceURI);
65         }
66         
67         public void createAAIPlatform(String platformName,String vnfId){
68                 AAIResourceUri platformURI = AAIUriFactory.createResourceUri(AAIObjectType.PLATFORM, platformName);
69                 AAIResourceUri genericVnfURI = AAIUriFactory.createResourceUri(AAIObjectType.GENERIC_VNF,vnfId);
70                 AAIResourcesClient aaiRC = new AAIResourcesClient();                              
71                 aaiRC.createIfNotExists(platformURI, Optional.empty()).connect(platformURI, genericVnfURI);
72         }
73         
74         public void createAAILineOfBusiness(String lineOfBusiness,String vnfId){
75                 AAIResourceUri lineOfBusinessURI = AAIUriFactory.createResourceUri(AAIObjectType.LINE_OF_BUSINESS, lineOfBusiness);
76                 AAIResourceUri genericVnfURI = AAIUriFactory.createResourceUri(AAIObjectType.GENERIC_VNF,vnfId);
77                 AAIResourcesClient aaiRC = new AAIResourcesClient();                              
78                 aaiRC.createIfNotExists(lineOfBusinessURI, Optional.empty()).connect(lineOfBusinessURI, genericVnfURI);
79         }
80         public void createAAIServiceInstance(String globalCustomerId, String serviceType, String serviceInstanceId){
81                 AAIResourceUri serviceInstanceURI = AAIUriFactory.createResourceUri(AAIObjectType.SERVICE_INSTANCE, globalCustomerId,serviceType,serviceInstanceId);
82                 AAIResourcesClient aaiRC = new AAIResourcesClient();      
83                 aaiRC.createIfNotExists(serviceInstanceURI, Optional.empty());
84         }
85         
86         public Optional<GenericVnf> getVnfInstance(String vnfId){
87                 try{
88                         AAIResourceUri vnfURI = AAIUriFactory.createResourceUri(AAIObjectType.GENERIC_VNF, vnfId);
89                         AAIResourcesClient aaiRC = new AAIResourcesClient();
90                         AAIResultWrapper aaiResponse = aaiRC.get(vnfURI);
91                         Optional<GenericVnf> vnf = aaiResponse.asBean(GenericVnf.class);
92                         return vnf;
93                 } catch (Exception ex){
94                         return Optional.empty();
95                 }
96         }
97         
98 }