2 * ============LICENSE_START=======================================================
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
11 * http://www.apache.org/licenses/LICENSE-2.0
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=========================================================
21 package org.onap.so.adapters.nwrest;
25 import java.util.HashMap;
26 import java.util.List;
29 import javax.xml.bind.annotation.XmlRootElement;
31 import org.onap.so.entity.MsoRequest;
32 import org.onap.so.openstack.beans.Subnet;
34 import com.fasterxml.jackson.annotation.JsonIgnore;
35 import com.fasterxml.jackson.annotation.JsonProperty;
36 import com.fasterxml.jackson.annotation.JsonRootName;
40 Map<String, String> elements when marshalled to XML produce a list of <entry><key>${MsoUtils.xmlEscape(key)}</key><value>${MsoUtils.xmlEscape(value)}</value></entry> elements.
41 When marshalling to JSON they create a list of "${key}" : "${value}" pairs with no extra wrappers.
43 @JsonRootName("createNetworkRequest")
44 @XmlRootElement(name = "createNetworkRequest")
45 public class CreateNetworkRequest extends NetworkRequestCommon {
49 private static final long serialVersionUID = -8984362978831333521L;
50 private String cloudSiteId;
51 private String tenantId;
52 private String networkId;
53 private String networkName;
54 private String networkType;
55 private String networkTypeVersion;
56 private String modelCustomizationUuid;
57 private NetworkTechnology networkTechnology = NetworkTechnology.NEUTRON;
58 private List<Subnet> subnets;
59 private ProviderVlanNetwork providerVlanNetwork;
60 private ContrailNetwork contrailNetwork;
61 private Boolean failIfExists = false;
62 private Boolean backout = true;
63 private Map<String,String> networkParams = new HashMap<>();
64 private MsoRequest msoRequest = new MsoRequest();
66 private boolean contrailRequest;
68 public CreateNetworkRequest() {
72 public String getCloudSiteId() {
76 public void setCloudSiteId(String cloudSiteId) {
77 this.cloudSiteId = cloudSiteId;
80 public String getTenantId() {
84 public void setTenantId(String tenantId) {
85 this.tenantId = tenantId;
88 public String getNetworkId() {
92 public void setNetworkId(String networkId) {
93 this.networkId = networkId;
96 public String getNetworkName() {
100 public void setNetworkName(String networkName) {
101 this.networkName = networkName;
104 public String getNetworkType() {
108 public void setNetworkType(String networkType) {
109 this.networkType = networkType;
112 public String getModelCustomizationUuid() {
113 return this.modelCustomizationUuid;
116 public void setModelCustomizationUuid(String modelCustomizationUuid) {
117 this.modelCustomizationUuid = modelCustomizationUuid;
120 public String getNetworkTypeVersion() {
121 return networkTypeVersion;
124 public void setNetworkTypeVersion(String networkTypeVersion) {
125 this.networkTypeVersion = networkTypeVersion;
128 public NetworkTechnology getNetworkTechnology() {
129 return networkTechnology;
132 public void setNetworkTechnology(NetworkTechnology networkTechnology) {
133 this.networkTechnology = networkTechnology;
134 this.contrailRequest = determineContrail();
137 public List<Subnet> getSubnets() {
141 public void setSubnets(List<Subnet> subnets) {
142 this.subnets = subnets;
145 public ProviderVlanNetwork getProviderVlanNetwork() {
146 return providerVlanNetwork;
149 public void setProviderVlanNetwork(ProviderVlanNetwork providerVlanNetwork) {
150 this.providerVlanNetwork = providerVlanNetwork;
153 public ContrailNetwork getContrailNetwork() {
154 return contrailNetwork;
157 public void setContrailNetwork(ContrailNetwork contrailNetwork) {
158 this.contrailNetwork = contrailNetwork;
159 this.contrailRequest = determineContrail();
162 public Boolean getFailIfExists() {
166 public void setFailIfExists(Boolean failIfExists) {
167 this.failIfExists = failIfExists;
170 public Boolean getBackout() {
174 public void setBackout(Boolean backout) {
175 this.backout = backout;
178 public Map<String, String> getNetworkParams() {
179 return networkParams;
182 public void setNetworkParams(Map<String, String> networkParams) {
183 this.networkParams = networkParams;
186 public MsoRequest getMsoRequest() {
190 public void setMsoRequest(MsoRequest msoRequest) {
191 this.msoRequest = msoRequest;
194 public boolean isContrailRequest() {
195 return this.contrailRequest;
199 protected void setContrailRequest(boolean contrailRequest) {
200 this.contrailRequest = contrailRequest;
203 private boolean determineContrail() {
204 return (networkTechnology == NetworkTechnology.CONTRAIL && (contrailNetwork != null));