CORD-628 Refactored VTN service network and port API
- Removed direct use of Neutron data model and Neutron API
- Extended service network and service port API to have all network
information required for VTN
- Removed unnecessary dependency manager and store
- Removed network state sync method with Neutron and XOS
- Removed Neutron and XOS access information from the network config
- Re-organized API packages
Change-Id: I18f49ec733309315f683dfb2e6be6526056118f1
diff --git a/src/main/java/org/opencord/cordvtn/cli/CordVtnNetworkListCommand.java b/src/main/java/org/opencord/cordvtn/cli/CordVtnNetworkListCommand.java
index fac50f8..7f42dc2 100644
--- a/src/main/java/org/opencord/cordvtn/cli/CordVtnNetworkListCommand.java
+++ b/src/main/java/org/opencord/cordvtn/cli/CordVtnNetworkListCommand.java
@@ -21,8 +21,8 @@
import com.google.common.collect.Lists;
import org.apache.karaf.shell.commands.Command;
import org.onosproject.cli.AbstractShellCommand;
-import org.opencord.cordvtn.api.core.CordVtnService;
-import org.opencord.cordvtn.api.net.VtnNetwork;
+import org.opencord.cordvtn.api.core.ServiceNetworkService;
+import org.opencord.cordvtn.api.net.ServiceNetwork;
import java.util.Collections;
import java.util.List;
@@ -36,13 +36,13 @@
description = "Lists all VTN networks")
public class CordVtnNetworkListCommand extends AbstractShellCommand {
- private static final String FORMAT = "%-40s%-20s%-8s%-20s%s";
+ private static final String FORMAT = "%-40s%-20s%-20s%-8s%-20s%s";
@Override
protected void execute() {
- CordVtnService service = AbstractShellCommand.get(CordVtnService.class);
- List<VtnNetwork> networks = Lists.newArrayList(service.vtnNetworks());
- Collections.sort(networks, VtnNetwork.VTN_NETWORK_COMPARATOR);
+ ServiceNetworkService service = AbstractShellCommand.get(ServiceNetworkService.class);
+ List<ServiceNetwork> networks = Lists.newArrayList(service.serviceNetworks());
+ Collections.sort(networks, ServiceNetwork.SERVICE_NETWORK_COMPARATOR);
if (outputJson()) {
try {
@@ -51,9 +51,10 @@
print("Failed to list networks in JSON format");
}
} else {
- print(FORMAT, "ID", "Type", "VNI", "Subnet", "Service IP");
- for (VtnNetwork net: networks) {
+ print(FORMAT, "ID", "Name", "Type", "VNI", "Subnet", "Service IP");
+ for (ServiceNetwork net: networks) {
print(FORMAT, net.id(),
+ net.name(),
net.type(),
net.segmentId(),
net.subnet(),
@@ -62,17 +63,18 @@
}
}
- private JsonNode json(List<VtnNetwork> networks) {
+ private JsonNode json(List<ServiceNetwork> networks) {
ArrayNode result = mapper().enable(INDENT_OUTPUT).createArrayNode();
- for (VtnNetwork net: networks) {
+ for (ServiceNetwork net: networks) {
ArrayNode providers = mapper().createArrayNode();
- net.providers().forEach(provider -> providers.add(
+ net.providers().entrySet().forEach(provider -> providers.add(
mapper().createObjectNode()
- .put("networkId", provider.id().id())
- .put("type", provider.type().name())));
+ .put("networkId", provider.getKey().id())
+ .put("type", provider.getValue().name())));
result.add(mapper().createObjectNode()
.put("id", net.id().id())
+ .put("name", net.name())
.put("type", net.type().name())
.put("vni", net.segmentId().id())
.put("subnet", net.subnet().toString())