Added local dev server
diff --git a/views/ngXosViews/diagnostic/mocks/data/instances.json b/views/ngXosViews/diagnostic/mocks/data/instances.json
new file mode 100644
index 0000000..a60b696
--- /dev/null
+++ b/views/ngXosViews/diagnostic/mocks/data/instances.json
@@ -0,0 +1,289 @@
+[
+ {
+ "humanReadableName": "sflow_service_instance",
+ "id": 8,
+ "created": "2016-02-17T22:01:02.663Z",
+ "updated": "2016-02-17T22:05:58.270Z",
+ "enacted": "2016-02-17T22:05:58.281Z",
+ "policed": "2016-02-17T22:05:59.137Z",
+ "backend_register": "{\"next_run\": 0, \"last_success\": 1455746758.281283, \"exponent\": 0}",
+ "backend_status": "1 - OK",
+ "deleted": false,
+ "write_protect": false,
+ "lazy_blocked": false,
+ "no_sync": false,
+ "instance_id": "instance-00000005",
+ "instance_uuid": "42b75cb7-7205-4a68-9100-b2c1e3ea69b5",
+ "name": "sflow_service_instance",
+ "instance_name": "mysite_sflow-8",
+ "ip": "130.127.133.93",
+ "image": 1,
+ "creator": 1,
+ "slice": 8,
+ "deployment": 1,
+ "node": 2,
+ "numberCores": 0,
+ "flavor": 1,
+ "userData": null,
+ "networks": [
+ 21,
+ 20
+ ]
+ },
+ {
+ "humanReadableName": "client1",
+ "id": 4,
+ "created": "2016-02-17T22:00:58.284Z",
+ "updated": "2016-02-17T22:03:56.863Z",
+ "enacted": "2016-02-17T22:03:56.872Z",
+ "policed": "2016-02-17T22:03:56.953Z",
+ "backend_register": "{\"next_run\": 0, \"last_success\": 1455746636.872524, \"exponent\": 0}",
+ "backend_status": "1 - OK",
+ "deleted": false,
+ "write_protect": false,
+ "lazy_blocked": false,
+ "no_sync": false,
+ "instance_id": "instance-00000001",
+ "instance_uuid": "cca264bb-8136-45dd-a5a3-41902a4bcf5b",
+ "name": "client1",
+ "instance_name": "mysite_clients-4",
+ "ip": "130.127.133.90",
+ "image": 1,
+ "creator": 1,
+ "slice": 3,
+ "deployment": 1,
+ "node": 1,
+ "numberCores": 0,
+ "flavor": 1,
+ "userData": null,
+ "networks": [
+ 10,
+ 4,
+ 11
+ ]
+ },
+ {
+ "humanReadableName": "mysite_ceilometer-7",
+ "id": 7,
+ "created": "2016-02-17T22:01:02.550Z",
+ "updated": "2016-02-17T22:06:15.667Z",
+ "enacted": "2016-02-17T22:06:15.672Z",
+ "policed": "2016-02-17T22:06:15.818Z",
+ "backend_register": "{\"next_run\": 0, \"last_success\": 1455746775.672678, \"exponent\": 0}",
+ "backend_status": "1 - OK",
+ "deleted": false,
+ "write_protect": false,
+ "lazy_blocked": false,
+ "no_sync": false,
+ "instance_id": "instance-00000006",
+ "instance_uuid": "23d04870-5e0d-4b03-b2e2-032cbfec56fa",
+ "name": "mysite_ceilometer",
+ "instance_name": "mysite_ceilometer-7",
+ "ip": "130.127.133.90",
+ "image": 1,
+ "creator": 1,
+ "slice": 7,
+ "deployment": 1,
+ "node": 1,
+ "numberCores": 0,
+ "flavor": 1,
+ "userData": null,
+ "networks": [
+ 18,
+ 19,
+ 5
+ ]
+ },
+ {
+ "humanReadableName": "onos_app_1",
+ "id": 3,
+ "created": "2016-02-17T22:00:58.258Z",
+ "updated": "2016-02-17T22:04:43.301Z",
+ "enacted": "2016-02-17T22:04:43.309Z",
+ "policed": "2016-02-17T22:04:43.943Z",
+ "backend_register": "{\"next_run\": 0, \"last_success\": 1455746683.309321, \"exponent\": 0}",
+ "backend_status": "1 - OK",
+ "deleted": false,
+ "write_protect": false,
+ "lazy_blocked": false,
+ "no_sync": false,
+ "instance_id": "instance-00000002",
+ "instance_uuid": "c21dc52f-363e-47f6-9a2a-489c0af392fb",
+ "name": "onos_app_1",
+ "instance_name": "mysite_onos_vbng-3",
+ "ip": "130.127.133.59",
+ "image": 1,
+ "creator": 1,
+ "slice": 5,
+ "deployment": 1,
+ "node": 3,
+ "numberCores": 0,
+ "flavor": 1,
+ "userData": null,
+ "networks": [
+ 15,
+ 14
+ ]
+ },
+ {
+ "humanReadableName": "ovs_vbng",
+ "id": 6,
+ "created": "2016-02-17T22:00:58.567Z",
+ "updated": "2016-02-17T22:06:33.495Z",
+ "enacted": "2016-02-17T22:06:33.562Z",
+ "policed": "2016-02-17T22:06:34.619Z",
+ "backend_register": "{\"next_run\": 0, \"last_success\": 1455746793.562678, \"exponent\": 0}",
+ "backend_status": "1 - OK",
+ "deleted": false,
+ "write_protect": false,
+ "lazy_blocked": false,
+ "no_sync": false,
+ "instance_id": "instance-00000007",
+ "instance_uuid": "81dc0638-c9bc-4396-be17-ea805050e388",
+ "name": "ovs_vbng",
+ "instance_name": "mysite_vbng-6",
+ "ip": "130.127.133.59",
+ "image": 1,
+ "creator": 1,
+ "slice": 2,
+ "deployment": 1,
+ "node": 3,
+ "numberCores": 0,
+ "flavor": 1,
+ "userData": null,
+ "networks": [
+ 8,
+ 3,
+ 9
+ ]
+ },
+ {
+ "humanReadableName": "onos_app_2",
+ "id": 2,
+ "created": "2016-02-17T22:00:58.199Z",
+ "updated": "2016-02-17T22:05:26.512Z",
+ "enacted": "2016-02-17T22:05:26.521Z",
+ "policed": "2016-02-17T22:05:26.730Z",
+ "backend_register": "{\"next_run\": 0, \"last_success\": 1455746726.521625, \"exponent\": 0}",
+ "backend_status": "1 - OK",
+ "deleted": false,
+ "write_protect": false,
+ "lazy_blocked": false,
+ "no_sync": false,
+ "instance_id": "instance-00000003",
+ "instance_uuid": "8e3f00c5-0957-4505-ae69-e03e41306435",
+ "name": "onos_app_2",
+ "instance_name": "mysite_onos_volt-2",
+ "ip": "130.127.133.93",
+ "image": 1,
+ "creator": 1,
+ "slice": 4,
+ "deployment": 1,
+ "node": 2,
+ "numberCores": 0,
+ "flavor": 1,
+ "userData": null,
+ "networks": [
+ 12,
+ 13
+ ]
+ },
+ {
+ "humanReadableName": "ovs_volt",
+ "id": 5,
+ "created": "2016-02-17T22:00:58.540Z",
+ "updated": "2016-02-17T22:06:50.666Z",
+ "enacted": "2016-02-17T22:06:50.680Z",
+ "policed": "2016-02-17T22:06:51.342Z",
+ "backend_register": "{\"next_run\": 0, \"last_success\": 1455746810.680553, \"exponent\": 0}",
+ "backend_status": "1 - OK",
+ "deleted": false,
+ "write_protect": false,
+ "lazy_blocked": false,
+ "no_sync": false,
+ "instance_id": "instance-00000008",
+ "instance_uuid": "49c08f77-f05a-4c9b-859c-20c2982b19c6",
+ "name": "ovs_volt",
+ "instance_name": "mysite_volt-5",
+ "ip": "130.127.133.93",
+ "image": 1,
+ "creator": 1,
+ "slice": 6,
+ "deployment": 1,
+ "node": 2,
+ "numberCores": 0,
+ "flavor": 1,
+ "userData": null,
+ "networks": [
+ 17,
+ 16,
+ 4
+ ]
+ },
+ {
+ "humanReadableName": "mysite_vsg-1",
+ "id": 1,
+ "created": "2016-02-17T22:00:58.015Z",
+ "updated": "2016-02-17T22:05:44.877Z",
+ "enacted": "2016-02-17T22:05:44.887Z",
+ "policed": "2016-02-17T22:05:45.538Z",
+ "backend_register": "{\"next_run\": 0, \"last_success\": 1455746744.887768, \"exponent\": 0}",
+ "backend_status": "1 - OK",
+ "deleted": false,
+ "write_protect": false,
+ "lazy_blocked": false,
+ "no_sync": false,
+ "instance_id": "instance-00000004",
+ "instance_uuid": "075a3ae4-9e76-4198-8e6b-67c67b996745",
+ "name": "mysite_vsg",
+ "instance_name": "mysite_vsg-1",
+ "ip": "130.127.133.90",
+ "image": 1,
+ "creator": 1,
+ "slice": 1,
+ "deployment": 1,
+ "node": 1,
+ "numberCores": 0,
+ "flavor": 1,
+ "userData": null,
+ "networks": [
+ 1,
+ 6,
+ 7,
+ 2
+ ]
+ },
+ {
+ "humanReadableName": "mysite_vsg-2",
+ "id": 11,
+ "created": "2016-02-17T22:00:58.015Z",
+ "updated": "2016-02-17T22:05:44.877Z",
+ "enacted": "2016-02-17T22:05:44.887Z",
+ "policed": "2016-02-17T22:05:45.538Z",
+ "backend_register": "{\"next_run\": 0, \"last_success\": 1455746744.887768, \"exponent\": 0}",
+ "backend_status": "1 - OK",
+ "deleted": false,
+ "write_protect": false,
+ "lazy_blocked": false,
+ "no_sync": false,
+ "instance_id": "instance-00000004",
+ "instance_uuid": "075a3ae4-9e76-4198-8e6b-67c67b996746",
+ "name": "mysite_vsg",
+ "instance_name": "mysite_vsg-2",
+ "ip": "130.127.133.90",
+ "image": 1,
+ "creator": 1,
+ "slice": 1,
+ "deployment": 1,
+ "node": 2,
+ "numberCores": 0,
+ "flavor": 1,
+ "userData": null,
+ "networks": [
+ 1,
+ 6,
+ 7,
+ 2
+ ]
+ }
+]
\ No newline at end of file
diff --git a/views/ngXosViews/diagnostic/mocks/data/meterstatistics.json b/views/ngXosViews/diagnostic/mocks/data/meterstatistics.json
new file mode 100644
index 0000000..7be26c4
--- /dev/null
+++ b/views/ngXosViews/diagnostic/mocks/data/meterstatistics.json
@@ -0,0 +1,310 @@
+[
+ {
+ "resource_name": "mysite_vsg-1",
+ "description": "Existence of instance",
+ "resource": "075a3ae4-9e76-4198-8e6b-67c67b996745",
+ "meter": "instance",
+ "unit": "instance",
+ "category": "Nova",
+ "slice": "mysite_vsg",
+ "name": "none",
+ "service": "service_vsg",
+ "value": 1.0,
+ "time": "2016-02-17T22:19:00",
+ "project_id": "718dd78532a24a74b0491437bbef398c"
+ },
+ {
+ "resource_name": "mysite_vsg-1",
+ "description": "Volume of RAM",
+ "resource": "075a3ae4-9e76-4198-8e6b-67c67b996745",
+ "meter": "memory",
+ "unit": "MB",
+ "category": "Nova",
+ "slice": "mysite_vsg",
+ "name": "none",
+ "service": "service_vsg",
+ "value": 2048.0,
+ "time": "2016-02-17T22:19:00",
+ "project_id": "718dd78532a24a74b0491437bbef398c"
+ },
+ {
+ "resource_name": "mysite_vsg-1",
+ "description": "Volume of RAM used",
+ "resource": "075a3ae4-9e76-4198-8e6b-67c67b996745",
+ "meter": "memory.usage",
+ "unit": "MB",
+ "category": "Nova",
+ "slice": "mysite_vsg",
+ "name": "none",
+ "service": "service_vsg",
+ "value": 1754.0,
+ "time": "2016-02-17T22:19:00",
+ "project_id": "718dd78532a24a74b0491437bbef398c"
+ },
+ {
+ "resource_name": "mysite_vsg-1",
+ "description": "CPU time used",
+ "resource": "075a3ae4-9e76-4198-8e6b-67c67b996745",
+ "meter": "cpu",
+ "unit": "ns",
+ "category": "Nova",
+ "slice": "mysite_vsg",
+ "name": "none",
+ "service": "service_vsg",
+ "value": 179260000000.0,
+ "time": "2016-02-17T22:19:00",
+ "project_id": "718dd78532a24a74b0491437bbef398c"
+ },
+ {
+ "resource_name": "mysite_vsg-1",
+ "description": "Number of VCPUs",
+ "resource": "075a3ae4-9e76-4198-8e6b-67c67b996745",
+ "meter": "vcpus",
+ "unit": "vcpu",
+ "category": "Nova",
+ "slice": "mysite_vsg",
+ "name": "none",
+ "service": "service_vsg",
+ "value": 1.0,
+ "time": "2016-02-17T22:19:00",
+ "project_id": "718dd78532a24a74b0491437bbef398c"
+ },
+ {
+ "resource_name": "mysite_vsg-1",
+ "description": "Number of read requests",
+ "resource": "075a3ae4-9e76-4198-8e6b-67c67b996745",
+ "meter": "disk.read.requests",
+ "unit": "request",
+ "category": "Nova",
+ "slice": "mysite_vsg",
+ "name": "none",
+ "service": "service_vsg",
+ "value": 10444.0,
+ "time": "2016-02-17T22:19:00",
+ "project_id": "718dd78532a24a74b0491437bbef398c"
+ },
+ {
+ "resource_name": "mysite_vsg-1",
+ "description": "Number of write requests",
+ "resource": "075a3ae4-9e76-4198-8e6b-67c67b996745",
+ "meter": "disk.write.requests",
+ "unit": "request",
+ "category": "Nova",
+ "slice": "mysite_vsg",
+ "name": "none",
+ "service": "service_vsg",
+ "value": 58370.0,
+ "time": "2016-02-17T22:19:00",
+ "project_id": "718dd78532a24a74b0491437bbef398c"
+ },
+ {
+ "resource_name": "mysite_vsg-1",
+ "description": "Volume of reads",
+ "resource": "075a3ae4-9e76-4198-8e6b-67c67b996745",
+ "meter": "disk.read.bytes",
+ "unit": "B",
+ "category": "Nova",
+ "slice": "mysite_vsg",
+ "name": "none",
+ "service": "service_vsg",
+ "value": 317620030.0,
+ "time": "2016-02-17T22:19:00",
+ "project_id": "718dd78532a24a74b0491437bbef398c"
+ },
+ {
+ "resource_name": "mysite_vsg-1",
+ "description": "Volume of writes",
+ "resource": "075a3ae4-9e76-4198-8e6b-67c67b996745",
+ "meter": "disk.write.bytes",
+ "unit": "B",
+ "category": "Nova",
+ "slice": "mysite_vsg",
+ "name": "none",
+ "service": "service_vsg",
+ "value": 2818024448.0,
+ "time": "2016-02-17T22:19:00",
+ "project_id": "718dd78532a24a74b0491437bbef398c"
+ },
+ {
+ "resource_name": "mysite_vsg-1",
+ "description": "Size of root disk",
+ "resource": "075a3ae4-9e76-4198-8e6b-67c67b996745",
+ "meter": "disk.root.size",
+ "unit": "GB",
+ "category": "Nova",
+ "slice": "mysite_vsg",
+ "name": "none",
+ "service": "service_vsg",
+ "value": 20.0,
+ "time": "2016-02-17T22:19:00",
+ "project_id": "718dd78532a24a74b0491437bbef398c"
+ },
+ {
+ "resource_name": "mysite_vsg-1",
+ "description": "Size of ephemeral disk",
+ "resource": "075a3ae4-9e76-4198-8e6b-67c67b996745",
+ "meter": "disk.ephemeral.size",
+ "unit": "GB",
+ "category": "Nova",
+ "slice": "mysite_vsg",
+ "name": "none",
+ "service": "service_vsg",
+ "value": 0.0,
+ "time": "2016-02-17T22:19:00",
+ "project_id": "718dd78532a24a74b0491437bbef398c"
+ },
+ {
+ "resource_name": "mysite_vsg-2",
+ "description": "Existence of instance",
+ "resource": "075a3ae4-9e76-4198-8e6b-67c67b996746",
+ "meter": "instance",
+ "unit": "instance",
+ "category": "Nova",
+ "slice": "mysite_vsg",
+ "name": "none",
+ "service": "service_vsg",
+ "value": 1.0,
+ "time": "2016-02-17T22:19:00",
+ "project_id": "718dd78532a24a74b0491437bbef398c"
+ },
+ {
+ "resource_name": "mysite_vsg-2",
+ "description": "Volume of RAM",
+ "resource": "075a3ae4-9e76-4198-8e6b-67c67b996746",
+ "meter": "memory",
+ "unit": "MB",
+ "category": "Nova",
+ "slice": "mysite_vsg",
+ "name": "none",
+ "service": "service_vsg",
+ "value": 2048.0,
+ "time": "2016-02-17T22:19:00",
+ "project_id": "718dd78532a24a74b0491437bbef398c"
+ },
+ {
+ "resource_name": "mysite_vsg-2",
+ "description": "Volume of RAM used",
+ "resource": "075a3ae4-9e76-4198-8e6b-67c67b996746",
+ "meter": "memory.usage",
+ "unit": "MB",
+ "category": "Nova",
+ "slice": "mysite_vsg",
+ "name": "none",
+ "service": "service_vsg",
+ "value": 1534.0,
+ "time": "2016-02-17T22:19:00",
+ "project_id": "718dd78532a24a74b0491437bbef398c"
+ },
+ {
+ "resource_name": "mysite_vsg-2",
+ "description": "CPU time used",
+ "resource": "075a3ae4-9e76-4198-8e6b-67c67b996746",
+ "meter": "cpu",
+ "unit": "ns",
+ "category": "Nova",
+ "slice": "mysite_vsg",
+ "name": "none",
+ "service": "service_vsg",
+ "value": 134920000000.0,
+ "time": "2016-02-17T22:19:00",
+ "project_id": "718dd78532a24a74b0491437bbef398c"
+ },
+ {
+ "resource_name": "mysite_vsg-2",
+ "description": "Number of VCPUs",
+ "resource": "075a3ae4-9e76-4198-8e6b-67c67b996746",
+ "meter": "vcpus",
+ "unit": "vcpu",
+ "category": "Nova",
+ "slice": "mysite_vsg",
+ "name": "none",
+ "service": "service_vsg",
+ "value": 1.0,
+ "time": "2016-02-17T22:19:00",
+ "project_id": "718dd78532a24a74b0491437bbef398c"
+ },
+ {
+ "resource_name": "mysite_vsg-2",
+ "description": "Number of read requests",
+ "resource": "075a3ae4-9e76-4198-8e6b-67c67b996746",
+ "meter": "disk.read.requests",
+ "unit": "request",
+ "category": "Nova",
+ "slice": "mysite_vsg",
+ "name": "none",
+ "service": "service_vsg",
+ "value": 10222.0,
+ "time": "2016-02-17T22:19:00",
+ "project_id": "718dd78532a24a74b0491437bbef398c"
+ },
+ {
+ "resource_name": "mysite_vsg-2",
+ "description": "Number of write requests",
+ "resource": "075a3ae4-9e76-4198-8e6b-67c67b996746",
+ "meter": "disk.write.requests",
+ "unit": "request",
+ "category": "Nova",
+ "slice": "mysite_vsg",
+ "name": "none",
+ "service": "service_vsg",
+ "value": 38570.0,
+ "time": "2016-02-17T22:19:00",
+ "project_id": "718dd78532a24a74b0491437bbef398c"
+ },
+ {
+ "resource_name": "mysite_vsg-2",
+ "description": "Volume of reads",
+ "resource": "075a3ae4-9e76-4198-8e6b-67c67b996746",
+ "meter": "disk.read.bytes",
+ "unit": "B",
+ "category": "Nova",
+ "slice": "mysite_vsg",
+ "name": "none",
+ "service": "service_vsg",
+ "value": 326340030.0,
+ "time": "2016-02-17T22:19:00",
+ "project_id": "718dd78532a24a74b0491437bbef398c"
+ },
+ {
+ "resource_name": "mysite_vsg-2",
+ "description": "Volume of writes",
+ "resource": "075a3ae4-9e76-4198-8e6b-67c67b996746",
+ "meter": "disk.write.bytes",
+ "unit": "B",
+ "category": "Nova",
+ "slice": "mysite_vsg",
+ "name": "none",
+ "service": "service_vsg",
+ "value": 2818024448.0,
+ "time": "2016-02-17T22:19:00",
+ "project_id": "718dd78532a24a74b0491437bbef398c"
+ },
+ {
+ "resource_name": "mysite_vsg-2",
+ "description": "Size of root disk",
+ "resource": "075a3ae4-9e76-4198-8e6b-67c67b996746",
+ "meter": "disk.root.size",
+ "unit": "GB",
+ "category": "Nova",
+ "slice": "mysite_vsg",
+ "name": "none",
+ "service": "service_vsg",
+ "value": 20.0,
+ "time": "2016-02-17T22:19:00",
+ "project_id": "718dd78532a24a74b0491437bbef398c"
+ },
+ {
+ "resource_name": "mysite_vsg-2",
+ "description": "Size of ephemeral disk",
+ "resource": "075a3ae4-9e76-4198-8e6b-67c67b996746",
+ "meter": "disk.ephemeral.size",
+ "unit": "GB",
+ "category": "Nova",
+ "slice": "mysite_vsg",
+ "name": "none",
+ "service": "service_vsg",
+ "value": 0.0,
+ "time": "2016-02-17T22:19:00",
+ "project_id": "718dd78532a24a74b0491437bbef398c"
+ }
+]
\ No newline at end of file
diff --git a/views/ngXosViews/diagnostic/mocks/data/nodes.json b/views/ngXosViews/diagnostic/mocks/data/nodes.json
new file mode 100644
index 0000000..03ca1da
--- /dev/null
+++ b/views/ngXosViews/diagnostic/mocks/data/nodes.json
@@ -0,0 +1,53 @@
+[
+ {
+ "humanReadableName": "cp-3.teone-cord.xos-pg0.clemson.cloudlab.us",
+ "id": 3,
+ "created": "2016-02-17T22:00:53.717Z",
+ "updated": "2016-02-17T22:01:24.890Z",
+ "enacted": null,
+ "policed": null,
+ "backend_register": "{}",
+ "backend_status": "0 - Provisioning in progress",
+ "deleted": false,
+ "write_protect": false,
+ "lazy_blocked": false,
+ "no_sync": true,
+ "name": "cp-3.teone-cord.xos-pg0.clemson.cloudlab.us",
+ "site_deployment": "http://clnode067.clemson.cloudlab.us:9999/xos/sitedeployments/1/",
+ "site": "http://clnode067.clemson.cloudlab.us:9999/xos/sites/1/"
+ },
+ {
+ "humanReadableName": "cp-2.teone-cord.xos-pg0.clemson.cloudlab.us",
+ "id": 2,
+ "created": "2016-02-17T22:00:53.701Z",
+ "updated": "2016-02-17T22:01:24.891Z",
+ "enacted": null,
+ "policed": null,
+ "backend_register": "{}",
+ "backend_status": "0 - Provisioning in progress",
+ "deleted": false,
+ "write_protect": false,
+ "lazy_blocked": false,
+ "no_sync": true,
+ "name": "cp-2.teone-cord.xos-pg0.clemson.cloudlab.us",
+ "site_deployment": "http://clnode067.clemson.cloudlab.us:9999/xos/sitedeployments/1/",
+ "site": "http://clnode067.clemson.cloudlab.us:9999/xos/sites/1/"
+ },
+ {
+ "humanReadableName": "cp-1.teone-cord.xos-pg0.clemson.cloudlab.us",
+ "id": 1,
+ "created": "2016-02-17T22:00:53.680Z",
+ "updated": "2016-02-17T22:01:24.892Z",
+ "enacted": null,
+ "policed": null,
+ "backend_register": "{}",
+ "backend_status": "0 - Provisioning in progress",
+ "deleted": false,
+ "write_protect": false,
+ "lazy_blocked": false,
+ "no_sync": true,
+ "name": "cp-1.teone-cord.xos-pg0.clemson.cloudlab.us",
+ "site_deployment": "http://clnode067.clemson.cloudlab.us:9999/xos/sitedeployments/1/",
+ "site": "http://clnode067.clemson.cloudlab.us:9999/xos/sites/1/"
+ }
+]
\ No newline at end of file
diff --git a/views/ngXosViews/diagnostic/mocks/data/services.json b/views/ngXosViews/diagnostic/mocks/data/services.json
new file mode 100644
index 0000000..b3ae7b7
--- /dev/null
+++ b/views/ngXosViews/diagnostic/mocks/data/services.json
@@ -0,0 +1,177 @@
+[
+ {
+ "humanReadableName":"service_vbng",
+ "id":1,
+ "created":"2016-02-17T19:36:04.242Z",
+ "updated":"2016-02-17T19:36:04.242Z",
+ "enacted":null,
+ "policed":null,
+ "backend_register":"{}",
+ "backend_status":"0 - Provisioning in progress",
+ "deleted":false,
+ "write_protect":false,
+ "lazy_blocked":false,
+ "no_sync":false,
+ "description":null,
+ "enabled":true,
+ "kind":"vBNG",
+ "name":"service_vbng",
+ "versionNumber":"",
+ "published":true,
+ "view_url":"/admin/cord/vbngservice/$id$/",
+ "icon_url":null,
+ "public_key":null,
+ "service_specific_id":null,
+ "service_specific_attribute":null
+ },
+ {
+ "humanReadableName":"service_vsg",
+ "id":2,
+ "created":"2016-02-17T19:36:04.249Z",
+ "updated":"2016-02-17T19:36:04.249Z",
+ "enacted":null,
+ "policed":null,
+ "backend_register":"{}",
+ "backend_status":"0 - Provisioning in progress",
+ "deleted":false,
+ "write_protect":false,
+ "lazy_blocked":false,
+ "no_sync":false,
+ "description":null,
+ "enabled":true,
+ "kind":"vCPE",
+ "name":"service_vsg",
+ "versionNumber":"",
+ "published":true,
+ "view_url":"/admin/cord/vsgservice/$id$/",
+ "icon_url":null,
+ "public_key":"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC0bhkFHg3DxtQY1S0bN4nV2USTO2scHIrTO/WhZYFB9cqxKJPPlayMzi7sJxZFjsEPG9+gUJn7942eObs0mWkn7eIbph1rgKDhh2ZT6GFdJojgaRr0E3HhjmdHXF3IkCEz0DZ1aiBRX0dAEcp+B7eHvcg9QmBUN9TWhMlN82EKwMtWlrMwAqycNEcPiKiwMC3SPNPrq5qTrxIlzMG8Q51Z1b0FYx2oP0E44zecquFF8qfwoVbA48qT0fdPIdcQ0otEdsGaOxxurOPA86q1zYg60w+Hsygl8L2UpyUqEuXKm0OuhckCmCkcPlEysMAty0bx/9M3DwSkMJdOj81Jl+Bd teone@ctl.teone.xos-pg0.clemson.cloudlab.us\n",
+ "service_specific_id":null,
+ "service_specific_attribute":"{\"backend_network_label\": \"hpc_client\"}"
+ },
+ {
+ "humanReadableName":"service_volt",
+ "id":3,
+ "created":"2016-02-17T19:36:04.585Z",
+ "updated":"2016-02-17T19:36:04.585Z",
+ "enacted":null,
+ "policed":null,
+ "backend_register":"{}",
+ "backend_status":"0 - Provisioning in progress",
+ "deleted":false,
+ "write_protect":false,
+ "lazy_blocked":false,
+ "no_sync":false,
+ "description":null,
+ "enabled":true,
+ "kind":"vOLT",
+ "name":"service_volt",
+ "versionNumber":"",
+ "published":true,
+ "view_url":"/admin/cord/voltservice/$id$/",
+ "icon_url":null,
+ "public_key":null,
+ "service_specific_id":null,
+ "service_specific_attribute":null
+ },
+ {
+ "humanReadableName":"service_ceilometer",
+ "id":6,
+ "created":"2016-02-17T19:36:09.291Z",
+ "updated":"2016-02-17T19:36:09.291Z",
+ "enacted":null,
+ "policed":null,
+ "backend_register":"{}",
+ "backend_status":"0 - Provisioning in progress",
+ "deleted":false,
+ "write_protect":false,
+ "lazy_blocked":false,
+ "no_sync":false,
+ "description":null,
+ "enabled":true,
+ "kind":"ceilometer",
+ "name":"service_ceilometer",
+ "versionNumber":"",
+ "published":true,
+ "view_url":"/admin/ceilometer/ceilometerservice/$id$/",
+ "icon_url":null,
+ "public_key":null,
+ "service_specific_id":null,
+ "service_specific_attribute":"{\"ceilometer_pub_sub_url\": \"http://10.11.10.1:4455/\"}"
+ },
+ {
+ "humanReadableName":"service_sflow",
+ "id":7,
+ "created":"2016-02-17T19:36:09.339Z",
+ "updated":"2016-02-17T20:01:35.518Z",
+ "enacted":null,
+ "policed":null,
+ "backend_register":"{\"next_run\": 1455768095.518195, \"last_failure\": 1455739295.518198, \"last_success\": 1455737795.306011, \"exponent\": 293, \"failures\": 293}",
+ "backend_status":"2 - Exception('defer object service_sflow due to waiting on instance.instance_name',)",
+ "deleted":false,
+ "write_protect":false,
+ "lazy_blocked":false,
+ "no_sync":false,
+ "description":null,
+ "enabled":true,
+ "kind":"sflow",
+ "name":"service_sflow",
+ "versionNumber":"",
+ "published":true,
+ "view_url":"/admin/ceilometer/sflowservice/$id$/",
+ "icon_url":null,
+ "public_key":null,
+ "service_specific_id":null,
+ "service_specific_attribute":"{\"sflow_api_port\": 33333, \"sflow_port\": 6343}"
+ },
+ {
+ "humanReadableName":"service_ONOS_vOLT",
+ "id":4,
+ "created":"2016-02-17T19:36:04.840Z",
+ "updated":"2016-02-17T20:01:35.987Z",
+ "enacted":null,
+ "policed":null,
+ "backend_register":"{\"next_run\": 1455768095.987071, \"failures\": 282, \"last_success\": 1455737792.664808, \"exponent\": 282, \"last_failure\": 1455739295.987074}",
+ "backend_status":"2 - Exception('defer object service_ONOS_vOLT due to waiting on instance.instance_name',)",
+ "deleted":false,
+ "write_protect":false,
+ "lazy_blocked":false,
+ "no_sync":false,
+ "description":null,
+ "enabled":true,
+ "kind":"onos",
+ "name":"service_ONOS_vOLT",
+ "versionNumber":"",
+ "published":true,
+ "view_url":"/admin/onos/onosservice/$id$/",
+ "icon_url":null,
+ "public_key":"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC0bhkFHg3DxtQY1S0bN4nV2USTO2scHIrTO/WhZYFB9cqxKJPPlayMzi7sJxZFjsEPG9+gUJn7942eObs0mWkn7eIbph1rgKDhh2ZT6GFdJojgaRr0E3HhjmdHXF3IkCEz0DZ1aiBRX0dAEcp+B7eHvcg9QmBUN9TWhMlN82EKwMtWlrMwAqycNEcPiKiwMC3SPNPrq5qTrxIlzMG8Q51Z1b0FYx2oP0E44zecquFF8qfwoVbA48qT0fdPIdcQ0otEdsGaOxxurOPA86q1zYg60w+Hsygl8L2UpyUqEuXKm0OuhckCmCkcPlEysMAty0bx/9M3DwSkMJdOj81Jl+Bd teone@ctl.teone.xos-pg0.clemson.cloudlab.us\n",
+ "service_specific_id":null,
+ "service_specific_attribute":"{\"no_container\": false}"
+ },
+ {
+ "humanReadableName":"service_ONOS_vBNG",
+ "id":5,
+ "created":"2016-02-17T19:36:04.917Z",
+ "updated":"2016-02-17T20:01:36.011Z",
+ "enacted":null,
+ "policed":null,
+ "backend_register":"{\"next_run\": 1455768096.011113, \"failures\": 282, \"last_success\": 1455737792.697535, \"exponent\": 282, \"last_failure\": 1455739296.011116}",
+ "backend_status":"2 - Exception('defer object service_ONOS_vBNG due to waiting on instance.instance_name',)",
+ "deleted":false,
+ "write_protect":false,
+ "lazy_blocked":false,
+ "no_sync":false,
+ "description":null,
+ "enabled":true,
+ "kind":"onos",
+ "name":"service_ONOS_vBNG",
+ "versionNumber":"",
+ "published":true,
+ "view_url":"/admin/onos/onosservice/$id$/",
+ "icon_url":null,
+ "public_key":"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC0bhkFHg3DxtQY1S0bN4nV2USTO2scHIrTO/WhZYFB9cqxKJPPlayMzi7sJxZFjsEPG9+gUJn7942eObs0mWkn7eIbph1rgKDhh2ZT6GFdJojgaRr0E3HhjmdHXF3IkCEz0DZ1aiBRX0dAEcp+B7eHvcg9QmBUN9TWhMlN82EKwMtWlrMwAqycNEcPiKiwMC3SPNPrq5qTrxIlzMG8Q51Z1b0FYx2oP0E44zecquFF8qfwoVbA48qT0fdPIdcQ0otEdsGaOxxurOPA86q1zYg60w+Hsygl8L2UpyUqEuXKm0OuhckCmCkcPlEysMAty0bx/9M3DwSkMJdOj81Jl+Bd teone@ctl.teone.xos-pg0.clemson.cloudlab.us\n",
+ "service_specific_id":null,
+ "service_specific_attribute":"{\"no_container\": false}"
+ }
+]
\ No newline at end of file
diff --git a/views/ngXosViews/diagnostic/mocks/data/subscribers.json b/views/ngXosViews/diagnostic/mocks/data/subscribers.json
new file mode 100644
index 0000000..3642257
--- /dev/null
+++ b/views/ngXosViews/diagnostic/mocks/data/subscribers.json
@@ -0,0 +1,20 @@
+[
+ {
+ "humanReadableName":"My House",
+ "id":1,
+ "created":"2016-02-17T19:36:04.167Z",
+ "updated":"2016-02-17T19:36:05.413Z",
+ "enacted":null,
+ "policed":null,
+ "backend_register":"{}",
+ "backend_status":"0 - Provisioning in progress",
+ "deleted":false,
+ "write_protect":false,
+ "lazy_blocked":false,
+ "no_sync":false,
+ "kind":"CordSubscriberRoot",
+ "name":"My House",
+ "service_specific_attribute":"{\"url_filter_enable\": false, \"cdn_enable\": false, \"url_filter_level\": \"R\", \"users\": [{\"mac\": \"01:02:03:04:05:06\", \"level\": \"PG_13\", \"id\": 0, \"name\": \"Mom's PC\"}, {\"mac\": \"34:36:3B:C9:B6:A6\", \"id\": 1, \"name\": \"Jill's Laptop\", \"level\": \"PG_13\"}, {\"mac\": \"68:5B:35:9D:91:D5\", \"level\": \"PG_13\", \"id\": 2, \"name\": \"Jack's Laptop\"}, {\"id\": 3, \"mac\": \"90:E2:BA:82:F9:75\", \"name\": \"Dad's PC\", \"level\": \"PG_13\"}], \"firewall_enable\": false}",
+ "service_specific_id":"123"
+ }
+]
\ No newline at end of file
diff --git a/views/ngXosViews/diagnostic/mocks/data/tenants.json b/views/ngXosViews/diagnostic/mocks/data/tenants.json
new file mode 100644
index 0000000..3f7574c
--- /dev/null
+++ b/views/ngXosViews/diagnostic/mocks/data/tenants.json
@@ -0,0 +1,209 @@
+[
+ {
+ "humanReadableName": "coarse-tenant-1",
+ "id": 1,
+ "created": "2016-02-17T19:36:04.259Z",
+ "updated": "2016-02-17T19:36:04.259Z",
+ "enacted": null,
+ "policed": null,
+ "backend_register": "{}",
+ "backend_status": "0 - Provisioning in progress",
+ "deleted": false,
+ "write_protect": false,
+ "lazy_blocked": false,
+ "no_sync": false,
+ "kind": "coarse",
+ "provider_service": 1,
+ "subscriber_service": 2,
+ "subscriber_tenant": null,
+ "subscriber_user": null,
+ "subscriber_root": null,
+ "service_specific_id": null,
+ "service_specific_attribute": null,
+ "connect_method": "na"
+ },
+ {
+ "humanReadableName": "coarse-tenant-2",
+ "id": 2,
+ "created": "2016-02-17T19:36:04.600Z",
+ "updated": "2016-02-17T19:36:04.600Z",
+ "enacted": null,
+ "policed": null,
+ "backend_register": "{}",
+ "backend_status": "0 - Provisioning in progress",
+ "deleted": false,
+ "write_protect": false,
+ "lazy_blocked": false,
+ "no_sync": false,
+ "kind": "coarse",
+ "provider_service": 2,
+ "subscriber_service": 3,
+ "subscriber_tenant": null,
+ "subscriber_user": null,
+ "subscriber_root": null,
+ "service_specific_id": null,
+ "service_specific_attribute": null,
+ "connect_method": "na"
+ },
+ {
+ "humanReadableName": "vCPE-tenant-4",
+ "id": 4,
+ "created": "2016-02-17T19:36:04.650Z",
+ "updated": "2016-02-17T20:55:18.115Z",
+ "enacted": null,
+ "policed": null,
+ "backend_register": "{\"next_run\": 1455771318.072057, \"last_failure\": 1455742518.072061, \"last_success\": 1455737797.006782, \"exponent\": 871, \"failures\": 871}",
+ "backend_status": "2 - Exception('defer object vCPE-tenant-4 due to waiting on instance.instance_name',)",
+ "deleted": false,
+ "write_protect": false,
+ "lazy_blocked": false,
+ "no_sync": false,
+ "kind": "vCPE",
+ "provider_service": 2,
+ "subscriber_service": null,
+ "subscriber_tenant": "3",
+ "subscriber_user": null,
+ "subscriber_root": null,
+ "service_specific_id": null,
+ "service_specific_attribute": "{\"instance_id\": 1, \"creator_id\": 1}",
+ "connect_method": "na"
+ },
+ {
+ "humanReadableName": "ceilometer-tenant-8",
+ "id": 8,
+ "created": "2016-02-17T19:36:09.370Z",
+ "updated": "2016-02-17T20:55:19.823Z",
+ "enacted": null,
+ "policed": null,
+ "backend_register": "{\"next_run\": 1455771319.823556, \"failures\": 874, \"last_success\": 1455737795.314296, \"exponent\": 874, \"last_failure\": 1455742519.823559}",
+ "backend_status": "2 - Exception('defer object ceilometer-tenant-8 due to waiting on instance.instance_name',)",
+ "deleted": false,
+ "write_protect": false,
+ "lazy_blocked": false,
+ "no_sync": false,
+ "kind": "ceilometer",
+ "provider_service": 6,
+ "subscriber_service": null,
+ "subscriber_tenant": null,
+ "subscriber_user": null,
+ "subscriber_root": null,
+ "service_specific_id": null,
+ "service_specific_attribute": "{\"instance_id\": 7, \"creator_id\": 1, \"use_same_instance_for_multiple_tenants\": true}",
+ "connect_method": "na"
+ },
+ {
+ "humanReadableName": "vBNG-tenant-5",
+ "id": 5,
+ "created": "2016-02-17T19:36:04.769Z",
+ "updated": "2016-02-17T20:55:21.385Z",
+ "enacted": null,
+ "policed": null,
+ "backend_register": "{\"next_run\": 1455771321.384039, \"last_failure\": 1455742521.384043, \"last_success\": 1455737796.18277, \"exponent\": 881, \"failures\": 881}",
+ "backend_status": "2 - Exception('defer object vBNG-tenant-5 due to does not have a WAN IP yet',)",
+ "deleted": false,
+ "write_protect": false,
+ "lazy_blocked": false,
+ "no_sync": false,
+ "kind": "vBNG",
+ "provider_service": 1,
+ "subscriber_service": null,
+ "subscriber_tenant": "4",
+ "subscriber_user": null,
+ "subscriber_root": null,
+ "service_specific_id": null,
+ "service_specific_attribute": null,
+ "connect_method": "na"
+ },
+ {
+ "humanReadableName": "onos-tenant-6",
+ "id": 6,
+ "created": "2016-02-17T19:36:05.048Z",
+ "updated": "2016-02-17T20:41:16.675Z",
+ "enacted": "2016-02-17T20:41:16.729Z",
+ "policed": null,
+ "backend_register": "{\"next_run\": 0, \"last_success\": 1455741676.729897, \"exponent\": 0}",
+ "backend_status": "1 - OK",
+ "deleted": false,
+ "write_protect": false,
+ "lazy_blocked": false,
+ "no_sync": false,
+ "kind": "onos",
+ "provider_service": 5,
+ "subscriber_service": 1,
+ "subscriber_tenant": null,
+ "subscriber_user": null,
+ "subscriber_root": null,
+ "service_specific_id": null,
+ "service_specific_attribute": "{\"creator_id\": 1, \"dependencies\": \"org.onosproject.proxyarp, org.onosproject.virtualbng, org.onosproject.openflow, org.onosproject.fwd\", \"name\": \"vBNG_ONOS_app\"}",
+ "connect_method": "na"
+ },
+ {
+ "humanReadableName": "vOLT-tenant-3",
+ "id": 3,
+ "created": "2016-02-17T19:36:04.631Z",
+ "updated": "2016-02-17T20:28:30.428Z",
+ "enacted": null,
+ "policed": null,
+ "backend_register": "{}",
+ "backend_status": "0 - Provisioning in progress",
+ "deleted": false,
+ "write_protect": false,
+ "lazy_blocked": false,
+ "no_sync": false,
+ "kind": "vOLT",
+ "provider_service": 3,
+ "subscriber_service": null,
+ "subscriber_tenant": null,
+ "subscriber_user": null,
+ "subscriber_root": "http://clnode078.clemson.cloudlab.us:9999/xos/tenantroots/1/",
+ "service_specific_id": "123",
+ "service_specific_attribute": "{\"creator_id\": 1, \"c_tag\": \"432\", \"s_tag\": \"222\"}",
+ "connect_method": "na"
+ },
+ {
+ "humanReadableName": "onos-tenant-7",
+ "id": 7,
+ "created": "2016-02-17T19:36:05.089Z",
+ "updated": "2016-02-17T20:40:54.451Z",
+ "enacted": "2016-02-17T20:40:54.468Z",
+ "policed": null,
+ "backend_register": "{\"next_run\": 0, \"last_success\": 1455741654.468755, \"exponent\": 0}",
+ "backend_status": "1 - OK",
+ "deleted": false,
+ "write_protect": false,
+ "lazy_blocked": false,
+ "no_sync": false,
+ "kind": "onos",
+ "provider_service": 4,
+ "subscriber_service": 3,
+ "subscriber_tenant": null,
+ "subscriber_user": null,
+ "subscriber_root": null,
+ "service_specific_id": null,
+ "service_specific_attribute": "{\"creator_id\": 1, \"dependencies\": \"org.onosproject.openflow-base, org.onosproject.olt, org.ciena.onos.ext_notifier, org.ciena.onos.volt_event_publisher\", \"name\": \"vOLT_ONOS_app\", \"install_dependencies\": \"onos-ext-notifier-1.0-SNAPSHOT.oar, onos-ext-volt-event-publisher-1.0-SNAPSHOT.oar\"}",
+ "connect_method": "na"
+ },
+ {
+ "humanReadableName": "vCPE-tenant-4",
+ "id": 14,
+ "created": "2016-02-17T19:36:04.650Z",
+ "updated": "2016-02-17T20:55:18.115Z",
+ "enacted": null,
+ "policed": null,
+ "backend_register": "{\"next_run\": 1455771318.072057, \"last_failure\": 1455742518.072061, \"last_success\": 1455737797.006782, \"exponent\": 871, \"failures\": 871}",
+ "backend_status": "2 - Exception('defer object vCPE-tenant-4 due to waiting on instance.instance_name',)",
+ "deleted": false,
+ "write_protect": false,
+ "lazy_blocked": false,
+ "no_sync": false,
+ "kind": "vCPE",
+ "provider_service": 2,
+ "subscriber_service": null,
+ "subscriber_tenant": "3",
+ "subscriber_user": null,
+ "subscriber_root": null,
+ "service_specific_id": null,
+ "service_specific_attribute": "{\"instance_id\": 11, \"creator_id\": 1}",
+ "connect_method": "na"
+ }
+]
\ No newline at end of file
diff --git a/views/ngXosViews/diagnostic/mocks/diagnostic.conf.json b/views/ngXosViews/diagnostic/mocks/diagnostic.conf.json
new file mode 100644
index 0000000..9f574fe
--- /dev/null
+++ b/views/ngXosViews/diagnostic/mocks/diagnostic.conf.json
@@ -0,0 +1,33 @@
+[
+ {
+ "url": "subscribers",
+ "base": "xos/",
+ "methods": ["GET"]
+ },
+ {
+ "url": "services",
+ "base": "xos/",
+ "methods": ["GET"]
+ },
+ {
+ "url": "tenants",
+ "base": "xos/",
+ "methods": ["GET"]
+ },
+ {
+ "url": "nodes",
+ "base": "xos/",
+ "methods": ["GET"]
+ },
+ {
+ "url": "instances",
+ "base": "xos/",
+ "methods": ["GET"],
+ "param": "id"
+ },
+ {
+ "url": "meterstatistics",
+ "base": "xoslib/",
+ "methods": ["GET"]
+ }
+]
\ No newline at end of file