2 * Copyright © 2016-2018 European Support Limited
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
17 package org.openecomp.sdc.be.model.jsonjanusgraph.utils;
19 import org.openecomp.sdc.be.datatypes.elements.CapabilityDataDefinition;
20 import org.openecomp.sdc.be.datatypes.elements.ListCapabilityDataDefinition;
21 import org.openecomp.sdc.be.datatypes.elements.MapPropertiesDataDefinition;
22 import org.openecomp.sdc.be.datatypes.elements.PropertyDataDefinition;
23 import org.openecomp.sdc.be.datatypes.elements.SchemaDefinition;
24 import org.openecomp.sdc.be.model.CapabilityDefinition;
25 import org.openecomp.sdc.be.model.ComponentInstanceProperty;
26 import org.openecomp.sdc.be.model.jsonjanusgraph.datamodel.TopologyTemplate;
28 import java.util.ArrayList;
29 import java.util.HashMap;
30 import java.util.List;
33 public class CapabilityTestUtils {
35 public static Map<String, MapPropertiesDataDefinition> createCapPropsForTopologyTemplate(TopologyTemplate topologyTemplate) {
36 Map<String, ListCapabilityDataDefinition> capabilitiesMap = new HashMap<>();
38 List<CapabilityDataDefinition> capabilityDefinitions = new ArrayList<>();
39 CapabilityDefinition capabilityDefinition = createCapabilityDefinition();
41 capabilityDefinitions.add(capabilityDefinition);
42 ListCapabilityDataDefinition listCapabilityDataDefinition = new ListCapabilityDataDefinition(capabilityDefinitions);
43 capabilitiesMap.put(capabilityDefinition.getType(), listCapabilityDataDefinition);
44 topologyTemplate.setCapabilities(capabilitiesMap);
46 List<ComponentInstanceProperty> capPropList = new ArrayList<>();
47 ComponentInstanceProperty instanceProperty = createProperties();
48 capPropList.add(instanceProperty);
50 MapPropertiesDataDefinition dataToCreate = new MapPropertiesDataDefinition();
51 for (ComponentInstanceProperty cip : capPropList) {
52 PropertyDataDefinition propertyDataDefinition = new PropertyDataDefinition(cip);
53 dataToCreate.put(cip.getName(), propertyDataDefinition);
56 Map<String, MapPropertiesDataDefinition> capabilitiesProperties = new HashMap<>();
57 capabilitiesProperties.put(capabilityDefinition.getType() + ModelConverter.CAP_PROP_DELIM +
58 capabilityDefinition.getName(), dataToCreate);
59 return capabilitiesProperties;
62 private static CapabilityDefinition createCapabilityDefinition() {
63 CapabilityDefinition capabilityDefinition = new CapabilityDefinition();
64 capabilityDefinition.setName("cap" + Math.random());
65 capabilityDefinition.setType("tosca.capabilities.network.Bindable");
66 capabilityDefinition.setOwnerId("resourceId");
67 capabilityDefinition.setUniqueId("capUniqueId");
68 List<String> path = new ArrayList<>();
70 capabilityDefinition.setPath(path);
71 return capabilityDefinition;
74 private static ComponentInstanceProperty createProperties() {
75 ComponentInstanceProperty instanceProperty = new ComponentInstanceProperty();
76 instanceProperty.setUniqueId("ComponentInput1_uniqueId");
77 instanceProperty.setType("Integer");
78 instanceProperty.setName("prop_name");
79 instanceProperty.setDescription("prop_description_prop_desc");
80 instanceProperty.setOwnerId("capUniqueId");
81 instanceProperty.setValue("{\"get_input\":\"extcp20_order\"}");
82 instanceProperty.setSchema(new SchemaDefinition());
83 return instanceProperty;