GUI -- Fixed link lookup bug when removing links.
- fixed and extended the 'startup' test scenario to show device coming online (and links added), followed by device going offline (and links removed).
Change-Id: I58f79b5b16d37504793f36db9959f8c3c26b5261
diff --git a/web/gui/src/main/webapp/json/ev/intentSketch/scenario.json b/web/gui/src/main/webapp/json/ev/intentSketch/scenario.json
index 136d027..f109dde 100644
--- a/web/gui/src/main/webapp/json/ev/intentSketch/scenario.json
+++ b/web/gui/src/main/webapp/json/ev/intentSketch/scenario.json
@@ -5,5 +5,9 @@
"title": "Host Intent Scenario",
"params": {
"lastAuto": 0
- }
+ },
+ "description": [
+ "Currently this is just a sketch of the event sequence,",
+ " but is NOT YET a runnable scenario."
+ ]
}
\ No newline at end of file
diff --git a/web/gui/src/main/webapp/json/ev/simple/scenario.json b/web/gui/src/main/webapp/json/ev/simple/scenario.json
index 5fb8869..c47d40e 100644
--- a/web/gui/src/main/webapp/json/ev/simple/scenario.json
+++ b/web/gui/src/main/webapp/json/ev/simple/scenario.json
@@ -22,4 +22,4 @@
"12. remove link",
""
]
-}
\ No newline at end of file
+}
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_10_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_10_onos.json
index 9b30b4a..ec0f258 100644
--- a/web/gui/src/main/webapp/json/ev/startup/ev_10_onos.json
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_10_onos.json
@@ -3,7 +3,7 @@
"payload": {
"id": "of:0000ffffffffff04",
"type": "roadm",
- "online": false,
+ "online": true,
"labels": [
"0000ffffffffff04",
"FF:FF:FF:FF:FF:04",
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_11_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_11_onos.json
index 3b361d5..04e6754 100644
--- a/web/gui/src/main/webapp/json/ev/startup/ev_11_onos.json
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_11_onos.json
@@ -3,15 +3,15 @@
"payload": {
"id": "of:0000ffffffff000A",
"type": "switch",
- "online": false,
+ "online": true,
"labels": [
"0000ffffffff000A",
"FF:FF:FF:FF:00:0A",
"?"
],
"metaUi": {
- "Zx": 832,
- "Zy": 223
+ "x": 832,
+ "y": 223
}
}
}
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_12_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_12_onos.json
index e53a6cd..c778cd5 100644
--- a/web/gui/src/main/webapp/json/ev/startup/ev_12_onos.json
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_12_onos.json
@@ -3,7 +3,7 @@
"payload": {
"id": "of:0000ffffffff0001",
"type": "switch",
- "online": false,
+ "online": true,
"labels": [
"0000ffffffff0001",
"FF:FF:FF:FF:00:01",
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_13_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_13_onos.json
index 6d2341f..a0cc21f 100644
--- a/web/gui/src/main/webapp/json/ev/startup/ev_13_onos.json
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_13_onos.json
@@ -3,7 +3,7 @@
"payload": {
"id": "of:0000ffffffffff01",
"type": "roadm",
- "online": false,
+ "online": true,
"labels": [
"0000ffffffffff01",
"FF:FF:FF:FF:FF:01",
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_14_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_14_onos.json
index e196148..93127a8 100644
--- a/web/gui/src/main/webapp/json/ev/startup/ev_14_onos.json
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_14_onos.json
@@ -3,7 +3,7 @@
"payload": {
"id": "of:0000ffffffff0004",
"type": "switch",
- "online": false,
+ "online": true,
"labels": [
"0000ffffffff0004",
"FF:FF:FF:FF:00:04",
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_15_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_15_onos.json
index 30ba9f3..f2d6891 100644
--- a/web/gui/src/main/webapp/json/ev/startup/ev_15_onos.json
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_15_onos.json
@@ -3,15 +3,15 @@
"payload": {
"id": "of:0000ffffffffff0A",
"type": "roadm",
- "online": false,
+ "online": true,
"labels": [
"0000ffffffffff0A",
"FF:FF:FF:FF:FF:0A",
"?"
],
"metaUi": {
- "Zx": 840,
- "Zy": 290
+ "x": 840,
+ "y": 290
}
}
}
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_16_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_16_onos.json
index 274adc1..3b0db4b 100644
--- a/web/gui/src/main/webapp/json/ev/startup/ev_16_onos.json
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_16_onos.json
@@ -3,7 +3,7 @@
"payload": {
"id": "of:0000ffffffffff09",
"type": "roadm",
- "online": false,
+ "online": true,
"labels": [
"0000ffffffffff09",
"FF:FF:FF:FF:FF:09",
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_17_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_17_onos.json
index 82272a4..69c62b9 100644
--- a/web/gui/src/main/webapp/json/ev/startup/ev_17_onos.json
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_17_onos.json
@@ -1,12 +1,13 @@
{
"event": "addLink",
"payload": {
+ "id": "of:0000ffffffffff02/20-of:0000ffffffffff05/10",
+ "type": "optical",
+ "linkWidth": 4,
"src": "of:0000ffffffffff02",
"srcPort": "20",
"dst": "of:0000ffffffffff05",
"dstPort": "10",
- "type": "optical",
- "linkWidth": 6,
"props" : {
"BW": "80 G"
}
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_18_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_18_onos.json
index 5687698..d11f13e 100644
--- a/web/gui/src/main/webapp/json/ev/startup/ev_18_onos.json
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_18_onos.json
@@ -1,12 +1,13 @@
{
"event": "addLink",
"payload": {
+ "id": "of:0000ffffffff000A/2-of:0000ffffffffff0A/1",
+ "type": "optical",
+ "linkWidth": 2,
"src": "of:0000ffffffff000A",
"srcPort": "2",
"dst": "of:0000ffffffffff0A",
"dstPort": "1",
- "type": "optical",
- "linkWidth": 2,
"props" : {
"BW": "100 G"
}
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_19_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_19_onos.json
index 24aeb2d..1349a3b 100644
--- a/web/gui/src/main/webapp/json/ev/startup/ev_19_onos.json
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_19_onos.json
@@ -1,12 +1,13 @@
{
"event": "addLink",
"payload": {
+ "id": "of:0000ffffffffff03/10-of:0000ffffffffff02/10",
+ "type": "optical",
+ "linkWidth": 2,
"src": "of:0000ffffffffff03",
"srcPort": "10",
"dst": "of:0000ffffffffff02",
"dstPort": "10",
- "type": "optical",
- "linkWidth": 2,
"props" : {
"BW": "70 G"
}
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_1_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_1_onos.json
index d4c8ddb..00a3e17 100644
--- a/web/gui/src/main/webapp/json/ev/startup/ev_1_onos.json
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_1_onos.json
@@ -3,7 +3,7 @@
"payload": {
"id": "of:0000ffffffffff08",
"type": "roadm",
- "online": false,
+ "online": true,
"labels": [
"0000ffffffffff08",
"FF:FF:FF:FF:FF:08",
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_20_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_20_onos.json
index f42b50e..e4d2161 100644
--- a/web/gui/src/main/webapp/json/ev/startup/ev_20_onos.json
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_20_onos.json
@@ -1,12 +1,13 @@
{
"event": "addLink",
"payload": {
+ "id": "of:0000ffffffffff07/21-of:0000ffffffffff05/20",
+ "type": "optical",
+ "linkWidth": 2,
"src": "of:0000ffffffffff07",
"srcPort": "21",
"dst": "of:0000ffffffffff05",
"dstPort": "20",
- "type": "optical",
- "linkWidth": 2,
"props" : {
"BW": "70 G"
}
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_21_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_21_onos.json
index 5af0ac7..ccdad88 100644
--- a/web/gui/src/main/webapp/json/ev/startup/ev_21_onos.json
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_21_onos.json
@@ -1,12 +1,13 @@
{
"event": "addLink",
"payload": {
+ "id": "of:0000ffffffff0001/2-of:0000ffffffffff01/1",
+ "type": "optical",
+ "linkWidth": 2,
"src": "of:0000ffffffff0001",
"srcPort": "2",
"dst": "of:0000ffffffffff01",
"dstPort": "1",
- "type": "optical",
- "linkWidth": 2,
"props" : {
"BW": "70 G"
}
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_22_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_22_onos.json
index 0d4cf2b..52a4a02 100644
--- a/web/gui/src/main/webapp/json/ev/startup/ev_22_onos.json
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_22_onos.json
@@ -1,12 +1,13 @@
{
"event": "addLink",
"payload": {
+ "id": "of:0000ffffffffff09/20-of:0000ffffffffff0A/20",
+ "type": "optical",
+ "linkWidth": 2,
"src": "of:0000ffffffffff09",
"srcPort": "20",
"dst": "of:0000ffffffffff0A",
"dstPort": "20",
- "type": "optical",
- "linkWidth": 2,
"props" : {
"BW": "70 G"
}
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_23_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_23_onos.json
index fff0f2b..be778551 100644
--- a/web/gui/src/main/webapp/json/ev/startup/ev_23_onos.json
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_23_onos.json
@@ -1,12 +1,13 @@
{
"event": "addLink",
"payload": {
- "src": "of:0000ffffffffff06",
- "srcPort": "20",
- "dst": "of:0000ffffffffff05",
- "dstPort": "30",
+ "id": "of:0000ffffffffff07/30-of:0000ffffffffff08/20",
"type": "optical",
- "linkWidth": 6,
+ "linkWidth": 4,
+ "src": "of:0000ffffffffff07",
+ "srcPort": "30",
+ "dst": "of:0000ffffffffff08",
+ "dstPort": "20",
"props" : {
"BW": "70 G"
}
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_24_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_24_onos.json
index 756b6c1..6ae5192 100644
--- a/web/gui/src/main/webapp/json/ev/startup/ev_24_onos.json
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_24_onos.json
@@ -1,12 +1,13 @@
{
"event": "addLink",
"payload": {
- "src": "of:0000ffffffffff07",
- "srcPort": "30",
- "dst": "of:0000ffffffffff08",
- "dstPort": "20",
+ "id": "of:0000ffffffffff02/10-of:0000ffffffffff01/10",
"type": "optical",
- "linkWidth": 6,
+ "linkWidth": 2,
+ "src": "of:0000ffffffffff02",
+ "srcPort": "10",
+ "dst": "of:0000ffffffffff01",
+ "dstPort": "10",
"props" : {
"BW": "70 G"
}
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_25_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_25_onos.json
index adad8a6..7fabce6 100644
--- a/web/gui/src/main/webapp/json/ev/startup/ev_25_onos.json
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_25_onos.json
@@ -1,14 +1,15 @@
{
"event": "addLink",
"payload": {
- "src": "of:0000ffffffffff03",
- "srcPort": "20",
- "dst": "of:0000ffffffffff06",
+ "id": "of:0000ffffffffff04/27-of:0000ffffffffff08/10",
+ "src": "of:0000ffffffffff04",
+ "srcPort": "27",
+ "dst": "of:0000ffffffffff08",
"dstPort": "10",
"type": "optical",
"linkWidth": 2,
"props" : {
- "BW": "70 G"
+ "BW": "30 G"
}
}
}
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_26_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_26_onos.json
index 245c823..b89a287 100644
--- a/web/gui/src/main/webapp/json/ev/startup/ev_26_onos.json
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_26_onos.json
@@ -1,12 +1,13 @@
{
"event": "addLink",
"payload": {
- "src": "of:0000ffffffffff02",
- "srcPort": "10",
- "dst": "of:0000ffffffffff01",
- "dstPort": "10",
+ "id": "of:0000ffffffff0003/2-of:0000ffffffffff03/1",
"type": "optical",
"linkWidth": 2,
+ "src": "of:0000ffffffff0003",
+ "srcPort": "2",
+ "dst": "of:0000ffffffffff03",
+ "dstPort": "1",
"props" : {
"BW": "70 G"
}
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_27_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_27_onos.json
index b856573..112a33e 100644
--- a/web/gui/src/main/webapp/json/ev/startup/ev_27_onos.json
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_27_onos.json
@@ -1,12 +1,13 @@
{
"event": "addLink",
"payload": {
+ "id": "of:0000ffffffffff09/1-of:0000ffffffff0009/2",
+ "type": "optical",
+ "linkWidth": 2,
"src": "of:0000ffffffffff09",
"srcPort": "1",
"dst": "of:0000ffffffff0009",
"dstPort": "2",
- "type": "optical",
- "linkWidth": 2,
"props" : {
"BW": "70 G"
}
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_28_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_28_onos.json
index 232dc3b..52207df 100644
--- a/web/gui/src/main/webapp/json/ev/startup/ev_28_onos.json
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_28_onos.json
@@ -1,12 +1,13 @@
{
"event": "addLink",
"payload": {
+ "id": "of:0000ffffffffff03/30-of:0000ffffffffff04/10",
+ "type": "optical",
+ "linkWidth": 2,
"src": "of:0000ffffffffff03",
"srcPort": "30",
"dst": "of:0000ffffffffff04",
"dstPort": "10",
- "type": "optical",
- "linkWidth": 2,
"props" : {
"BW": "70 G"
}
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_29_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_29_onos.json
index 1a845ce..c4660a3 100644
--- a/web/gui/src/main/webapp/json/ev/startup/ev_29_onos.json
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_29_onos.json
@@ -1,12 +1,13 @@
{
"event": "addLink",
"payload": {
+ "id": "of:0000ffffffffff07/20-of:0000ffffffffff09/10",
+ "type": "optical",
+ "linkWidth": 2,
"src": "of:0000ffffffffff07",
"srcPort": "20",
"dst": "of:0000ffffffffff09",
"dstPort": "10",
- "type": "optical",
- "linkWidth": 2,
"props" : {
"BW": "70 G"
}
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_2_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_2_onos.json
index fd446ba..8d4fbfa 100644
--- a/web/gui/src/main/webapp/json/ev/startup/ev_2_onos.json
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_2_onos.json
@@ -3,7 +3,7 @@
"payload": {
"id": "of:0000ffffffffff03",
"type": "roadm",
- "online": false,
+ "online": true,
"labels": [
"0000ffffffffff03",
"FF:FF:FF:FF:FF:03",
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_30_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_30_onos.json
index a617f45..e23cc2a 100644
--- a/web/gui/src/main/webapp/json/ev/startup/ev_30_onos.json
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_30_onos.json
@@ -1,12 +1,13 @@
{
"event": "addLink",
"payload": {
+ "id": "of:0000ffffffffff0A/10-of:0000ffffffffff08/30",
+ "type": "optical",
+ "linkWidth": 4,
"src": "of:0000ffffffffff0A",
"srcPort": "10",
"dst": "of:0000ffffffffff08",
"dstPort": "30",
- "type": "optical",
- "linkWidth": 6,
"props" : {
"BW": "70 G"
}
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_31_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_31_onos.json
index 438aa1b..a798e53 100644
--- a/web/gui/src/main/webapp/json/ev/startup/ev_31_onos.json
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_31_onos.json
@@ -1,12 +1,13 @@
{
"event": "addLink",
"payload": {
+ "id": "of:0000ffffffff0004/2-of:0000ffffffffff04/1",
+ "type": "optical",
+ "linkWidth": 2,
"src": "of:0000ffffffff0004",
"srcPort": "2",
"dst": "of:0000ffffffffff04",
"dstPort": "1",
- "type": "optical",
- "linkWidth": 2,
"props" : {
"BW": "70 G"
}
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_32_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_32_onos.json
index c479f01..aac204f 100644
--- a/web/gui/src/main/webapp/json/ev/startup/ev_32_onos.json
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_32_onos.json
@@ -1,12 +1,13 @@
{
"event": "addLink",
"payload": {
+ "id": "of:0000ffffffffff07/1-of:0000ffffffff0007/2",
+ "type": "optical",
+ "linkWidth": 2,
"src": "of:0000ffffffffff07",
"srcPort": "1",
"dst": "of:0000ffffffff0007",
"dstPort": "2",
- "type": "optical",
- "linkWidth": 2,
"props" : {
"BW": "70 G"
}
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_33_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_33_onos.json
index 2cc3a32..ab23e93 100644
--- a/web/gui/src/main/webapp/json/ev/startup/ev_33_onos.json
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_33_onos.json
@@ -1,14 +1,17 @@
{
- "event": "addLink",
+ "event": "updateDevice",
"payload": {
- "src": "of:0000ffffffff0003",
- "srcPort": "2",
- "dst": "of:0000ffffffffff03",
- "dstPort": "1",
- "type": "optical",
- "linkWidth": 2,
- "props" : {
- "BW": "70 G"
+ "id": "of:0000ffffffffff06",
+ "type": "roadm",
+ "online": true,
+ "labels": [
+ "0000ffffffffff06",
+ "FF:FF:FF:FF:FF:06",
+ "?"
+ ],
+ "metaUi": {
+ "x": 336,
+ "y": 254
}
}
}
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_34_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_34_onos.json
index fa5e3bc..09be8e6 100644
--- a/web/gui/src/main/webapp/json/ev/startup/ev_34_onos.json
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_34_onos.json
@@ -1,12 +1,13 @@
{
"event": "addLink",
"payload": {
+ "id": "of:0000ffffffffff06/20-of:0000ffffffffff05/30",
"src": "of:0000ffffffffff06",
- "srcPort": "30",
- "dst": "of:0000ffffffffff08",
- "dstPort": "10",
+ "srcPort": "20",
+ "dst": "of:0000ffffffffff05",
+ "dstPort": "30",
"type": "optical",
- "linkWidth": 6,
+ "linkWidth": 4,
"props" : {
"BW": "70 G"
}
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_35_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_35_onos.json
index c579e59..4b612e9 100644
--- a/web/gui/src/main/webapp/json/ev/startup/ev_35_onos.json
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_35_onos.json
@@ -1,14 +1,15 @@
{
"event": "addLink",
"payload": {
- "src": "of:0000ffffffffff04",
- "srcPort": "27",
- "dst": "of:0000ffffffffff08",
- "dstPort": "10",
+ "id": "of:0000ffffffffff03/20-of:0000ffffffffff06/10",
"type": "optical",
"linkWidth": 2,
+ "src": "of:0000ffffffffff03",
+ "srcPort": "20",
+ "dst": "of:0000ffffffffff06",
+ "dstPort": "10",
"props" : {
- "BW": "30 G"
+ "BW": "70 G"
}
}
}
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_36_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_36_onos.json
new file mode 100644
index 0000000..cddb929
--- /dev/null
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_36_onos.json
@@ -0,0 +1,15 @@
+{
+ "event": "addLink",
+ "payload": {
+ "id": "of:0000ffffffffff06/30-of:0000ffffffffff08/10",
+ "type": "optical",
+ "linkWidth": 4,
+ "src": "of:0000ffffffffff06",
+ "srcPort": "30",
+ "dst": "of:0000ffffffffff08",
+ "dstPort": "10",
+ "props" : {
+ "BW": "70 G"
+ }
+ }
+}
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_37_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_37_onos.json
new file mode 100644
index 0000000..6f608cd
--- /dev/null
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_37_onos.json
@@ -0,0 +1,17 @@
+{
+ "event": "updateDevice",
+ "payload": {
+ "id": "of:0000ffffffffff08",
+ "type": "roadm",
+ "online": false,
+ "labels": [
+ "0000ffffffffff08",
+ "FF:FF:FF:FF:FF:08",
+ "?"
+ ],
+ "metaUi": {
+ "x": 539,
+ "y": 186
+ }
+ }
+}
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_38_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_38_onos.json
new file mode 100644
index 0000000..09a0339
--- /dev/null
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_38_onos.json
@@ -0,0 +1,15 @@
+{
+ "event": "removeLink",
+ "payload": {
+ "id": "of:0000ffffffffff07/30-of:0000ffffffffff08/20",
+ "type": "optical",
+ "linkWidth": 4,
+ "src": "of:0000ffffffffff07",
+ "srcPort": "30",
+ "dst": "of:0000ffffffffff08",
+ "dstPort": "20",
+ "props" : {
+ "BW": "70 G"
+ }
+ }
+}
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_39_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_39_onos.json
new file mode 100644
index 0000000..a85cee6
--- /dev/null
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_39_onos.json
@@ -0,0 +1,15 @@
+{
+ "event": "removeLink",
+ "payload": {
+ "id": "of:0000ffffffffff04/27-of:0000ffffffffff08/10",
+ "src": "of:0000ffffffffff04",
+ "srcPort": "27",
+ "dst": "of:0000ffffffffff08",
+ "dstPort": "10",
+ "type": "optical",
+ "linkWidth": 2,
+ "props" : {
+ "BW": "30 G"
+ }
+ }
+}
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_3_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_3_onos.json
index 23bf26a..b4c3537 100644
--- a/web/gui/src/main/webapp/json/ev/startup/ev_3_onos.json
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_3_onos.json
@@ -3,7 +3,7 @@
"payload": {
"id": "of:0000ffffffff0007",
"type": "switch",
- "online": false,
+ "online": true,
"labels": [
"0000ffffffff0007",
"FF:FF:FF:FF:00:07",
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_40_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_40_onos.json
new file mode 100644
index 0000000..1b95d24
--- /dev/null
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_40_onos.json
@@ -0,0 +1,15 @@
+{
+ "event": "removeLink",
+ "payload": {
+ "id": "of:0000ffffffffff0A/10-of:0000ffffffffff08/30",
+ "type": "optical",
+ "linkWidth": 4,
+ "src": "of:0000ffffffffff0A",
+ "srcPort": "10",
+ "dst": "of:0000ffffffffff08",
+ "dstPort": "30",
+ "props" : {
+ "BW": "70 G"
+ }
+ }
+}
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_41_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_41_onos.json
new file mode 100644
index 0000000..1efc1f6
--- /dev/null
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_41_onos.json
@@ -0,0 +1,15 @@
+{
+ "event": "removeLink",
+ "payload": {
+ "id": "of:0000ffffffffff06/30-of:0000ffffffffff08/10",
+ "type": "optical",
+ "linkWidth": 4,
+ "src": "of:0000ffffffffff06",
+ "srcPort": "30",
+ "dst": "of:0000ffffffffff08",
+ "dstPort": "10",
+ "props" : {
+ "BW": "70 G"
+ }
+ }
+}
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_4_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_4_onos.json
index c600401..053b963 100644
--- a/web/gui/src/main/webapp/json/ev/startup/ev_4_onos.json
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_4_onos.json
@@ -3,7 +3,7 @@
"payload": {
"id": "of:0000ffffffff0009",
"type": "switch",
- "online": false,
+ "online": true,
"labels": [
"0000ffffffff0009",
"FF:FF:FF:FF:00:09",
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_5_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_5_onos.json
index af912a7..332bfdb 100644
--- a/web/gui/src/main/webapp/json/ev/startup/ev_5_onos.json
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_5_onos.json
@@ -3,7 +3,7 @@
"payload": {
"id": "of:0000ffffffffff02",
"type": "roadm",
- "online": false,
+ "online": true,
"labels": [
"0000ffffffffff02",
"FF:FF:FF:FF:FF:02",
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_6_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_6_onos.json
index 50273bc..c764bc1 100644
--- a/web/gui/src/main/webapp/json/ev/startup/ev_6_onos.json
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_6_onos.json
@@ -3,7 +3,7 @@
"payload": {
"id": "of:0000ffffffff0003",
"type": "switch",
- "online": false,
+ "online": true,
"labels": [
"0000ffffffff0003",
"FF:FF:FF:FF:00:03",
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_7_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_7_onos.json
index 7cd29b0..25a6dce 100644
--- a/web/gui/src/main/webapp/json/ev/startup/ev_7_onos.json
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_7_onos.json
@@ -3,7 +3,7 @@
"payload": {
"id": "of:0000ffffffffff07",
"type": "roadm",
- "online": false,
+ "online": true,
"labels": [
"0000ffffffffff07",
"FF:FF:FF:FF:FF:07",
diff --git a/web/gui/src/main/webapp/json/ev/startup/ev_9_onos.json b/web/gui/src/main/webapp/json/ev/startup/ev_9_onos.json
index 1e0f427..0f497c0 100644
--- a/web/gui/src/main/webapp/json/ev/startup/ev_9_onos.json
+++ b/web/gui/src/main/webapp/json/ev/startup/ev_9_onos.json
@@ -3,7 +3,7 @@
"payload": {
"id": "of:0000ffffffffff05",
"type": "roadm",
- "online": false,
+ "online": true,
"labels": [
"0000ffffffffff05",
"FF:FF:FF:FF:FF:05",
diff --git a/web/gui/src/main/webapp/json/ev/startup/scenario.json b/web/gui/src/main/webapp/json/ev/startup/scenario.json
index 37939ca0..089d53a 100644
--- a/web/gui/src/main/webapp/json/ev/startup/scenario.json
+++ b/web/gui/src/main/webapp/json/ev/startup/scenario.json
@@ -6,5 +6,15 @@
"title": "Startup Scenario",
"params": {
"lastAuto": 32
- }
+ },
+ "description": [
+ "Loads 16 devices (10 optical, 6 packet)",
+ " and their associated links.",
+ "",
+ "Press 'S' to load initial events.",
+ "",
+ "Press spacebar to complete the scenario...",
+ " * 4 events - device online, add 3 links",
+ " * 5 events - device offline, remove 4 links"
+ ]
}
\ No newline at end of file
diff --git a/web/gui/src/main/webapp/topo2.js b/web/gui/src/main/webapp/topo2.js
index 94b2e9e..701f914 100644
--- a/web/gui/src/main/webapp/topo2.js
+++ b/web/gui/src/main/webapp/topo2.js
@@ -30,6 +30,7 @@
// configuration data
var config = {
useLiveData: true,
+ fnTrace: true,
debugOn: false,
debug: {
showNodeXY: true,
@@ -180,6 +181,11 @@
return config.debugOn && config.debug[what];
}
+ function fnTrace(msg, id) {
+ if (config.fnTrace) {
+ console.log('FN: ' + msg + ' [' + id + ']');
+ }
+ }
// ==============================
// Key Callbacks
@@ -220,7 +226,7 @@
var v = scenario.view,
frame;
if (stack.length === 0) {
- v.alert('Error:\n\nNo event #' + evn + ' found.');
+ v.alert('Oops!\n\nNo event #' + evn + ' found.');
return;
}
frame = stack.shift();
@@ -334,6 +340,7 @@
function logicError(msg) {
// TODO, report logic error to server, via websock, so it can be logged
network.view.alert('Logic Error:\n\n' + msg);
+ console.warn(msg);
}
var eventDispatch = {
@@ -350,6 +357,7 @@
};
function addDevice(data) {
+ fnTrace('addDevice', data.payload.id);
var device = data.payload,
nodeData = createDeviceNode(device);
network.nodes.push(nodeData);
@@ -359,6 +367,7 @@
}
function addLink(data) {
+ fnTrace('addLink', data.payload.id);
var link = data.payload,
lnk = createLink(link);
if (lnk) {
@@ -370,6 +379,7 @@
}
function addHost(data) {
+ fnTrace('addHost', data.payload.id);
var host = data.payload,
node = createHostNode(host),
lnk;
@@ -388,6 +398,7 @@
}
function updateDevice(data) {
+ fnTrace('updateDevice', data.payload.id);
var device = data.payload,
id = device.id,
nodeData = network.lookup[id];
@@ -400,6 +411,7 @@
}
function updateLink(data) {
+ fnTrace('updateLink', data.payload.id);
var link = data.payload,
id = link.id,
linkData = network.lookup[id];
@@ -412,6 +424,7 @@
}
function updateHost(data) {
+ fnTrace('updateHost', data.payload.id);
var host = data.payload,
id = host.id,
hostData = network.lookup[id];
@@ -424,6 +437,7 @@
}
function removeLink(data) {
+ fnTrace('removeLink', data.payload.id);
var link = data.payload,
id = link.id,
linkData = network.lookup[id];
@@ -435,6 +449,7 @@
}
function showPath(data) {
+ fnTrace('showPath', data.payload.id);
var links = data.payload.links,
s = [ data.event + "\n" + links.length ];
links.forEach(function (d, i) {
@@ -883,7 +898,7 @@
// remove from links array
var idx = find(linkData.id, network.links);
- network.links.splice(linkData.index, 1);
+ network.links.splice(idx, 1);
// remove from SVG
updateLinks();
}
@@ -1058,13 +1073,12 @@
d3.json(urlSc, function(err, data) {
var p = data && data.params || {},
desc = data && data.description || null,
- intro;
+ intro = data && data.title;
if (err) {
view.alert('No scenario found:\n\n' + urlSc + '\n\n' + err);
} else {
sc.params = p;
- intro = "Scenario loaded: " + ctx + '\n\n' + data.title;
if (desc) {
intro += '\n\n ' + desc.join('\n ');
}