Added builder and more logs for VtnService and VtnPort
Change-Id: I52f672caebf1946b9bb01c9de0ca2ad2cee23f69
diff --git a/apps/xosclient/src/main/java/org/onosproject/xosclient/impl/DefaultVtnPortApi.java b/apps/xosclient/src/main/java/org/onosproject/xosclient/impl/DefaultVtnPortApi.java
index a7329d4..8054dfe 100644
--- a/apps/xosclient/src/main/java/org/onosproject/xosclient/impl/DefaultVtnPortApi.java
+++ b/apps/xosclient/src/main/java/org/onosproject/xosclient/impl/DefaultVtnPortApi.java
@@ -119,12 +119,14 @@
pair -> addressPairs.put(IpAddress.valueOf(pair.getIpAddress()),
MacAddress.valueOf(pair.getMacAddress())));
- return new VtnPort(VtnPortId.of(osPort.getId()),
- osPort.getName(),
- VtnServiceId.of(osPort.getNetworkId()),
- MacAddress.valueOf(osPort.getMacAddress()),
- IpAddress.valueOf(ipAddr.getIpAddress()),
- addressPairs);
+ return VtnPort.builder()
+ .id(VtnPortId.of(osPort.getId()))
+ .name(osPort.getName())
+ .serviceId(VtnServiceId.of(osPort.getNetworkId()))
+ .mac(osPort.getMacAddress())
+ .ip(ipAddr.getIpAddress())
+ .addressPairs(addressPairs)
+ .build();
}
// TODO remove this when XOS provides this information
diff --git a/apps/xosclient/src/main/java/org/onosproject/xosclient/impl/DefaultVtnServiceApi.java b/apps/xosclient/src/main/java/org/onosproject/xosclient/impl/DefaultVtnServiceApi.java
index 84c366f6..25f5740 100644
--- a/apps/xosclient/src/main/java/org/onosproject/xosclient/impl/DefaultVtnServiceApi.java
+++ b/apps/xosclient/src/main/java/org/onosproject/xosclient/impl/DefaultVtnServiceApi.java
@@ -19,8 +19,6 @@
import com.fasterxml.jackson.databind.ObjectMapper;
import com.google.common.base.Strings;
import com.google.common.collect.Sets;
-import org.onlab.packet.IpAddress;
-import org.onlab.packet.IpPrefix;
import org.onosproject.xosclient.api.OpenStackAccess;
import org.onosproject.xosclient.api.VtnServiceApi;
import org.onosproject.xosclient.api.XosAccess;
@@ -146,15 +144,17 @@
return null;
}
- return new VtnService(serviceId,
- osNet.getName(),
- serviceType(osNet.getName()),
- networkType(osNet.getName()),
- Long.parseLong(osNet.getProviderSegID()),
- IpPrefix.valueOf(osSubnet.getCidr()),
- IpAddress.valueOf(osSubnet.getGateway()),
- providerServices(serviceId),
- tenantServices(serviceId));
+ return VtnService.build()
+ .id(serviceId)
+ .name(osNet.getName())
+ .serviceType(serviceType(osNet.getName()))
+ .networkType(networkType(osNet.getName()))
+ .vni(osNet.getProviderSegID())
+ .subnet(osSubnet.getCidr())
+ .serviceIp(osSubnet.getGateway())
+ .providerServices(providerServices(serviceId))
+ .tenantServices(tenantServices(serviceId))
+ .build();
}
// TODO remove this when XOS provides this information
@@ -177,7 +177,7 @@
// TODO remove this when XOS provides this information
private NetworkType networkType(String netName) {
- checkArgument(!Strings.isNullOrEmpty(netName));
+ checkArgument(!Strings.isNullOrEmpty(netName), "VTN network name cannot be null");
String name = netName.toUpperCase();
if (name.contains(PUBLIC.name())) {
@@ -193,7 +193,7 @@
// TODO remove this when XOS provides this information
private ServiceType serviceType(String netName) {
- checkArgument(!Strings.isNullOrEmpty(netName));
+ checkArgument(!Strings.isNullOrEmpty(netName), "VTN network name cannot be null");
String name = netName.toUpperCase();
if (name.contains(VSG.name())) {