f2fb247027606e1e0593eb96f6105d5cdb8d2305
[policy/drools-applications.git] / aai / src / test / java / org / openecomp / policy / aai / TestDemo.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * aai
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.policy.aai;
22
23 import java.util.HashMap;
24 import java.util.LinkedList;
25 import java.util.Map;
26 import java.util.UUID;
27
28 import org.junit.Ignore;
29 import org.junit.Test;
30 import org.openecomp.policy.aai.AAINQF199.AAINQF199CloudRegion;
31 import org.openecomp.policy.aai.AAINQF199.AAINQF199ExtraProperties;
32 import org.openecomp.policy.aai.AAINQF199.AAINQF199ExtraProperty;
33 import org.openecomp.policy.aai.AAINQF199.AAINQF199GenericVNF;
34 import org.openecomp.policy.aai.AAINQF199.AAINQF199VServer;
35 import org.openecomp.policy.aai.AAINQF199.AAINQF199VfModule;
36 import org.openecomp.policy.aai.AAINQF199.AAINQF199InstanceFilters;
37 import org.openecomp.policy.aai.AAINQF199.AAINQF199InventoryResponseItem;
38 import org.openecomp.policy.aai.AAINQF199.AAINQF199InventoryResponseItems;
39 import org.openecomp.policy.aai.AAINQF199.AAINQF199Manager;
40 import org.openecomp.policy.aai.AAINQF199.AAINQF199NamedQuery;
41 import org.openecomp.policy.aai.AAINQF199.AAINQF199QueryParameters;
42 import org.openecomp.policy.aai.AAINQF199.AAINQF199Response;
43 import org.openecomp.policy.aai.AAINQF199.AAINQF199ServiceInstance;
44 import org.openecomp.policy.aai.AAINQF199.AAINQF199Tenant;
45 import org.openecomp.policy.aai.AAINQF199.AAINQF199Request;
46 import org.openecomp.policy.aai.util.Serialization;
47
48 public class TestDemo {
49
50         @Test
51         public void test() {
52                 
53                 //
54                 // Test AAINQF199Request
55                 //
56                 AAINQF199Request request = new AAINQF199Request();
57                 request.queryParameters = new AAINQF199QueryParameters();
58                 request.queryParameters.namedQuery = new AAINQF199NamedQuery();
59                 request.queryParameters.namedQuery.namedQueryUUID = UUID.fromString("f199cb88-5e69-4b1f-93e0-6f257877d066");
60                 request.instanceFilters = new AAINQF199InstanceFilters();
61                 Map<String, Map<String, String>> vserver = new HashMap<String, Map<String, String>>();
62                 Map<String, String> values = new HashMap<String, String>();
63                 values.put("vserver-name", "dfw1lb01lb01");
64                 vserver.put("vserver", values);
65                 request.instanceFilters.instanceFilter.add(vserver);
66                 
67                 String body = Serialization.gsonPretty.toJson(request);
68                 
69                 System.out.println(body);
70                 
71                 System.out.println();
72                 
73                 
74 /*              
75                 AAINQF199InventoryResponseItem serviceItem = new AAINQF199InventoryResponseItem();
76                 serviceItem.serviceInstance = new AAINQF199ServiceInstance();
77                 serviceItem.serviceInstance.serviceInstanceID = "service-instance-id-Manisha-01";
78                                 
79                 AAINQF199InventoryResponseItem genericVNFItem = new AAINQF199InventoryResponseItem();
80                 genericVNFItem.genericVNF = new AAINQF199GenericVNF();
81                 genericVNFItem.genericVNF.vnfID = "generic-vnf-id-Manisha-01";
82                 genericVNFItem.items = new AAINQF199InventoryResponseItems();
83                 genericVNFItem.items.inventoryResponseItems = new LinkedList<AAINQF199InventoryResponseItem>();
84                 genericVNFItem.items.inventoryResponseItems.add(serviceItem);
85                 
86                 AAINQF199InventoryResponseItem vserverItem = new AAINQF199InventoryResponseItem();
87                 vserverItem.vserver = new AAINQF199VServer();
88                 vserverItem.vserver.vserverId = "vserver-id-Manisha-01";
89                 vserverItem.vserver.vserverName = "vserver-name-16102016-aai3255-data-11-1";
90                 vserverItem.items = new AAINQF199InventoryResponseItems();
91                 vserverItem.items.inventoryResponseItems = new LinkedList<AAINQF199InventoryResponseItem>();
92                 vserverItem.items.inventoryResponseItems.add(genericVNFItem);
93 */      
94                 
95                 
96                 //
97                 // Test AAINQF199Response
98                 //
99                 AAINQF199InventoryResponseItem serviceItem = new AAINQF199InventoryResponseItem();
100                 serviceItem.modelName = "service-instance";
101                 serviceItem.serviceInstance = new AAINQF199ServiceInstance();
102                 serviceItem.serviceInstance.serviceInstanceID = "dhv-test-vhnfportal-service-instance-id";
103                 serviceItem.serviceInstance.serviceInstanceName = "dhv-test-service-instance-name1";
104                 serviceItem.serviceInstance.personaModelId = "82194af1-3c2c-485a-8f44-420e22a9eaa4";
105                 serviceItem.serviceInstance.personaModelVersion = "1.0";
106                 serviceItem.serviceInstance.serviceInstanceLocationId = "dhv-test-service-instance-location-id1";
107                 serviceItem.serviceInstance.resourceVersion = "1485366092";
108                 serviceItem.extraProperties = new AAINQF199ExtraProperties();
109                 serviceItem.extraProperties.extraProperty.add(new AAINQF199ExtraProperty("model.model-name", "service-instance"));
110                 serviceItem.extraProperties.extraProperty.add(new AAINQF199ExtraProperty("model.model-type", "widget"));
111                 serviceItem.extraProperties.extraProperty.add(new AAINQF199ExtraProperty("model.model-version", "1.0"));
112                 serviceItem.extraProperties.extraProperty.add(new AAINQF199ExtraProperty("model.model-id", "82194af1-3c2c-485a-8f44-420e22a9eaa4"));
113                 serviceItem.extraProperties.extraProperty.add(new AAINQF199ExtraProperty("model.model-name", "46b92144-923a-4d20-b85a-3cbd847668a9"));
114                 
115                 
116                 AAINQF199InventoryResponseItem vfModuleItem = new AAINQF199InventoryResponseItem();
117                 vfModuleItem.modelName = "vf-module";
118                 vfModuleItem.vfModule = new AAINQF199VfModule();
119                 vfModuleItem.vfModule.vfModuleId = "example-vf-module-id-val-49261";
120                 vfModuleItem.vfModule.vfModuleName = "example-vf-module-name-val-73074";
121                 vfModuleItem.vfModule.heatStackId = "example-heat-stack-id-val-86300";
122                 vfModuleItem.vfModule.orchestrationStatus = "example-orchestration-status-val-56523";
123                 vfModuleItem.vfModule.isBaseVfModule = true;
124                 vfModuleItem.vfModule.resourceVersion = "1485366450";
125                 vfModuleItem.vfModule.personaModelId = "ef86f9c5-2165-44f3-8fc3-96018b609ea5";
126                 vfModuleItem.vfModule.personaModelVersion = "1.0";
127                 vfModuleItem.vfModule.widgetModelId = "example-widget-model-id-val-92571";
128                 vfModuleItem.vfModule.widgetModelVersion = "example-widget-model-version-val-83317";
129                 vfModuleItem.vfModule.contrailServiceInstanceFqdn = "example-contrail-service-instance-fqdn-val-86796";
130                 vfModuleItem.extraProperties = new AAINQF199ExtraProperties();
131                 vfModuleItem.extraProperties.extraProperty.add(new AAINQF199ExtraProperty("model.model-name", "vf-module"));
132                 vfModuleItem.extraProperties.extraProperty.add(new AAINQF199ExtraProperty("model.model-type", "widget"));
133                 vfModuleItem.extraProperties.extraProperty.add(new AAINQF199ExtraProperty("model.model-version", "1.0"));
134                 vfModuleItem.extraProperties.extraProperty.add(new AAINQF199ExtraProperty("model.model-id", "ef86f9c5-2165-44f3-8fc3-96018b609ea5"));
135                 vfModuleItem.extraProperties.extraProperty.add(new AAINQF199ExtraProperty("model.model-name", "c00563ae-812b-4e62-8330-7c4d0f47088a"));
136                 
137                 
138                 AAINQF199InventoryResponseItem genericVNFItem = new AAINQF199InventoryResponseItem();
139                 genericVNFItem.modelName = "generic-vnf";
140                 genericVNFItem.genericVNF = new AAINQF199GenericVNF();
141                 genericVNFItem.genericVNF.vnfID = "dhv-test-gvnf";
142                 genericVNFItem.genericVNF.vnfName = "dhv-test-gvnf-name";
143                 genericVNFItem.genericVNF.vnfName2 = "dhv-test-gvnf-name2";
144                 genericVNFItem.genericVNF.vnfType = "SW";
145                 genericVNFItem.genericVNF.serviceId = "d7bb0a21-66f2-4e6d-87d9-9ef3ced63ae4";
146                 genericVNFItem.genericVNF.provStatus = "PREPROV";
147                 genericVNFItem.genericVNF.operationalState = "dhv-test-operational-state";
148                 genericVNFItem.genericVNF.ipv4OamAddress = "dhv-test-gvnf-ipv4-oam-address";
149                 genericVNFItem.genericVNF.ipv4Loopback0Address = "dhv-test-gvnfipv4-loopback0-address";
150                 genericVNFItem.genericVNF.inMaint = false;
151                 genericVNFItem.genericVNF.isClosedLoopDisabled = false;
152                 genericVNFItem.genericVNF.resourceVersion = "1485366450";
153                 genericVNFItem.genericVNF.encrypedAccessFlag = true;
154                 genericVNFItem.genericVNF.personaModelId = "acc6edd8-a8d4-4b93-afaa-0994068be14c";
155                 genericVNFItem.genericVNF.personaModelVersion = "1.0";
156                 genericVNFItem.extraProperties = new AAINQF199ExtraProperties();
157                 genericVNFItem.extraProperties.extraProperty = new LinkedList<AAINQF199ExtraProperty>();
158                 genericVNFItem.extraProperties.extraProperty.add(new AAINQF199ExtraProperty("model.model-name", "generic-vnf"));
159                 genericVNFItem.extraProperties.extraProperty.add(new AAINQF199ExtraProperty("model.model-type", "widget"));
160                 genericVNFItem.extraProperties.extraProperty.add(new AAINQF199ExtraProperty("model.model-version", "1.0"));
161                 genericVNFItem.extraProperties.extraProperty.add(new AAINQF199ExtraProperty("model.model-id", "acc6edd8-a8d4-4b93-afaa-0994068be14c"));
162                 genericVNFItem.extraProperties.extraProperty.add(new AAINQF199ExtraProperty("model.model-name-version-id", "93a6166f-b3d5-4f06-b4ba-aed48d009ad9"));
163                 genericVNFItem.items = new AAINQF199InventoryResponseItems();
164                 genericVNFItem.items.inventoryResponseItems = new LinkedList<AAINQF199InventoryResponseItem>();
165                 genericVNFItem.items.inventoryResponseItems.add(serviceItem);
166                 genericVNFItem.items.inventoryResponseItems.add(vfModuleItem);
167                 
168                 
169                 AAINQF199InventoryResponseItem cloudItem = new AAINQF199InventoryResponseItem();
170                 cloudItem.cloudRegion = new AAINQF199CloudRegion();
171                 cloudItem.cloudRegion.cloudOwner = "OWNER";
172                 cloudItem.cloudRegion.cloudRegionId = "REGIONID";
173                 cloudItem.cloudRegion.cloudRegionVersion = "2.5";
174                 cloudItem.cloudRegion.complexName = "COMPLEXNAME";
175                 cloudItem.cloudRegion.resourceVersion = "1485365988";
176                 
177                 
178                 AAINQF199InventoryResponseItem tenantItem = new AAINQF199InventoryResponseItem();
179                 tenantItem.tenant = new AAINQF199Tenant();
180                 tenantItem.tenant.tenantId = "dhv-test-tenant";
181                 tenantItem.tenant.tenantName = "dhv-test-tenant-name";
182                 tenantItem.tenant.resourceVersion = "1485366334";
183                 tenantItem.items = new AAINQF199InventoryResponseItems();
184                 tenantItem.items.inventoryResponseItems = new LinkedList<AAINQF199InventoryResponseItem>();
185                 tenantItem.items.inventoryResponseItems.add(cloudItem);
186                 
187                 
188                 AAINQF199InventoryResponseItem vserverItem = new AAINQF199InventoryResponseItem();
189                 vserverItem.vserver = new AAINQF199VServer();
190                 vserverItem.vserver.vserverId = "dhv-test-vserver";
191                 vserverItem.vserver.vserverName = "dhv-test-vserver-name";
192                 vserverItem.vserver.vserverName2 = "dhv-test-vserver-name2";
193                 vserverItem.vserver.provStatus = "PREPROV";
194                 vserverItem.vserver.vserverSelflink = "dhv-test-vserver-selflink";
195                 vserverItem.vserver.inMaint = false;
196                 vserverItem.vserver.isClosedLoopDisabled = false;
197                 vserverItem.vserver.resourceVersion = "1485366417";
198                 vserverItem.items = new AAINQF199InventoryResponseItems();
199                 vserverItem.items.inventoryResponseItems = new LinkedList<AAINQF199InventoryResponseItem>();
200                 vserverItem.items.inventoryResponseItems.add(genericVNFItem);
201                 vserverItem.items.inventoryResponseItems.add(tenantItem);
202                 
203                 
204                 AAINQF199Response aaiResponse = new AAINQF199Response();
205                 aaiResponse.inventoryResponseItems.add(vserverItem);
206                 
207                 body = Serialization.gsonPretty.toJson(aaiResponse);
208                 
209                 System.out.println(body);
210                 
211                 
212         }
213         
214         @Ignore
215         @Test
216         public void testHttp() {
217                 AAINQF199Request request = new AAINQF199Request();
218                 request.queryParameters = new AAINQF199QueryParameters();
219                 request.queryParameters.namedQuery = new AAINQF199NamedQuery();
220                 request.queryParameters.namedQuery.namedQueryUUID = UUID.fromString("f199cb88-5e69-4b1f-93e0-6f257877d066");
221                 request.instanceFilters = new AAINQF199InstanceFilters();
222                 Map<String, Map<String, String>> vserver = new HashMap<String, Map<String, String>>();
223                 Map<String, String> values = new HashMap<String, String>();
224                 values.put("vserver-name", "dfw1lb01lb01");
225                 vserver.put("vserver", values);
226                 request.instanceFilters.instanceFilter.add(vserver);
227                 
228                 String body = Serialization.gsonPretty.toJson(request);
229                 
230                 System.out.println(body);
231                 
232                 AAINQF199Response response = AAINQF199Manager.postQuery("http://localhost:8080/TestREST/Test", "POLICY", "POLICY", request, UUID.randomUUID());
233                 
234                 body = Serialization.gsonPretty.toJson(response);
235                 
236                 System.out.println(body);
237                 
238         }
239         
240 }