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())) {