REST interface for VPLS application
Change-Id: I2cab5bd6ff0ce026d0ef844bba6199fdd7f3e50d
This repository contains the files that provide a REST interface for VPLS
application.I create a new package in org.onosproject.vpls
called rest that contains the java classes VplsWebApplication and
VplsWebResource. The VplsWebResource provides create/update/read/delete
(CURD) functionality, leveraging the methods defined in the Vpls java
interface. I create a new folder called resources that contains
the json definitions and the files for the "web page".
diff --git a/apps/vpls/src/main/resources/definitions/Vpls.json b/apps/vpls/src/main/resources/definitions/Vpls.json
new file mode 100644
index 0000000..611ea6d
--- /dev/null
+++ b/apps/vpls/src/main/resources/definitions/Vpls.json
@@ -0,0 +1,65 @@
+{
+ "type": "object",
+ "title": "vpls",
+
+ "required": [
+ "name"
+ ],
+ "properties": {
+ "name": {
+ "type": "String",
+ "example": "VPLS1"
+ },
+ "Interfaces": {
+ "type": "array",
+ "xml": {
+ "name": "interfaces",
+ "wrapped": true
+ },
+ "items": {
+ "type": "object",
+ "title": "interfaces",
+ "required": [
+ "name",
+ "connectPoint",
+ "ips",
+ "mac",
+ "vlan"
+ ],
+ "properties": {
+ "name": {
+ "type": "string",
+ "example": "h1"
+ },
+ "properties": {
+ "connectPoint": {
+ "type": "string",
+ "example": "of:0000000000000001/1"
+ },
+ "ips": {
+ "type": "array",
+ "example": ["10.0.1.1/24"]
+ },
+ "mac": {
+ "type": "string",
+ "example": "00:04:00:00:00:02"
+ },
+ "vlan": {
+ "type": "string",
+ "example": "100"
+ }
+ }
+ }
+ },
+ "encap": {
+ "type": "String",
+ "example": "vlan"
+ },
+ "state": {
+ "type": "String",
+ "example": "ADDED"
+ }
+ }
+ }
+}
+