Initial commit of Admission Control xAPP and E2AP/X2AP definitions
[ric-app/admin.git] / init / admin_xapp_config_schema.json
diff --git a/init/admin_xapp_config_schema.json b/init/admin_xapp_config_schema.json
new file mode 100644 (file)
index 0000000..3d8f476
--- /dev/null
@@ -0,0 +1,229 @@
+{
+  "definitions": {},
+  "$schema": "http://json-schema.org/draft-07/schema#",
+  "$id": "http://example.com/root.json",
+  "type": "object",
+  "title": "The Root Schema",
+  "required": [
+    "service_ports",
+    "rmr",
+    "envs"
+  ],
+  "properties": {
+    "service_ports": {
+      "$id": "#/properties/service_ports",
+      "type": "object",
+      "title": "The Service_ports Schema",
+      "required": [
+        "xapp_port",
+        "rmr_port"
+      ],
+      "properties": {
+        "xapp_port": {
+          "$id": "#/properties/service_ports/properties/xapp_port",
+          "type": "integer",
+          "title": "The Xapp_port Schema",
+          "default": 0,
+          "examples": [
+            4560
+          ]
+        },
+        "rmr_port": {
+          "$id": "#/properties/service_ports/properties/rmr_port",
+          "type": "integer",
+          "title": "The Rmr_port Schema",
+          "default": 0,
+          "examples": [
+            4561
+          ]
+        }
+      }
+    },
+    "rmr": {
+      "$id": "#/properties/rmr",
+      "type": "object",
+      "title": "The Rmr Schema",
+      "required": [
+        "protPort",
+        "maxSize",
+        "numWorkers",
+        "txMessages",
+        "rxMessages",
+        "file_path",
+        "contents"
+      ],
+      "properties": {
+        "protPort": {
+          "$id": "#/properties/rmr/properties/protPort",
+          "type": "string",
+          "title": "The Protport Schema",
+          "default": "",
+          "examples": [
+            "tcp:4560"
+          ],
+          "pattern": "^(.*)$"
+        },
+        "maxSize": {
+          "$id": "#/properties/rmr/properties/maxSize",
+          "type": "integer",
+          "title": "The Maxsize Schema",
+          "default": 0,
+          "examples": [
+            2072
+          ]
+        },
+        "numWorkers": {
+          "$id": "#/properties/rmr/properties/numWorkers",
+          "type": "integer",
+          "title": "The Numworkers Schema",
+          "default": 0,
+          "examples": [
+            1
+          ]
+        },
+        "txMessages": {
+          "$id": "#/properties/rmr/properties/txMessages",
+          "type": "array",
+          "title": "The Txmessages Schema",
+          "items": {
+            "$id": "#/properties/rmr/properties/txMessages/items",
+            "type": "string",
+            "title": "The Items Schema",
+            "default": "",
+            "examples": [
+              "RIC_SUB_REQ",
+              "RIC_SUB_DEL_REQ"
+            ],
+            "pattern": "^(.*)$"
+          }
+        },
+        "rxMessages": {
+          "$id": "#/properties/rmr/properties/rxMessages",
+          "type": "array",
+          "title": "The Rxmessages Schema",
+          "items": {
+            "$id": "#/properties/rmr/properties/rxMessages/items",
+            "type": "string",
+            "title": "The Items Schema",
+            "default": "",
+            "examples": [
+              "RIC_SUB_RESP",
+              "RIC_SUB_FAILURE",
+              "RIC_SUB_DEL_RESP",
+              "RIC_SUB_DEL_FAILURE",
+              "RIC_INDICATION"
+            ],
+            "pattern": "^(.*)$"
+          }
+        },
+        "file_path": {
+          "$id": "#/properties/rmr/properties/file_path",
+          "type": "string",
+          "title": "The File_path Schema",
+          "default": "",
+          "examples": [
+            "/tmp/routeinfo/routes.txt"
+          ],
+          "pattern": "^(.*)$"
+        },
+        "contents": {
+          "$id": "#/properties/rmr/properties/contents",
+          "type": "string",
+          "title": "The Contents Schema",
+          "default": "",
+          "examples": [
+            "newrt|start\nrte|0|localhost:4560\nrte|2|localhost:4591\nrte|10002|localhost:4560\nrte|10005|localhost:4560\nrte|10003|localhost:4591\nrte|12010|localhost:4591\nrte|12020|localhost:4591\nrte|12011|localhost:4560\nrte|12012|localhost:4560\nrte|12021|localhost:4560\nrte|12022|localhost:4560\nrte|20000|localhost:4560\nrte|20001|localhost:4566\nnewrt|end "
+          ],
+          "pattern": "^(.*)$"
+        }
+      }
+    },
+    "envs": {
+      "$id": "#/properties/envs",
+      "type": "object",
+      "title": "The Envs Schema",
+      "required": [
+        "gNodeB",
+        "THREADS",
+        "A1_SCHEMA_FILE",
+        "VES_SCHEMA_FILE",
+        "SAMPLE_FILE",
+        "VES_COLLECTOR_URL",
+        "VES_MEAUSUREMENT_INTERVAL"
+      ],
+      "properties": {
+        "gNodeB": {
+          "$id": "#/properties/envs/properties/gNodeB",
+          "type": "string",
+          "title": "The Gnodeb Schema",
+          "default": "",
+          "examples": [
+            "NYC123"
+          ],
+          "pattern": "^(.*)$"
+        },
+        "THREADS": {
+          "$id": "#/properties/envs/properties/THREADS",
+          "type": "string",
+          "title": "The Threads Schema",
+          "default": "",
+          "examples": [
+            "1"
+          ],
+          "pattern": "^(.*)$"
+        },
+        "A1_SCHEMA_FILE": {
+          "$id": "#/properties/envs/properties/A1_SCHEMA_FILE",
+          "type": "string",
+          "title": "The A1_schema_file Schema",
+          "default": "",
+          "examples": [
+            "/etc/xapp/adm-ctrl-xapp-schema.json"
+          ],
+          "pattern": "^(.*)$"
+        },
+        "VES_SCHEMA_FILE": {
+          "$id": "#/properties/envs/properties/VES_SCHEMA_FILE",
+          "type": "string",
+          "title": "The Ves_schema_file Schema",
+          "default": "",
+          "examples": [
+            "/etc/xapp/ves_schema.json"
+          ],
+          "pattern": "^(.*)$"
+        },
+        "SAMPLE_FILE": {
+          "$id": "#/properties/envs/properties/SAMPLE_FILE",
+          "type": "string",
+          "title": "The Sample_file Schema",
+          "default": "",
+          "examples": [
+            "/etc/xapp/samples.json"
+          ],
+          "pattern": "^(.*)$"
+        },
+        "VES_COLLECTOR_URL": {
+          "$id": "#/properties/envs/properties/VES_COLLECTOR_URL",
+          "type": "string",
+          "title": "The Ves_collector_url Schema",
+          "default": "",
+          "examples": [
+            "127.0.0.1:6350"
+          ],
+          "pattern": "^(.*)$"
+        },
+        "VES_MEAUSUREMENT_INTERVAL": {
+          "$id": "#/properties/envs/properties/VES_MEAUSUREMENT_INTERVAL",
+          "type": "string",
+          "title": "The Ves_meausurement_interval Schema",
+          "default": "",
+          "examples": [
+            "10"
+          ],
+          "pattern": "^(.*)$"
+        }
+      }
+    }
+  }
+}
+