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.bpmn.servicedecomposition.bbobjects;
23 import java.io.Serializable;
24 import java.util.ArrayList;
25 import java.util.HashMap;
26 import java.util.List;
28 import javax.persistence.Id;
29 import org.apache.commons.lang3.builder.EqualsBuilder;
30 import org.apache.commons.lang3.builder.HashCodeBuilder;
31 import org.onap.so.bpmn.servicedecomposition.ShallowCopy;
32 import org.onap.so.bpmn.servicedecomposition.modelinfo.ModelInfoNetwork;
33 import org.onap.so.db.catalog.beans.OrchestrationStatus;
34 import com.fasterxml.jackson.annotation.JsonProperty;
35 import com.fasterxml.jackson.annotation.JsonRootName;
37 @JsonRootName("l3Network")
38 public class L3Network implements Serializable, ShallowCopy<L3Network> {
40 private static final long serialVersionUID = 4434492567957111317L;
43 @JsonProperty("network-id")
44 private String networkId;
45 @JsonProperty("cascaded")
46 private Boolean cascaded;
47 @JsonProperty("cloud-params")
48 private Map<String, String> cloudParams = new HashMap<>();
49 @JsonProperty("network-name")
50 private String networkName;
51 @JsonProperty("neutron-network-id")
52 private String neutronNetworkId;
53 @JsonProperty("network-type")
54 private String networkType;
55 @JsonProperty("network-technology")
56 private String networkTechnology;
57 @JsonProperty("network-role")
58 private String networkRole;
59 @JsonProperty("is-bound-to-vpn")
60 private Boolean isBoundToVpn;
61 @JsonProperty("service-id")
62 private String serviceId;
63 @JsonProperty("network-role-instance")
64 private Long networkRoleInstance;
65 @JsonProperty("orchestration-status")
66 private OrchestrationStatus orchestrationStatus;
67 @JsonProperty("heat-stack-id")
68 private String heatStackId;
69 @JsonProperty("contrail-network-fqdn")
70 private String contrailNetworkFqdn;
71 @JsonProperty("network-policies")
72 private List<NetworkPolicy> networkPolicies = new ArrayList<>();
73 @JsonProperty("contrail-network-route-table-references")
74 private List<RouteTableReference> contrailNetworkRouteTableReferences = new ArrayList<>();
75 @JsonProperty("widget-model-id")
76 private String widgetModelId;
77 @JsonProperty("widget-model-version")
78 private String widgetModelVersion;
79 @JsonProperty("physical-network-name")
80 private String physicalNetworkName;
81 @JsonProperty("is-provider-network")
82 private Boolean isProviderNetwork;
83 @JsonProperty("is-shared-network")
84 private Boolean isSharedNetwork;
85 @JsonProperty("is-external-network")
86 private Boolean isExternalNetwork;
87 @JsonProperty("self-link")
88 private String selflink;
89 @JsonProperty("operational-status")
90 private String operationalStatus;
91 @JsonProperty("subnets")
92 private List<Subnet> subnets = new ArrayList<>();
93 @JsonProperty("ctag-assignments")
94 private List<CtagAssignment> ctagAssignments = new ArrayList<>();
95 @JsonProperty("segmentation-assignments")
96 private List<SegmentationAssignment> segmentationAssignments = new ArrayList<>();
97 @JsonProperty("model-info-network")
98 private ModelInfoNetwork modelInfoNetwork;
99 @JsonProperty("aggregate-routes")
100 private List<AggregateRoute> aggregateRoutes = new ArrayList<>();
101 @JsonProperty("vpn-binding")
102 private List<VpnBinding> vpnBindings = new ArrayList<>();
104 public ModelInfoNetwork getModelInfoNetwork() {
105 return modelInfoNetwork;
108 public void setModelInfoNetwork(ModelInfoNetwork modelInfoNetwork) {
109 this.modelInfoNetwork = modelInfoNetwork;
112 public String getNeutronNetworkId() {
113 return neutronNetworkId;
116 public void setNeutronNetworkId(String neutronNetworkId) {
117 this.neutronNetworkId = neutronNetworkId;
120 public String getNetworkId() {
124 public void setNetworkId(String networkId) {
125 this.networkId = networkId;
128 public String getNetworkName() {
132 public void setNetworkName(String networkName) {
133 this.networkName = networkName;
136 public String getNetworkType() {
140 public void setNetworkType(String networkType) {
141 this.networkType = networkType;
144 public String getNetworkTechnology() {
145 return networkTechnology;
148 public void setNetworkTechnology(String networkTechnology) {
149 this.networkTechnology = networkTechnology;
152 public String getNetworkRole() {
156 public void setNetworkRole(String networkRole) {
157 this.networkRole = networkRole;
160 public Boolean isIsBoundToVpn() {
164 public void setIsBoundToVpn(Boolean isBoundToVpn) {
165 this.isBoundToVpn = isBoundToVpn;
168 public String getServiceId() {
172 public void setServiceId(String serviceId) {
173 this.serviceId = serviceId;
176 public Long getNetworkRoleInstance() {
177 return networkRoleInstance;
180 public void setNetworkRoleInstance(Long networkRoleInstance) {
181 this.networkRoleInstance = networkRoleInstance;
184 public OrchestrationStatus getOrchestrationStatus() {
185 return orchestrationStatus;
188 public void setOrchestrationStatus(OrchestrationStatus orchestrationStatus) {
189 this.orchestrationStatus = orchestrationStatus;
192 public String getHeatStackId() {
196 public void setHeatStackId(String heatStackId) {
197 this.heatStackId = heatStackId;
200 public String getContrailNetworkFqdn() {
201 return contrailNetworkFqdn;
204 public void setContrailNetworkFqdn(String contrailNetworkFqdn) {
205 this.contrailNetworkFqdn = contrailNetworkFqdn;
208 public List<NetworkPolicy> getNetworkPolicies() {
209 return networkPolicies;
212 public List<RouteTableReference> getContrailNetworkRouteTableReferences() {
213 return contrailNetworkRouteTableReferences;
216 public String getWidgetModelId() {
217 return widgetModelId;
220 public void setWidgetModelId(String widgetModelId) {
221 this.widgetModelId = widgetModelId;
224 public String getWidgetModelVersion() {
225 return widgetModelVersion;
228 public void setWidgetModelVersion(String widgetModelVersion) {
229 this.widgetModelVersion = widgetModelVersion;
232 public String getPhysicalNetworkName() {
233 return physicalNetworkName;
236 public void setPhysicalNetworkName(String physicalNetworkName) {
237 this.physicalNetworkName = physicalNetworkName;
240 public Boolean isIsProviderNetwork() {
241 return isProviderNetwork;
244 public void setIsProviderNetwork(Boolean isProviderNetwork) {
245 this.isProviderNetwork = isProviderNetwork;
248 public Boolean isIsSharedNetwork() {
249 return isSharedNetwork;
252 public void setIsSharedNetwork(Boolean isSharedNetwork) {
253 this.isSharedNetwork = isSharedNetwork;
256 public Boolean isIsExternalNetwork() {
257 return isExternalNetwork;
260 public void setIsExternalNetwork(Boolean isExternalNetwork) {
261 this.isExternalNetwork = isExternalNetwork;
264 public String getSelflink() {
268 public void setSelflink(String selflink) {
269 this.selflink = selflink;
272 public String getOperationalStatus() {
273 return operationalStatus;
276 public void setOperationalStatus(String operationalStatus) {
277 this.operationalStatus = operationalStatus;
280 public List<Subnet> getSubnets() {
284 public List<CtagAssignment> getCtagAssignments() {
285 return ctagAssignments;
288 public List<SegmentationAssignment> getSegmentationAssignments() {
289 return segmentationAssignments;
292 public Boolean isCascaded() {
296 public void setIsCascaded(Boolean cascaded) {
297 this.cascaded = cascaded;
300 public Map<String, String> getCloudParams() {
304 public void setCloudParams(Map<String, String> cloudParams) {
305 this.cloudParams = cloudParams;
308 public List<AggregateRoute> getAggregateRoutes() {
309 return aggregateRoutes;
312 public List<VpnBinding> getVpnBindings() {
317 public boolean equals(final Object other) {
318 if (!(other instanceof L3Network)) {
321 L3Network castOther = (L3Network) other;
322 return new EqualsBuilder().append(networkId, castOther.networkId).isEquals();
326 public int hashCode() {
327 return new HashCodeBuilder().append(networkId).toHashCode();