Added UiTopoLayoutId network config to BasicNetworkConfigs.
Change-Id: I3ec54a883e0b79f3cce5e9aff2f7ae7d56cc593e
diff --git a/core/api/src/main/java/org/onosproject/net/config/basics/SubjectFactories.java b/core/api/src/main/java/org/onosproject/net/config/basics/SubjectFactories.java
index 104dfe5..06287d9 100644
--- a/core/api/src/main/java/org/onosproject/net/config/basics/SubjectFactories.java
+++ b/core/api/src/main/java/org/onosproject/net/config/basics/SubjectFactories.java
@@ -23,6 +23,7 @@
import org.onosproject.net.LinkKey;
import org.onosproject.net.config.SubjectFactory;
import org.onosproject.net.region.RegionId;
+import org.onosproject.ui.model.topo.UiTopoLayoutId;
import static com.google.common.base.Preconditions.checkArgument;
@@ -123,6 +124,17 @@
};
/**
+ * UI Topology layout ID subject factory.
+ */
+ public static final SubjectFactory<UiTopoLayoutId> LAYOUT_SUBJECT_FACTORY =
+ new SubjectFactory<UiTopoLayoutId>(UiTopoLayoutId.class, "layouts") {
+ @Override
+ public UiTopoLayoutId createSubject(String key) {
+ return UiTopoLayoutId.layoutId(key);
+ }
+ };
+
+ /**
* Provides reference to the core service, which is required for
* application subject factory.
*
diff --git a/core/net/src/main/java/org/onosproject/net/config/impl/BasicNetworkConfigs.java b/core/net/src/main/java/org/onosproject/net/config/impl/BasicNetworkConfigs.java
index 9373133..0bd8b91 100644
--- a/core/net/src/main/java/org/onosproject/net/config/impl/BasicNetworkConfigs.java
+++ b/core/net/src/main/java/org/onosproject/net/config/impl/BasicNetworkConfigs.java
@@ -35,8 +35,10 @@
import org.onosproject.net.config.basics.BasicHostConfig;
import org.onosproject.net.config.basics.BasicLinkConfig;
import org.onosproject.net.config.basics.BasicRegionConfig;
+import org.onosproject.net.config.basics.BasicUiTopoLayoutConfig;
import org.onosproject.net.config.basics.SubjectFactories;
import org.onosproject.net.region.RegionId;
+import org.onosproject.ui.model.topo.UiTopoLayoutId;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -45,6 +47,7 @@
import static org.onosproject.net.config.basics.SubjectFactories.CONNECT_POINT_SUBJECT_FACTORY;
import static org.onosproject.net.config.basics.SubjectFactories.DEVICE_SUBJECT_FACTORY;
import static org.onosproject.net.config.basics.SubjectFactories.HOST_SUBJECT_FACTORY;
+import static org.onosproject.net.config.basics.SubjectFactories.LAYOUT_SUBJECT_FACTORY;
import static org.onosproject.net.config.basics.SubjectFactories.LINK_SUBJECT_FACTORY;
import static org.onosproject.net.config.basics.SubjectFactories.REGION_SUBJECT_FACTORY;
@@ -101,6 +104,14 @@
public BasicRegionConfig createConfig() {
return new BasicRegionConfig();
}
+ },
+ new ConfigFactory<UiTopoLayoutId, BasicUiTopoLayoutConfig>(LAYOUT_SUBJECT_FACTORY,
+ BasicUiTopoLayoutConfig.class,
+ BASIC) {
+ @Override
+ public BasicUiTopoLayoutConfig createConfig() {
+ return new BasicUiTopoLayoutConfig();
+ }
}
);
diff --git a/core/store/serializers/src/main/java/org/onosproject/store/serializers/KryoNamespaces.java b/core/store/serializers/src/main/java/org/onosproject/store/serializers/KryoNamespaces.java
index aac942f..ced6954 100644
--- a/core/store/serializers/src/main/java/org/onosproject/store/serializers/KryoNamespaces.java
+++ b/core/store/serializers/src/main/java/org/onosproject/store/serializers/KryoNamespaces.java
@@ -218,6 +218,7 @@
import org.onosproject.store.service.Task;
import org.onosproject.store.service.Versioned;
import org.onosproject.store.service.WorkQueueStats;
+import org.onosproject.ui.model.topo.UiTopoLayoutId;
import java.net.URI;
import java.time.Duration;
@@ -513,6 +514,7 @@
.register(Region.Type.class)
.register(RegionId.class)
.register(DefaultRegion.class)
+ .register(UiTopoLayoutId.class)
.register(ExtensionSelectorType.class)
.register(ExtensionTreatmentType.class)
.register(TransactionId.class)
diff --git a/web/gui/src/main/java/org/onosproject/ui/impl/UiWebSocket.java b/web/gui/src/main/java/org/onosproject/ui/impl/UiWebSocket.java
index 69850ff..2815d80 100644
--- a/web/gui/src/main/java/org/onosproject/ui/impl/UiWebSocket.java
+++ b/web/gui/src/main/java/org/onosproject/ui/impl/UiWebSocket.java
@@ -59,7 +59,7 @@
private static final String USER = "user";
private static final String BOOTSTRAP = "bootstrap";
- public static final String TOPO = "topo";
+ private static final String TOPO = "topo";
private static final long MAX_AGE_MS = 30_000;