mirror of https://github.com/apache/jclouds.git
Merge pull request #166 from vijaykiran/networkclient-fixes
Sync the output of network json with the domain model
This commit is contained in:
commit
3b4bc8d1d2
|
@ -18,19 +18,18 @@
|
||||||
*/
|
*/
|
||||||
package org.jclouds.cloudstack.domain;
|
package org.jclouds.cloudstack.domain;
|
||||||
|
|
||||||
import static com.google.common.base.Preconditions.checkNotNull;
|
import com.google.common.collect.ImmutableList;
|
||||||
|
import com.google.common.collect.ImmutableSet;
|
||||||
|
import com.google.common.collect.ImmutableSortedSet;
|
||||||
|
import com.google.gson.annotations.SerializedName;
|
||||||
|
|
||||||
|
import javax.annotation.Nullable;
|
||||||
import java.net.URI;
|
import java.net.URI;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
import java.util.SortedSet;
|
import java.util.SortedSet;
|
||||||
|
|
||||||
import javax.annotation.Nullable;
|
import static com.google.common.base.Preconditions.checkNotNull;
|
||||||
|
|
||||||
import com.google.common.collect.ImmutableList;
|
|
||||||
import com.google.common.collect.ImmutableSet;
|
|
||||||
import com.google.common.collect.ImmutableSortedSet;
|
|
||||||
import com.google.gson.annotations.SerializedName;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Adrian Cole
|
* @author Adrian Cole
|
||||||
|
@ -42,13 +41,11 @@ public class Network implements Comparable<Network> {
|
||||||
|
|
||||||
public static class Builder {
|
public static class Builder {
|
||||||
private long id;
|
private long id;
|
||||||
private String account;
|
|
||||||
private String broadcastDomainType;
|
private String broadcastDomainType;
|
||||||
private URI broadcastURI;
|
private URI broadcastURI;
|
||||||
private String displayText;
|
private String displayText;
|
||||||
private List<String> DNS = ImmutableList.of();
|
private List<String> DNS = ImmutableList.of();
|
||||||
private String domain;
|
private String domain;
|
||||||
private long domainId;
|
|
||||||
private String endIP;
|
private String endIP;
|
||||||
private String gateway;
|
private String gateway;
|
||||||
private boolean isDefault;
|
private boolean isDefault;
|
||||||
|
@ -68,18 +65,13 @@ public class Network implements Comparable<Network> {
|
||||||
private String VLAN;
|
private String VLAN;
|
||||||
private TrafficType trafficType;
|
private TrafficType trafficType;
|
||||||
private long zoneId;
|
private long zoneId;
|
||||||
private Set<? extends NetworkService> services = ImmutableSet.<NetworkService> of();
|
private Set<? extends NetworkService> services = ImmutableSet.<NetworkService>of();
|
||||||
|
|
||||||
public Builder id(long id) {
|
public Builder id(long id) {
|
||||||
this.id = id;
|
this.id = id;
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Builder account(String account) {
|
|
||||||
this.account = account;
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Builder broadcastDomainType(String broadcastDomainType) {
|
public Builder broadcastDomainType(String broadcastDomainType) {
|
||||||
this.broadcastDomainType = broadcastDomainType;
|
this.broadcastDomainType = broadcastDomainType;
|
||||||
return this;
|
return this;
|
||||||
|
@ -105,11 +97,6 @@ public class Network implements Comparable<Network> {
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Builder domainId(long domainId) {
|
|
||||||
this.domainId = domainId;
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Builder endIP(String endIP) {
|
public Builder endIP(String endIP) {
|
||||||
this.endIP = endIP;
|
this.endIP = endIP;
|
||||||
return this;
|
return this;
|
||||||
|
@ -206,12 +193,12 @@ public class Network implements Comparable<Network> {
|
||||||
}
|
}
|
||||||
|
|
||||||
public Builder services(Set<? extends NetworkService> services) {
|
public Builder services(Set<? extends NetworkService> services) {
|
||||||
this.services = ImmutableSet.<NetworkService> copyOf(checkNotNull(services, "services"));
|
this.services = ImmutableSet.<NetworkService>copyOf(checkNotNull(services, "services"));
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Network build() {
|
public Network build() {
|
||||||
return new Network(id, account, broadcastDomainType, broadcastURI, displayText, DNS, domain, domainId, endIP,
|
return new Network(id, broadcastDomainType, broadcastURI, displayText, DNS, domain, endIP,
|
||||||
gateway, isDefault, isShared, isSystem, netmask, networkDomain, networkOfferingAvailability,
|
gateway, isDefault, isShared, isSystem, netmask, networkDomain, networkOfferingAvailability,
|
||||||
networkOfferingDisplayText, networkOfferingId, networkOfferingName, related, startIP, name, state,
|
networkOfferingDisplayText, networkOfferingId, networkOfferingName, related, startIP, name, state,
|
||||||
guestIPType, VLAN, trafficType, zoneId, services);
|
guestIPType, VLAN, trafficType, zoneId, services);
|
||||||
|
@ -219,7 +206,6 @@ public class Network implements Comparable<Network> {
|
||||||
}
|
}
|
||||||
|
|
||||||
private long id;
|
private long id;
|
||||||
private String account;
|
|
||||||
@SerializedName("broadcastdomaintype")
|
@SerializedName("broadcastdomaintype")
|
||||||
private String broadcastDomainType;
|
private String broadcastDomainType;
|
||||||
@SerializedName("broadcasturi")
|
@SerializedName("broadcasturi")
|
||||||
|
@ -230,10 +216,8 @@ public class Network implements Comparable<Network> {
|
||||||
private String DNS1;
|
private String DNS1;
|
||||||
@SerializedName("dns2")
|
@SerializedName("dns2")
|
||||||
private String DNS2;
|
private String DNS2;
|
||||||
|
@SerializedName("networkdomain")
|
||||||
private String domain;
|
private String domain;
|
||||||
@Nullable
|
|
||||||
@SerializedName("domainid")
|
|
||||||
private long domainId;
|
|
||||||
@SerializedName("endip")
|
@SerializedName("endip")
|
||||||
private String endIP;
|
private String endIP;
|
||||||
private String gateway;
|
private String gateway;
|
||||||
|
@ -270,7 +254,7 @@ public class Network implements Comparable<Network> {
|
||||||
private long zoneId;
|
private long zoneId;
|
||||||
@SerializedName("service")
|
@SerializedName("service")
|
||||||
// so tests and serialization comes out expected
|
// so tests and serialization comes out expected
|
||||||
private SortedSet<? extends NetworkService> services = ImmutableSortedSet.<NetworkService> of();
|
private SortedSet<? extends NetworkService> services = ImmutableSortedSet.<NetworkService>of();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* present only for serializer
|
* present only for serializer
|
||||||
|
@ -279,21 +263,19 @@ public class Network implements Comparable<Network> {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public Network(long id, String account, String broadcastDomainType, URI broadcastURI, String displayText,
|
public Network(long id, String broadcastDomainType, URI broadcastURI, String displayText,
|
||||||
List<String> DNS, String domain, long domainId, String endIP, String gateway, boolean isDefault,
|
List<String> DNS, String domain, String endIP, String gateway, boolean isDefault,
|
||||||
boolean isShared, boolean isSystem, String netmask, String networkDomain, String networkOfferingAvailability,
|
boolean isShared, boolean isSystem, String netmask, String networkDomain, String networkOfferingAvailability,
|
||||||
String networkOfferingDisplayText, long networkOfferingId, String networkOfferingName, long related,
|
String networkOfferingDisplayText, long networkOfferingId, String networkOfferingName, long related,
|
||||||
String startIP, String name, String state, GuestIPType type, String vLAN, TrafficType trafficType,
|
String startIP, String name, String state, GuestIPType type, String vLAN, TrafficType trafficType,
|
||||||
long zoneId, Set<? extends NetworkService> services) {
|
long zoneId, Set<? extends NetworkService> services) {
|
||||||
this.id = id;
|
this.id = id;
|
||||||
this.account = account;
|
|
||||||
this.broadcastDomainType = broadcastDomainType;
|
this.broadcastDomainType = broadcastDomainType;
|
||||||
this.broadcastURI = broadcastURI;
|
this.broadcastURI = broadcastURI;
|
||||||
this.displayText = displayText;
|
this.displayText = displayText;
|
||||||
this.DNS1 = checkNotNull(DNS, "DNS").size() > 0 ? DNS.get(0) : null;
|
this.DNS1 = checkNotNull(DNS, "DNS").size() > 0 ? DNS.get(0) : null;
|
||||||
this.DNS2 = DNS.size() > 1 ? DNS.get(1) : null;
|
this.DNS2 = DNS.size() > 1 ? DNS.get(1) : null;
|
||||||
this.domain = domain;
|
this.domain = domain;
|
||||||
this.domainId = domainId;
|
|
||||||
this.endIP = endIP;
|
this.endIP = endIP;
|
||||||
this.gateway = gateway;
|
this.gateway = gateway;
|
||||||
this.isDefault = isDefault;
|
this.isDefault = isDefault;
|
||||||
|
@ -323,13 +305,6 @@ public class Network implements Comparable<Network> {
|
||||||
return id;
|
return id;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* @return the name of the account to which the template beLongs
|
|
||||||
*/
|
|
||||||
public String getAccount() {
|
|
||||||
return account;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @return Broadcast domain type of the network
|
* @return Broadcast domain type of the network
|
||||||
*/
|
*/
|
||||||
|
@ -370,14 +345,6 @@ public class Network implements Comparable<Network> {
|
||||||
return domain;
|
return domain;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* @return the ID of the containing domain, null for public zones
|
|
||||||
*/
|
|
||||||
@Nullable
|
|
||||||
public long getDomainId() {
|
|
||||||
return domainId;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @return the end ip of the network
|
* @return the end ip of the network
|
||||||
*/
|
*/
|
||||||
|
@ -525,12 +492,10 @@ public class Network implements Comparable<Network> {
|
||||||
result = prime * result + ((DNS1 == null) ? 0 : DNS1.hashCode());
|
result = prime * result + ((DNS1 == null) ? 0 : DNS1.hashCode());
|
||||||
result = prime * result + ((DNS2 == null) ? 0 : DNS2.hashCode());
|
result = prime * result + ((DNS2 == null) ? 0 : DNS2.hashCode());
|
||||||
result = prime * result + ((VLAN == null) ? 0 : VLAN.hashCode());
|
result = prime * result + ((VLAN == null) ? 0 : VLAN.hashCode());
|
||||||
result = prime * result + ((account == null) ? 0 : account.hashCode());
|
|
||||||
result = prime * result + ((broadcastDomainType == null) ? 0 : broadcastDomainType.hashCode());
|
result = prime * result + ((broadcastDomainType == null) ? 0 : broadcastDomainType.hashCode());
|
||||||
result = prime * result + ((broadcastURI == null) ? 0 : broadcastURI.hashCode());
|
result = prime * result + ((broadcastURI == null) ? 0 : broadcastURI.hashCode());
|
||||||
result = prime * result + ((displayText == null) ? 0 : displayText.hashCode());
|
result = prime * result + ((displayText == null) ? 0 : displayText.hashCode());
|
||||||
result = prime * result + ((domain == null) ? 0 : domain.hashCode());
|
result = prime * result + ((domain == null) ? 0 : domain.hashCode());
|
||||||
result = prime * result + (int) (domainId ^ (domainId >>> 32));
|
|
||||||
result = prime * result + ((endIP == null) ? 0 : endIP.hashCode());
|
result = prime * result + ((endIP == null) ? 0 : endIP.hashCode());
|
||||||
result = prime * result + ((gateway == null) ? 0 : gateway.hashCode());
|
result = prime * result + ((gateway == null) ? 0 : gateway.hashCode());
|
||||||
result = prime * result + ((guestIPType == null) ? 0 : guestIPType.hashCode());
|
result = prime * result + ((guestIPType == null) ? 0 : guestIPType.hashCode());
|
||||||
|
@ -578,11 +543,6 @@ public class Network implements Comparable<Network> {
|
||||||
return false;
|
return false;
|
||||||
} else if (!VLAN.equals(other.VLAN))
|
} else if (!VLAN.equals(other.VLAN))
|
||||||
return false;
|
return false;
|
||||||
if (account == null) {
|
|
||||||
if (other.account != null)
|
|
||||||
return false;
|
|
||||||
} else if (!account.equals(other.account))
|
|
||||||
return false;
|
|
||||||
if (broadcastDomainType == null) {
|
if (broadcastDomainType == null) {
|
||||||
if (other.broadcastDomainType != null)
|
if (other.broadcastDomainType != null)
|
||||||
return false;
|
return false;
|
||||||
|
@ -603,8 +563,6 @@ public class Network implements Comparable<Network> {
|
||||||
return false;
|
return false;
|
||||||
} else if (!domain.equals(other.domain))
|
} else if (!domain.equals(other.domain))
|
||||||
return false;
|
return false;
|
||||||
if (domainId != other.domainId)
|
|
||||||
return false;
|
|
||||||
if (endIP == null) {
|
if (endIP == null) {
|
||||||
if (other.endIP != null)
|
if (other.endIP != null)
|
||||||
return false;
|
return false;
|
||||||
|
@ -684,10 +642,10 @@ public class Network implements Comparable<Network> {
|
||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
return "[id=" + id + ", state=" + state + ", name=" + name + ", displayText=" + displayText + ", guestIPType="
|
return "[id=" + id + ", state=" + state + ", name=" + name + ", displayText=" + displayText + ", guestIPType="
|
||||||
+ guestIPType + ", trafficType=" + trafficType + ", DNS=" + getDNS() + ", VLAN=" + VLAN + ", account="
|
+ guestIPType + ", trafficType=" + trafficType + ", DNS=" + getDNS() + ", VLAN=" + VLAN
|
||||||
+ account + ", startIP=" + startIP + ", endIP=" + endIP + ", netmask=" + netmask + ", gateway=" + gateway
|
+ ", startIP=" + startIP + ", endIP=" + endIP + ", netmask=" + netmask + ", gateway=" + gateway
|
||||||
+ ", broadcastDomainType=" + broadcastDomainType + ", broadcastURI=" + broadcastURI + ", services="
|
+ ", broadcastDomainType=" + broadcastDomainType + ", broadcastURI=" + broadcastURI + ", services="
|
||||||
+ services + ", domain=" + domain + ", domainId=" + domainId + ", isDefault=" + isDefault + ", isShared="
|
+ services + ", domain=" + domain + ", isDefault=" + isDefault + ", isShared="
|
||||||
+ isShared + ", isSystem=" + isSystem + ", related=" + related + ", zoneId=" + zoneId + ", domain="
|
+ isShared + ", isSystem=" + isSystem + ", related=" + related + ", zoneId=" + zoneId + ", domain="
|
||||||
+ networkDomain + ", networkOfferingAvailability=" + networkOfferingAvailability
|
+ networkDomain + ", networkOfferingAvailability=" + networkOfferingAvailability
|
||||||
+ ", networkOfferingDisplayText=" + networkOfferingDisplayText + ", networkOfferingId=" + networkOfferingId
|
+ ", networkOfferingDisplayText=" + networkOfferingDisplayText + ", networkOfferingId=" + networkOfferingId
|
||||||
|
|
|
@ -18,22 +18,6 @@
|
||||||
*/
|
*/
|
||||||
package org.jclouds.cloudstack.features;
|
package org.jclouds.cloudstack.features;
|
||||||
|
|
||||||
import static com.google.common.collect.Iterables.find;
|
|
||||||
import static com.google.common.collect.Iterables.get;
|
|
||||||
import static com.google.common.collect.Iterables.getOnlyElement;
|
|
||||||
import static org.jclouds.cloudstack.options.CreateNetworkOptions.Builder.vlan;
|
|
||||||
import static org.jclouds.cloudstack.options.ListNetworkOfferingsOptions.Builder.specifyVLAN;
|
|
||||||
import static org.jclouds.cloudstack.options.ListNetworksOptions.Builder.accountInDomain;
|
|
||||||
import static org.jclouds.cloudstack.options.ListNetworksOptions.Builder.id;
|
|
||||||
import static org.testng.Assert.assertEquals;
|
|
||||||
import static org.testng.Assert.assertTrue;
|
|
||||||
|
|
||||||
import java.net.URI;
|
|
||||||
import java.util.NoSuchElementException;
|
|
||||||
import java.util.Set;
|
|
||||||
import java.util.logging.Level;
|
|
||||||
import java.util.logging.Logger;
|
|
||||||
|
|
||||||
import org.jclouds.cloudstack.domain.GuestIPType;
|
import org.jclouds.cloudstack.domain.GuestIPType;
|
||||||
import org.jclouds.cloudstack.domain.Network;
|
import org.jclouds.cloudstack.domain.Network;
|
||||||
import org.jclouds.cloudstack.domain.NetworkOffering;
|
import org.jclouds.cloudstack.domain.NetworkOffering;
|
||||||
|
@ -43,6 +27,20 @@ import org.jclouds.cloudstack.predicates.ZonePredicates;
|
||||||
import org.testng.annotations.BeforeGroups;
|
import org.testng.annotations.BeforeGroups;
|
||||||
import org.testng.annotations.Test;
|
import org.testng.annotations.Test;
|
||||||
|
|
||||||
|
import java.net.URI;
|
||||||
|
import java.util.NoSuchElementException;
|
||||||
|
import java.util.Set;
|
||||||
|
import java.util.logging.Level;
|
||||||
|
import java.util.logging.Logger;
|
||||||
|
|
||||||
|
import static com.google.common.collect.Iterables.*;
|
||||||
|
import static org.jclouds.cloudstack.options.CreateNetworkOptions.Builder.vlan;
|
||||||
|
import static org.jclouds.cloudstack.options.ListNetworkOfferingsOptions.Builder.specifyVLAN;
|
||||||
|
import static org.jclouds.cloudstack.options.ListNetworksOptions.Builder.accountInDomain;
|
||||||
|
import static org.jclouds.cloudstack.options.ListNetworksOptions.Builder.id;
|
||||||
|
import static org.testng.Assert.assertEquals;
|
||||||
|
import static org.testng.Assert.assertTrue;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Tests behavior of {@code NetworkClientLiveTest}
|
* Tests behavior of {@code NetworkClientLiveTest}
|
||||||
*
|
*
|
||||||
|
@ -151,7 +149,6 @@ public class NetworkClientLiveTest extends BaseCloudStackClientLiveTest {
|
||||||
assert network.getName() != null : network;
|
assert network.getName() != null : network;
|
||||||
assert network.getDNS().size() != 0 : network;
|
assert network.getDNS().size() != 0 : network;
|
||||||
assert network.getGuestIPType() != null && network.getGuestIPType() != GuestIPType.UNRECOGNIZED : network;
|
assert network.getGuestIPType() != null && network.getGuestIPType() != GuestIPType.UNRECOGNIZED : network;
|
||||||
assert network.getAccount() != null : network;
|
|
||||||
assert network.getBroadcastDomainType() != null : network;
|
assert network.getBroadcastDomainType() != null : network;
|
||||||
assert network.getDisplayText() != null : network;
|
assert network.getDisplayText() != null : network;
|
||||||
// Network domain can be null sometimes
|
// Network domain can be null sometimes
|
||||||
|
@ -166,7 +163,6 @@ public class NetworkClientLiveTest extends BaseCloudStackClientLiveTest {
|
||||||
assert network.getTrafficType() != null : network;
|
assert network.getTrafficType() != null : network;
|
||||||
assert network.getZoneId() > 0 : network;
|
assert network.getZoneId() > 0 : network;
|
||||||
assert network.getDomain() != null : network;
|
assert network.getDomain() != null : network;
|
||||||
assert network.getDomainId() > 0 : network;
|
|
||||||
switch (network.getGuestIPType()) {
|
switch (network.getGuestIPType()) {
|
||||||
case VIRTUAL:
|
case VIRTUAL:
|
||||||
assert network.getNetmask() == null : network;
|
assert network.getNetmask() == null : network;
|
||||||
|
|
|
@ -18,9 +18,7 @@
|
||||||
*/
|
*/
|
||||||
package org.jclouds.cloudstack.parse;
|
package org.jclouds.cloudstack.parse;
|
||||||
|
|
||||||
import java.net.URI;
|
import com.google.common.collect.*;
|
||||||
import java.util.Set;
|
|
||||||
|
|
||||||
import org.jclouds.cloudstack.domain.GuestIPType;
|
import org.jclouds.cloudstack.domain.GuestIPType;
|
||||||
import org.jclouds.cloudstack.domain.Network;
|
import org.jclouds.cloudstack.domain.Network;
|
||||||
import org.jclouds.cloudstack.domain.NetworkService;
|
import org.jclouds.cloudstack.domain.NetworkService;
|
||||||
|
@ -29,11 +27,8 @@ import org.jclouds.json.BaseSetParserTest;
|
||||||
import org.jclouds.rest.annotations.SelectJson;
|
import org.jclouds.rest.annotations.SelectJson;
|
||||||
import org.testng.annotations.Test;
|
import org.testng.annotations.Test;
|
||||||
|
|
||||||
import com.google.common.collect.ImmutableList;
|
import java.net.URI;
|
||||||
import com.google.common.collect.ImmutableMap;
|
import java.util.Set;
|
||||||
import com.google.common.collect.ImmutableSet;
|
|
||||||
import com.google.common.collect.ImmutableSortedMap;
|
|
||||||
import com.google.common.collect.ImmutableSortedSet;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
|
@ -71,8 +66,6 @@ public class ListNetworksResponseTest extends BaseSetParserTest<Network> {
|
||||||
.broadcastURI(URI.create("vlan://240"))
|
.broadcastURI(URI.create("vlan://240"))
|
||||||
.DNS(ImmutableList.of("8.8.8.8"))
|
.DNS(ImmutableList.of("8.8.8.8"))
|
||||||
.guestIPType(GuestIPType.VIRTUAL)
|
.guestIPType(GuestIPType.VIRTUAL)
|
||||||
.account("adrian")
|
|
||||||
.domainId(1)
|
|
||||||
.domain("ROOT")
|
.domain("ROOT")
|
||||||
.isDefault(true)
|
.isDefault(true)
|
||||||
.services(
|
.services(
|
||||||
|
|
Loading…
Reference in New Issue