CORD-176, CORD-431 Switch to new VTN API
- Implemented VTN store and manager to keep network states
- Implemented the new VTN API for service network and port
Change-Id: Id8f5d0e609fa3deba782ff2265fc0d3175cbcb4c
diff --git a/src/main/java/org/opencord/cordvtn/codec/ServicePortCodec.java b/src/main/java/org/opencord/cordvtn/codec/ServicePortCodec.java
index 9c4343f..91681d0 100644
--- a/src/main/java/org/opencord/cordvtn/codec/ServicePortCodec.java
+++ b/src/main/java/org/opencord/cordvtn/codec/ServicePortCodec.java
@@ -17,6 +17,7 @@
import com.fasterxml.jackson.databind.node.ArrayNode;
import com.fasterxml.jackson.databind.node.ObjectNode;
+import com.google.common.collect.Sets;
import org.onlab.packet.IpAddress;
import org.onlab.packet.MacAddress;
import org.onlab.packet.VlanId;
@@ -26,6 +27,8 @@
import org.opencord.cordvtn.api.PortId;
import org.opencord.cordvtn.api.ServicePort;
+import java.util.Set;
+
/**
* Service port JSON codec.
*/
@@ -62,21 +65,24 @@
return null;
}
- ServicePort.Builder sportBuilder = ServicePort.builder()
- .id(PortId.of(json.get(ID).asText()));
-
+ PortId portId = PortId.of(json.get(ID).asText());
+ VlanId vlanId = null;
if (json.get(VLAN_ID) != null) {
- sportBuilder.vlanId(VlanId.vlanId(json.get(VLAN_ID).asText()));
+ try {
+ vlanId = VlanId.vlanId(json.get(VLAN_ID).asText());
+ } catch (Exception ignore) {
+ }
}
+ Set<AddressPair> addressPairs = Sets.newHashSet();
if (json.get(FLOATING_ADDRESS_PAIRS) != null) {
json.get(FLOATING_ADDRESS_PAIRS).forEach(pair -> {
AddressPair addrPair = AddressPair.of(
IpAddress.valueOf(pair.get(IP_ADDRESS).asText()),
MacAddress.valueOf(pair.get(MAC_ADDRESS).asText()));
- sportBuilder.addAddressPair(addrPair);
+ addressPairs.add(addrPair);
});
}
- return sportBuilder.build();
+ return new ServicePort(portId, vlanId, addressPairs);
}
}