8dee54701daf550b7d64347f07cf697ef051a03f
[so.git] /
1 /*-
2  * ============LICENSE_START=======================================================
3  * ONAP - SO
4  * ================================================================================
5  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6  * ================================================================================
7  * Modifications Copyright (C) 2018 IBM.
8  * ================================================================================
9  * Licensed under the Apache License, Version 2.0 (the "License");
10  * you may not use this file except in compliance with the License.
11  * You may obtain a copy of the License at
12  * 
13  *      http://www.apache.org/licenses/LICENSE-2.0
14  * 
15  * Unless required by applicable law or agreed to in writing, software
16  * distributed under the License is distributed on an "AS IS" BASIS,
17  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18  * See the License for the specific language governing permissions and
19  * limitations under the License.
20  * ============LICENSE_END=========================================================
21  */
22
23 package org.onap.so.adapters.nwrest;
24
25
26
27 import java.util.HashMap;
28 import java.util.List;
29 import java.util.Map;
30
31 import javax.xml.bind.annotation.XmlRootElement;
32
33 import org.onap.so.entity.MsoRequest;
34 import org.onap.so.logger.MsoLogger;
35 import org.onap.so.openstack.beans.Subnet;
36
37 import com.fasterxml.jackson.annotation.JsonIgnore;
38 import com.fasterxml.jackson.annotation.JsonProperty;
39 import com.fasterxml.jackson.annotation.JsonRootName;
40
41 @JsonRootName("updateNetworkRequest")
42 @XmlRootElement(name = "updateNetworkRequest")
43 public class UpdateNetworkRequest extends NetworkRequestCommon {
44         /**
45          * 
46          */
47         private static final long serialVersionUID = -1219693235726357143L;
48         private String cloudSiteId;
49         private String tenantId;
50         private String networkId;
51         private String networkStackId;
52         private String networkName;
53         private String networkType;
54         private String networkTypeVersion;
55         private String modelCustomizationUuid;
56         private NetworkTechnology networkTechnology = NetworkTechnology.NEUTRON;
57         private List<Subnet> subnets;
58         private ProviderVlanNetwork providerVlanNetwork;
59         private ContrailNetwork contrailNetwork;
60         private Boolean backout = true;
61         private Map<String,String> networkParams = new HashMap<>();
62         private MsoRequest msoRequest = new MsoRequest();
63         
64         @JsonProperty
65         private boolean contrailRequest;
66         public UpdateNetworkRequest() {
67                 super();
68         }
69
70         public String getCloudSiteId() {
71                 return cloudSiteId;
72         }
73
74         public void setCloudSiteId(String cloudSiteId) {
75                 this.cloudSiteId = cloudSiteId;
76         }
77
78         public String getTenantId() {
79                 return tenantId;
80         }
81
82         public void setTenantId(String tenantId) {
83                 this.tenantId = tenantId;
84         }
85
86         public String getNetworkId() {
87                 return networkId;
88         }
89
90         public void setNetworkId(String networkId) {
91                 this.networkId = networkId;
92         }
93
94         public String getNetworkStackId() {
95                 return networkStackId;
96         }
97
98         public void setNetworkStackId(String networkStackId) {
99                 this.networkStackId = networkStackId;
100         }
101
102         public String getNetworkName() {
103                 return networkName;
104         }
105
106         public void setNetworkName(String networkName) {
107                 this.networkName = networkName;
108         }
109
110         public String getNetworkType() {
111                 return networkType;
112         }
113
114         public void setNetworkType(String networkType) {
115                 this.networkType = networkType;
116         }
117
118         public String getModelCustomizationUuid() {
119                 return this.modelCustomizationUuid;
120         }
121
122         public void setModelCustomizationUuid(String modelCustomizationUuid) {
123                 this.modelCustomizationUuid = modelCustomizationUuid;
124         }
125
126         public String getNetworkTypeVersion() {
127                 return networkTypeVersion;
128         }
129
130         public void setNetworkTypeVersion(String networkTypeVersion) {
131                 this.networkTypeVersion = networkTypeVersion;
132         }
133
134         public NetworkTechnology getNetworkTechnology() {
135                 return networkTechnology;
136         }
137
138         public void setNetworkTechnology(NetworkTechnology networkTechnology) {
139                 this.networkTechnology = networkTechnology;
140                 this.contrailRequest = determineContrail();
141         }
142
143         public List<Subnet> getSubnets() {
144                 return subnets;
145         }
146
147         public void setSubnets(List<Subnet> subnets) {
148                 this.subnets = subnets;
149         }
150
151         public ProviderVlanNetwork getProviderVlanNetwork() {
152                 return providerVlanNetwork;
153         }
154
155         public void setProviderVlanNetwork(ProviderVlanNetwork providerVlanNetwork) {
156                 this.providerVlanNetwork = providerVlanNetwork;
157         }
158
159         public ContrailNetwork getContrailNetwork() {
160                 return contrailNetwork;
161         }
162
163         public void setContrailNetwork(ContrailNetwork contrailNetwork) {
164                 this.contrailNetwork = contrailNetwork;
165                 this.contrailRequest = determineContrail();
166         }
167
168         public Boolean getBackout() {
169                 return backout;
170         }
171
172         public void setBackout(Boolean backout) {
173                 this.backout = backout;
174         }
175
176         public Map<String, String> getNetworkParams() {
177                 return networkParams;
178         }
179
180         public void setNetworkParams(Map<String, String> networkParams) {
181                 this.networkParams = networkParams;
182         }
183
184         public MsoRequest getMsoRequest() {
185                 return msoRequest;
186         }
187
188         public void setMsoRequest(MsoRequest msoRequest) {
189                 this.msoRequest = msoRequest;
190         }
191         @JsonIgnore
192         protected void setContrailRequest(boolean contrailRequest) {
193                 this.contrailRequest = contrailRequest;
194         }
195         public boolean isContrailRequest() {
196                 return contrailRequest;
197         }
198         
199         private boolean determineContrail() {
200                 return (networkTechnology == NetworkTechnology.CONTRAIL && (contrailNetwork != null));
201         }
202         
203 }