//
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
// regarding copyright ownership. The ASF licenses this file
// to you under the Apache License, Version 2.0 (the
// "License"); you may not use this file except in compliance
// with the License. You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing,
// software distributed under the License is distributed on an
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
// KIND, either express or implied. See the License for the
// specific language governing permissions and limitations
// under the License.
//
package org.apache.cloudstack.network.opendaylight.api.model;
import java.util.UUID;
import com.google.gson.annotations.SerializedName;
public class NeutronNetwork {
private UUID id;
private String name;
private boolean shared;
private String tenantId;
@SerializedName("provider:network_type")
private String networkType;
@SerializedName("provider:segmentation_id")
private Integer segmentationId;
public NeutronNetwork() {
}
public NeutronNetwork(final UUID id, final String name, final boolean shared, final String tenantId, final String networkType, final Integer segmentationId) {
this.id = id;
this.name = name;
this.shared = shared;
this.tenantId = tenantId;
this.networkType = networkType;
this.segmentationId = segmentationId;
}
public UUID getId() {
return id;
}
public void setId(final UUID uuid) {
id = uuid;
}
public String getNetworkType() {
return networkType;
}
public void setNetworkType(final String networkType) {
this.networkType = networkType;
}
public String getName() {
return name;
}
public void setName(final String name) {
this.name = name;
}
public boolean isShared() {
return shared;
}
public void setShared(final boolean shared) {
this.shared = shared;
}
public Integer getSegmentationId() {
return segmentationId;
}
public void setSegmentationId(final Integer segmentationId) {
this.segmentationId = segmentationId;
}
public String getTenantId() {
return tenantId;
}
public void setTenantId(final String tenantId) {
this.tenantId = tenantId;
}
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + (name == null ? 0 : name.hashCode());
result = prime * result + (networkType == null ? 0 : networkType.hashCode());
result = prime * result + (segmentationId == null ? 0 : segmentationId.hashCode());
result = prime * result + (shared ? 1231 : 1237);
result = prime * result + (tenantId == null ? 0 : tenantId.hashCode());
result = prime * result + (id == null ? 0 : id.hashCode());
return result;
}
@Override
public boolean equals(final Object obj) {
if (this == obj) {
return true;
}
if (obj == null) {
return false;
}
if (getClass() != obj.getClass()) {
return false;
}
NeutronNetwork other = (NeutronNetwork) obj;
if (name == null) {
if (other.name != null) {
return false;
}
} else if (!name.equals(other.name)) {
return false;
}
if (networkType == null) {
if (other.networkType != null) {
return false;
}
} else if (!networkType.equals(other.networkType)) {
return false;
}
if (segmentationId == null) {
if (other.segmentationId != null) {
return false;
}
} else if (!segmentationId.equals(other.segmentationId)) {
return false;
}
if (shared != other.shared) {
return false;
}
if (tenantId == null) {
if (other.tenantId != null) {
return false;
}
} else if (!tenantId.equals(other.tenantId)) {
return false;
}
if (id == null) {
if (other.id != null) {
return false;
}
} else if (!id.equals(other.id)) {
return false;
}
return true;
}
public boolean equalsIgnoreUuid(final Object obj) {
if (this == obj) {
return true;
}
if (obj == null) {
return false;
}
if (getClass() != obj.getClass()) {
return false;
}
NeutronNetwork other = (NeutronNetwork) obj;
if (name == null) {
if (other.name != null) {
return false;
}
} else if (!name.equals(other.name)) {
return false;
}
if (networkType == null) {
if (other.networkType != null) {
return false;
}
} else if (!networkType.equals(other.networkType)) {
return false;
}
if (segmentationId == null) {
if (other.segmentationId != null) {
return false;
}
} else if (!segmentationId.equals(other.segmentationId)) {
return false;
}
if (shared != other.shared) {
return false;
}
if (tenantId == null) {
if (other.tenantId != null) {
return false;
}
} else if (!tenantId.equals(other.tenantId)) {
return false;
}
return true;
}
@Override
public String toString() {
return "NeutronNetwork [uuid=" + id + ", networkType=" + networkType + ", name=" + name + ", shared=" + shared + ", segmentationId=" + segmentationId + ", tenantId="
+ tenantId + "]";
}
}