RIFT OSM R1 Initial Submission

Signed-off-by: Jeremy Mordkoff <jeremy.mordkoff@riftio.com>
diff --git a/rwlaunchpad/mock/data/nfvi-metrics.json b/rwlaunchpad/mock/data/nfvi-metrics.json
new file mode 100644
index 0000000..8620b5e
--- /dev/null
+++ b/rwlaunchpad/mock/data/nfvi-metrics.json
@@ -0,0 +1,33 @@
+[
+    {
+        "nfvi_metric": {
+                "vm": {
+                    "active_vm": 1,
+                    "inactive_vm": 1
+                },
+                "memory": {
+                    "used": {
+                        "value": 1
+                    },
+                    "total": {
+                        "value": 2
+                    },
+                    "utilization": {
+                        "value": 1
+                    }
+                },
+                "storage" : {
+                    "used": {
+                        "value": 1
+                    },
+                    "total": {
+                        "value": 2
+                    },
+                    "utilization": {
+                        "value": 1
+                    }
+                }
+        }
+    }
+]
+
diff --git a/rwlaunchpad/mock/data/ns-instance-config.json b/rwlaunchpad/mock/data/ns-instance-config.json
new file mode 100644
index 0000000..29af367
--- /dev/null
+++ b/rwlaunchpad/mock/data/ns-instance-config.json
@@ -0,0 +1,19 @@
+{
+    "nsr": [
+        {
+            "id": "a636c6de-6dd0-11e5-9e8f-6cb3113b406f",
+            "nsd-ref": "a631e8c6-663a-11e5-b122-6cb3113b406f",
+            "admin-status": "ENABLED"
+        },
+        {
+            "id": "c8c6cc24-6dd0-11e5-9e8f-6cb3113b406f",
+            "nsd-ref": "b631e8c6-663a-11e5-b122-6cb3113b406f",
+            "admin-status": "ENABLED"
+        },
+        {
+            "id": "c8c6cf3a-6dd0-11e5-9e8f-6cb3113b406f",
+            "nsd-ref": "c631e8c6-663a-11e5-b122-6cb3113b406f",
+            "admin-status": "DISABLED"
+        }
+    ]
+}
diff --git a/rwlaunchpad/mock/data/nsd_catalog.json b/rwlaunchpad/mock/data/nsd_catalog.json
new file mode 100644
index 0000000..0c6c6ec
--- /dev/null
+++ b/rwlaunchpad/mock/data/nsd_catalog.json
@@ -0,0 +1,44 @@
+{
+    "nsd": [
+        {
+            "id": "a631e8c6-663a-11e5-b122-6cb3113b406f",
+            "name": "Network Service Descriptor 1",
+            "short-name": "NSD1",
+            "vendor": "RIFT.io",
+            "description": "This is a description. It doesn't say much",
+            "version": "0.0.1",
+            "connection-point": [
+                {
+                    "name": "cp-name"
+                }
+            ]
+        },
+        {
+            "id": "b631e8c6-663a-11e5-b122-6cb3113b406f",
+            "name": "Network Service Descriptor 2",
+            "short-name": "NSD2",
+            "vendor": "RIFT.io",
+            "description": "This is a description. It doesn't say much",
+            "version": "0.0.1",
+            "connection-point": [
+                {
+                    "name": "cp-name"
+                }
+            ]
+        },
+        {
+            "id": "c631e8c6-663a-11e5-b122-6cb3113b406f",
+            "name": "Network Service Descriptor 3",
+            "short-name": "NSD3",
+            "vendor": "RIFT.io",
+            "description": "This is a description. It doesn't say much",
+            "version": "0.0.1",
+            "connection-point": [
+                {
+                    "name": "cp-name"
+                }
+            ]
+        }
+    ]
+}
+
diff --git a/rwlaunchpad/mock/data/nsr-templates.json b/rwlaunchpad/mock/data/nsr-templates.json
new file mode 100644
index 0000000..4c512e5
--- /dev/null
+++ b/rwlaunchpad/mock/data/nsr-templates.json
@@ -0,0 +1,57 @@
+[
+    {
+        "create_time": 1445876693,
+        "epa_param": {
+                "ovs_acceleration": {
+                    "vm": 2
+                },
+                "ovs_offload": {
+                    "vm": 2
+                },
+                "ddio": {
+                    "vm": 2
+                },
+                "cat": {
+                    "vm": 2
+                },
+                "cmt": {
+                    "vm": 2
+                }
+        },
+        "monitoring_param": [
+            {
+                "id": "monitoring-param-1",
+                "name": "rate",
+                "description": "Generalized rate monitoring param",
+                "group_tag": "group-a",
+                "min_value": 0,
+                "max_value": 100,
+                "current_value": 0,
+                "widget_type": "GAUGE",
+                "units": "gbps"
+            },
+            {
+                "id": "monitoring-param-2",
+                "name": "size",
+                "description": "Generalized size monitoring param",
+                "group_tag": "group-a",
+                "min_value": 0,
+                "max_value": 100,
+                "current_value": 0,
+                "widget_type": "GAUGE",
+                "units": "gb"
+            },
+            {
+                "id": "monitoring-param-3",
+                "name": "size22",
+                "description": "Generalized size monitoring param",
+                "group_tag": "group-b",
+                "min_value": 0,
+                "max_value": 100,
+                "current_value": 0,
+                "widget_type": "GAUGE",
+                "units": "gb"
+            }
+        ]
+    }
+]
diff --git a/rwlaunchpad/mock/data/ping-pong-ns-instance-config.json b/rwlaunchpad/mock/data/ping-pong-ns-instance-config.json
new file mode 100644
index 0000000..e7d6bb7
--- /dev/null
+++ b/rwlaunchpad/mock/data/ping-pong-ns-instance-config.json
@@ -0,0 +1,10 @@
+{
+    "nsr": [
+        {
+            "id": "f5f41f36-78f6-11e5-b9ba-6cb3113b406f",
+            "nsd-ref": "da1dfbcc-626b-11e5-998d-6cb3113b406f",
+            "admin-status": "ENABLED"
+        }
+    ]
+}
+
diff --git a/rwlaunchpad/mock/data/ping-pong-nsd.json b/rwlaunchpad/mock/data/ping-pong-nsd.json
new file mode 100644
index 0000000..7ad9f6b
--- /dev/null
+++ b/rwlaunchpad/mock/data/ping-pong-nsd.json
@@ -0,0 +1,118 @@
+{
+    "nsd": [
+        {
+            "id": "da1dfbcc-626b-11e5-998d-6cb3113b406f",
+            "name": "ping-pong-nsd",
+            "vendor": "RIFT.io",
+            "description": "Toy NS",
+            "version": "1.0",
+            "connection-point": [
+                {
+                    "name": "ping-pong-nsd/cp0",
+                    "type": "VPORT"
+                },
+                {
+                    "name": "ping-pong-nsd/cp1",
+                    "type": "VPORT"
+                }
+            ],
+            "vld": [
+                {
+                    "id": "ba1c03a8-626b-11e5-998d-6cb3113b406f",
+                    "name": "ping-pong-vld",
+                    "short-name": "ping-pong-vld",
+                    "vendor": "RIFT.io",
+                    "description": "Toy VL",
+                    "version": "1.0",
+                    "type": "ELAN",
+                    "vnfd-connection-point-ref": [
+                        {
+                            "member-vnf-index-ref": 0,
+                            "vnfd-id-ref": "ba145e82-626b-11e5-998d-6cb3113b406f",
+                            "vnfd-connection-point-ref": "ping-pong-vnfd/cp0"
+                        }
+                    ]
+                }
+            ],
+            "constituent-vnfd": [
+                {
+                    "member-vnf-index": 0,
+                    "vnfd-id-ref": "ba145e82-626b-11e5-998d-6cb3113b406f"
+                },
+                {
+                    "member-vnf-index": 1,
+                    "vnfd-id-ref": "ba1947da-626b-11e5-998d-6cb3113b406f"
+                }
+            ],
+            "monitoring-param": [
+                 {
+                    "id": "ping-tx-rate-mp",
+                    "name": "Ping Transmit Rate",
+                    "description": "Ping transmit rate",
+                    "group-tag": "group-1",
+                    "min-value": 0,
+                    "max-value": 100,
+                    "current-value": 0,
+                    "widget-type": "GAUGE",
+                    "units": "gbps"
+                },
+                {
+                    "id": "ping-rc-rate-mp",
+                    "name": "Ping Receive Rate",
+                    "description": "Ping receive rate",
+                    "group-tag": "group-1",
+                    "min-value": 0,
+                    "max-value": 100,
+                    "current-value": 0,
+                    "widget-type": "GAUGE",
+                    "units": "gbps"
+                },
+                {
+                    "id": "ping-packet-size-mp",
+                    "name": "Ping Packet Size",
+                    "description": "Ping packet size",
+                    "group-tag": "group-2",
+                    "min-value": 0,
+                    "max-value": 100,
+                    "current-value": 10,
+                    "widget-type": "GAUGE",
+                    "units": "gbps"
+                },
+                {
+                    "id": "pong-tx-rate-mp",
+                    "name": "Pong Transmit Rate 2",
+                    "description": "Pong transmit rate",
+                    "group-tag": "group-2",
+                    "min-value": 0,
+                    "max-value": 100,
+                    "current-value": 0,
+                    "widget-type": "GAUGE",
+                    "units": "gbps"
+                },
+                {
+                    "id": "pong-rc-rate-mp",
+                    "name": "Pong Receive Rate 2",
+                    "description": "Pong eceive rate",
+                    "group-tag": "group-2",
+                    "min-value": 0,
+                    "max-value": 100,
+                    "current-value": 0,
+                    "widget-type": "GAUGE",
+                    "units": "gbps"
+                },
+                {
+                    "id": "pong-packet-size-mp",
+                    "name": "Pong Packet Size",
+                    "description": "Pong packet size",
+                    "group-tag": "group-2",
+                    "min-value": 0,
+                    "max-value": 100,
+                    "current-value": 10,
+                    "widget-type": "TEXTBOX",
+                    "units": "mb"
+                }
+            ]
+        }
+    ]
+}
+
diff --git a/rwlaunchpad/mock/data/ping-pong-vnfd.json b/rwlaunchpad/mock/data/ping-pong-vnfd.json
new file mode 100644
index 0000000..c96ee40
--- /dev/null
+++ b/rwlaunchpad/mock/data/ping-pong-vnfd.json
@@ -0,0 +1,396 @@
+{
+    "vnfd": [
+        {
+            "id": "ba145e82-626b-11e5-998d-6cb3113b406f",
+            "name": "ping-vnfd",
+            "short-name": "ping-vnfd",
+            "vendor": "RIFT.io",
+            "description": "This is an example RIFT.ware VNF",
+            "version": "1.0",
+            "internal-vld": [
+                {
+                    "id" : "ba1478fe-626b-11e5-998d-6cb3113b406f",
+                    "name": "fabric",
+                    "short-name": "fabric",
+                    "description": "Virtual link for internal fabric",
+                    "type": "ELAN"
+                }
+            ],
+            "connection-point": [
+                {
+                    "name": "ping-vnfd/cp0",
+                    "type": "VPORT"
+                },
+                {
+                    "name": "ping-vnfd/cp1",
+                    "type": "VPORT"
+                }
+            ],
+            "vdu": [
+                {
+                    "id": "ba14a504-626b-11e5-998d-6cb3113b406f",
+                    "name": "iovdu",
+                    "count": 2,
+                    "vm-flavor": {
+                        "vcpu-count": 4,
+                        "memory-mb": 1638,
+                        "storage-gb": 16
+                    },
+                    "guest-epa": {
+                        "trusted-execution": true,
+                        "mempage-size": "PREFER_LARGE",
+                        "cpu-pinning-policy": "DEDICATED",
+                        "cpu-thread-pinning-policy": "AVOID",
+                        "numa-node-policy": {
+                            "node-cnt": 2,
+                            "mem-policy": "PREFERRED",
+                            "node": [
+                                {
+                                    "id": 1,
+                                    "vcpu": [ 0, 1 ],
+                                    "memory-mb": 8192
+                                }
+                            ]
+                        }
+                    },
+                    "hypervisor-epa": {
+                            "type": "PREFER_KVM"
+                    },
+                    "host-epa": {
+                        "cpu-model": "PREFER_SANDYBRIDGE",
+                        "cpu-arch": "PREFER_X86_64",
+                        "cpu-vendor": "PREFER_INTEL",
+                        "cpu-socket-count": "PREFER_TWO",
+                        "cpu-feature": [ "PREFER_AES", "PREFER_CAT" ]
+                    },
+                    "image": "rw_openstack.qcow2",
+                    "internal-connection-point": [
+                        {
+                            "id": "ba153744-626b-11e5-998d-6cb3113b406f",
+                            "type": "VPORT"
+                        },
+                        {
+                            "id": "ba15577e-626b-11e5-998d-6cb3113b406f",
+                            "type": "VPORT"
+                        }
+                    ],
+                    "internal-interface": [
+                        {
+                            "name": "eth0",
+                            "vdu-internal-connection-point-ref": "ba153744-626b-11e5-998d-6cb3113b406f",
+                            "virtual-interface": {
+                                "type": "VIRTIO"
+                            }
+                        },
+                        {
+                            "name": "eth1",
+                            "vdu-internal-connection-point-ref": "ba15577e-626b-11e5-998d-6cb3113b406f",
+                            "virtual-interface": {
+                                "type": "VIRTIO"
+                            }
+                        }
+                    ],
+                    "external-interface": [
+                        {
+                            "name": "eth0",
+                            "vnfd-connection-point-ref": "ping-vnfd/cp0",
+                            "virtual-interface": {
+                                "type": "VIRTIO"
+                            }
+                        },
+                        {
+                            "name": "eth1",
+                            "vnfd-connection-point-ref": "ping-vnfd/cp1",
+                            "virtual-interface": {
+                                "type": "VIRTIO"
+                            }
+                        }
+                    ]
+                }
+            ],
+            "monitoring-param": [
+                {
+                    "id": "ping-tx-rate-mp",
+                    "name": "Ping Transmit Rate",
+                    "description": "Ping transmit rate",
+                    "group-tag": "group-1",
+                    "min-value": 0,
+                    "max-value": 100,
+                    "current-value": 10,
+                    "widget-type": "GAUGE",
+                    "units": "gbps"
+                },
+                {
+                    "id": "ping-rc-rate-mp",
+                    "name": "Ping Receive Rate",
+                    "description": "Ping receive rate",
+                    "group-tag": "group-1",
+                    "min-value": 0,
+                    "max-value": 100,
+                    "current-value": 10,
+                    "widget-type": "GAUGE",
+                    "units": "gbps"
+                },
+                {
+                    "id": "ping-packet-size-mp",
+                    "name": "Ping Packet Size",
+                    "description": "Ping packet size",
+                    "group-tag": "group-2",
+                    "min-value": 0,
+                    "max-value": 100,
+                    "current-value": 10,
+                    "widget-type": "GAUGE",
+                    "units": "gbps"
+                }
+            ],
+            "rw-vnfd:control-param": [
+                {
+                    "id": "ping-transmit-rate-cp1",
+                    "name": "Transmit Rate",
+                    "description": "Ping transmit rate",
+                    "group-tag": "group-3",
+                    "min-value": 0,
+                    "max-value": 100,
+                    "current-value": 10,
+                    "step-value": 1,
+                    "units": "gbps",
+                    "widget-type": "GAUGE",
+                    "url": "https://%s/api/operations/set-control-param",
+                    "operation": "POST",
+                    "payload": "{\"set-control-param\":{\"id\":\"%s\",\"obj-code\":\"VNFR\",\"control-id\":\"ping-transmit-rate-cp1\",\"value\":10} }"
+                },
+                {
+                    "id": "ping-packet-size-cp1",
+                    "name": "Ping Packet Size",
+                    "description": "Packet size",
+                    "group-tag": "group-4",
+                    "min-value": 0,
+                    "max-value": 100,
+                    "current-value": 10,
+                    "step-value": 1,
+                    "units": "gbps",
+                    "widget-type": "GAUGE",
+                    "url": "https://%s/api/operations/set-control-param",
+                    "operation": "POST",
+                    "payload": "{\"set-control-param\":{\"id\":\"%s\",\"obj-code\":\"VNFR\",\"control-id\":\"ping-packet-size-cp1\",\"value\":10 } }"
+                }
+            ],
+            "rw-vnfd:action-param" : [
+                {
+                    "id": "start-vnfr",
+                    "name": "Start PING",
+                    "description": "Start the PUNG VNFR",
+                    "group-tag": "start-vnfr",
+                    "url": "https://%s/api/operations/start-vnfr",
+                    "operation": "POST",
+                    "payload": "{\"start-vnfr\": { \"id\": \"%s\" }  }"
+                },
+                {
+                    "id": "stop-vnfr",
+                    "name": "Stop PING",
+                    "description": "Stop the PING VNFR",
+                    "group-tag": "stop-vnfr",
+                    "url": "https://%s/api/operations/stop-vnfr",
+                    "operation": "POST",
+                    "payload": "{\"stop-vnfr\": { \"id\": \"%s\" }  }"
+                }
+            ]
+        },
+        {
+            "id": "ba1947da-626b-11e5-998d-6cb3113b406f",
+            "name": "pong-vnfd",
+            "short-name": "pong-vnfd",
+            "vendor": "RIFT.io",
+            "description": "This is an example RIFT.ware VNF",
+            "version": "1.0",
+            "internal-vld": [
+                {
+                    "id" : "ba1478fe-626b-11e5-998d-6cb3113b406f",
+                    "name": "fabric",
+                    "short-name": "fabric",
+                    "description": "Virtual link for internal fabric",
+                    "type": "ELAN"
+                }
+            ],
+            "connection-point": [
+                {
+                    "name": "pong-vnfd/cp0",
+                    "type": "VPORT"
+                },
+                {
+                    "name": "pong-vnfd/cp1",
+                    "type": "VPORT"
+                }
+            ],
+            "vdu": [
+                {
+                    "id": "ba14a504-626b-11e5-998d-6cb3113b406f",
+                    "name": "iovdu",
+                    "count": 2,
+                    "vm-flavor": {
+                        "vcpu-count": 4,
+                        "memory-mb": 1638,
+                        "storage-gb": 16
+                    },
+                    "guest-epa": {
+                        "trusted-execution": true,
+                        "mempage-size": "PREFER_LARGE",
+                        "cpu-pinning-policy": "DEDICATED",
+                        "cpu-thread-pinning-policy": "AVOID",
+                        "numa-node-policy": {
+                            "node-cnt": 2,
+                            "mem-policy": "PREFERRED",
+                            "node": [
+                                {
+                                    "id": 1,
+                                    "vcpu": [ 0, 1 ],
+                                    "memory-mb": 8192
+                                }
+                            ]
+                        }
+                    },
+                    "hypervisor-epa": {
+                            "type": "PREFER_KVM"
+                    },
+                    "host-epa": {
+                        "cpu-model": "PREFER_SANDYBRIDGE",
+                        "cpu-arch": "PREFER_X86_64",
+                        "cpu-vendor": "PREFER_INTEL",
+                        "cpu-socket-count": "PREFER_TWO",
+                        "cpu-feature": [ "PREFER_AES", "PREFER_CAT" ]
+                    },
+                    "image": "rw_openstack.qcow2",
+                    "internal-connection-point": [
+                        {
+                            "id": "ba153744-626b-11e5-998d-6cb3113b406f",
+                            "type": "VPORT"
+                        },
+                        {
+                            "id": "ba15577e-626b-11e5-998d-6cb3113b406f",
+                            "type": "VPORT"
+                        }
+                    ],
+                    "internal-interface": [
+                        {
+                            "name": "eth0",
+                            "vdu-internal-connection-point-ref": "ba153744-626b-11e5-998d-6cb3113b406f",
+                            "virtual-interface": {
+                                "type": "VIRTIO"
+                            }
+                        },
+                        {
+                            "name": "eth1",
+                            "vdu-internal-connection-point-ref": "ba15577e-626b-11e5-998d-6cb3113b406f",
+                            "virtual-interface": {
+                                "type": "VIRTIO"
+                            }
+                        }
+                    ],
+                    "external-interface": [
+                        {
+                            "name": "eth0",
+                            "vnfd-connection-point-ref": "pong-vnfd/cp0",
+                            "virtual-interface": {
+                                "type": "VIRTIO"
+                            }
+                        },
+                        {
+                            "name": "eth1",
+                            "vnfd-connection-point-ref": "pong-vnfd/cp1",
+                            "virtual-interface": {
+                                "type": "VIRTIO"
+                            }
+                        }
+                    ]
+                }
+            ],
+            "monitoring-param": [
+                {
+                    "id": "pong-tx-rate-mp",
+                    "name": "Pong Transmit Rate",
+                    "description": "Pong transmit rate",
+                    "group-tag": "group-1",
+                    "min-value": 0,
+                    "max-value": 100,
+                    "current-value": 10,
+                    "widget-type": "GAUGE",
+                    "units": "gbps"
+                },
+                {
+                    "id": "pong-rx-rate-mp",
+                    "name": "Pong Receive Rate",
+                    "description": "Pong receive rate",
+                    "group-tag": "group-1",
+                    "min-value": 0,
+                    "max-value": 100,
+                    "current-value": 10,
+                    "widget-type": "GAUGE",
+                    "units": "gbps"
+                },
+                {
+                    "id": "pong-packet-size-mp",
+                    "name": "Pong Packet Size",
+                    "description": "Pong packet size",
+                    "group-tag": "group-2",
+                    "min-value": 0,
+                    "max-value": 100,
+                    "current-value": 10,
+                    "widget-type": "TEXTBOX",
+                    "units": "mb"
+                }
+            ],
+            "rw-vnfd:control-param" : [
+                {
+                    "id": "pong-receive-rate-cp1",
+                    "name": "Pong Receive Rate",
+                    "description": "Pong receive rate",
+                    "group-tag": "group-3",
+                    "min-value": 0,
+                    "max-value": 100,
+                    "current-value": 0,
+                    "step-value": 1,
+                    "units": "gbps",
+                    "widget-type": "GAUGE",
+                    "url": "https://{host}/api/operations/vnfr-control-param/",
+                    "operation": "POST",
+                    "payload": "{\"set-control-param\":{\"id\":\"%s\",\"obj-code\":\"VNFR\",\"control-id\":\"pong-receive-rate-cp1\",\"value\":10} }"
+                },
+                {
+                    "id": "pong-packet-size-cp1",
+                    "name": "Pong Packaet Size",
+                    "description": "Packet size",
+                    "group-tag": "group-4",
+                    "min-value": 0,
+                    "max-value": 100,
+                    "current-value": 0,
+                    "step-value": 1,
+                    "units": "gbps",
+                    "widget-type": "GAUGE",
+                    "url": "https://%s/api/operations/set-control-param",
+                    "operation": "POST",
+                    "payload": "{\"set-control-param\":{\"id\":\"%s\",\"obj-code\":\"VNFR\",\"control-id\":\"pong-packet-size-cp1\",\"value\":10 } }"
+                }
+            ],
+            "rw-vnfd:action-param" : [
+                {
+                    "id": "start-vnfr",
+                    "name": "Start PONG",
+                    "description": "Start the PONG VNFR",
+                    "group-tag": "start-vnfr",
+                    "url": "https://%s/api/operations/start-vnfr",
+                    "operation": "POST",
+                    "payload": "{\"start-vnfr\": { \"id\": \"%s\" }  }"
+                },
+                {
+                    "id": "stop-vnfr",
+                    "name": "Stop PONG",
+                    "description": "Stop the PONG VNFR",
+                    "group-tag": "stop-vnfr",
+                    "url": "https://%s/api/operations/stop-vnfr",
+                    "operation": "POST",
+                    "payload": "{\"stop-vnfr\": { \"id\": \"%s\" }  }"
+                }
+            ]
+       }
+   ]
+}
diff --git a/rwlaunchpad/mock/data/simmp-rules.json b/rwlaunchpad/mock/data/simmp-rules.json
new file mode 100644
index 0000000..d92f835
--- /dev/null
+++ b/rwlaunchpad/mock/data/simmp-rules.json
@@ -0,0 +1,11 @@
+{
+    "description": "Rules for Simulating monitoring params",
+    "mp-mapper": {
+        "ping-tx-rate-mp": "tx_rc_rate",
+        "ping-rc-rate-mp": "tx_rc_rate",
+        "pong-tx-rate-mp": "tx_rc_rate",
+        "pong-rc-rate-mp": "tx_rc_rate",
+        "ping-packet-size-mp": "packet_size",
+        "pong-packet-size-mp": "packet_size"
+    }
+}
diff --git a/rwlaunchpad/mock/data/vld_catalog.json b/rwlaunchpad/mock/data/vld_catalog.json
new file mode 100644
index 0000000..0de0e29
--- /dev/null
+++ b/rwlaunchpad/mock/data/vld_catalog.json
@@ -0,0 +1,16 @@
+{
+    "vld": [
+        {
+            "id": "a631e8c6-663a-11e5-b122-6cb3113b406f",
+            "name": "vld-one"
+        },
+        {
+            "id": "b631e8c6-663a-11e5-b122-6cb3113b406f",
+            "name": "vld-two"
+        },
+        {
+            "id": "c631e8c6-663a-11e5-b122-6cb3113b406f",
+            "name": "vld-three"
+        }
+    ]
+}
diff --git a/rwlaunchpad/mock/data/vnfd_catalog.json b/rwlaunchpad/mock/data/vnfd_catalog.json
new file mode 100644
index 0000000..1951980
--- /dev/null
+++ b/rwlaunchpad/mock/data/vnfd_catalog.json
@@ -0,0 +1,47 @@
+{
+    "vnfd": [
+        {
+            "id": "a200a0a0-663a-11e5-b122-6cb3113b406f",
+            "name": "Virtual Network Descriptor 1",
+            "short-name": "VNFD1",
+            "vendor": "RIFT.io",
+            "description": "This is a description. It doesn't say much",
+            "version": "0.0.1",
+            "internal-vld": [
+                    {
+                        "id" : "68981800-7201-11e5-9fc4-bf5ad0442ce5",
+                        "name": "Zathrus",
+                        "short-name": "zathrus",
+                        "description": "Virtual link for zathrus",
+                        "type": "ELAN",
+                        "root-bandwidth": 42,
+                        "leaf-bandwidth": 42,
+                        "internal-connection-point-ref": [
+
+                            ]
+                    }
+              ]
+        },
+        {
+            "id": "b200a0a0-663a-11e5-b122-6cb3113b406f",
+            "name": "vnfd-two",
+            "short-name": "VNFD2",
+            "vendor": "RIFT.io",
+             "description": "This is a description. It doesn't say much",
+            "version": "0.0.1",
+            "internal-vld": [
+
+            ]
+        },
+        {
+            "id": "c200a0a0-663a-11e5-b122-6cb3113b406f",
+            "name": "vnfd-three",
+            "short-name": "VNFD03",
+            "vendor": "RIFT.io",
+            "description": "This is a description. It doesn't say much",
+            "version": "0.0.1",
+            "internal-vld": [
+            ]
+        }
+    ]
+}
diff --git a/rwlaunchpad/mock/data/vnfr-templates.json b/rwlaunchpad/mock/data/vnfr-templates.json
new file mode 100644
index 0000000..a93dafb
--- /dev/null
+++ b/rwlaunchpad/mock/data/vnfr-templates.json
@@ -0,0 +1,54 @@
+[
+    {
+        "action_param": [
+            {
+                "id": "actionparam01",
+                "name": "Start Me Up",
+                "description": "This is a description. It doesn't say much",
+                "group_tag": "control-group1",
+                "url": "http://localhost:8091/vnfr/1/start"
+            },
+            {
+                "id": "actionparam02",
+                "name": "Stop me",
+                "description": "This is a description. It doesn't say much",
+                "group_tag": "control-group1",
+                "url": "http://localhost:8091/vnfr/1/stop",
+                "operation": "POST"
+            }
+        ],
+       "control_param": [
+            {
+                "id": "controlparam01",
+                "name": "Control Param 1",
+                "description": "This is a description. It doesn't say much",
+                "group_tag": "control-group1",
+                "min_value": 0,
+                "max_value": 100,
+                "current_value": 0,
+                "step_value": 1,
+                "units": "smoots",
+                "widget_type": "HISTOGRAM",
+                "url": "http://localhost:8091/vnfr/1/control-1",
+                "operation": "POST",
+                "payload": "{ \"test\": \"sample value\" }"
+            },
+            {
+                "id": "controlparam02",
+                "name": "Control Param 2",
+                "description": "This is a description. It doesn't say much",
+                "group_tag": "control-group1",
+                "min_value": 0,
+                "max_value": 100,
+                "current_value": 0,
+                "step_value": 1,
+                "units": "smoots",
+                "widget_type": "GAUGE",
+                "url": "http://localhost:8091/vnfr/1/control-2",
+                "operation": "POST",
+                "payload": "{ \"test\": \"sample value\" }"
+            }
+        ]
+    }
+]
+