Adding end to end CSIT test cases for PDP-A
[integration/csit.git] / tests / policy / apex-pdp / data / onap.policies.controlloop.operational.Apex.json
diff --git a/tests/policy/apex-pdp/data/onap.policies.controlloop.operational.Apex.json b/tests/policy/apex-pdp/data/onap.policies.controlloop.operational.Apex.json
new file mode 100644 (file)
index 0000000..8795b13
--- /dev/null
@@ -0,0 +1,284 @@
+{
+  "tosca_definitions_version": "tosca_simple_yaml_1_0_0",
+  "policy_types": [
+    {
+      "onap.policies.controlloop.operational.Apex": {
+        "version": "1.0.0",
+        "description": "Operational Policy for Control Loops using the APEX PDP",
+        "properties": {
+          "engine_service": {
+            "type": "onap.datatypes.policies.controlloop.operational.apex.EngineService",
+            "description": "APEX Engine Service Parameters"
+          },
+          "inputs": {
+            "type": "map",
+            "description": "Inputs for handling events coming into the APEX engine",
+            "entry_schema": {
+              "type": "onap.datatypes.policies.controlloop.operational.apex.EventHandler"
+            }
+          },
+          "outputs": {
+            "type": "map",
+            "description": "Outputs for handling events going out of the APEX engine",
+            "entry_schema": {
+              "type": "onap.datatypes.policies.controlloop.operational.apex.EventHandler"
+            }
+          },
+          "environment": {
+            "type": "list",
+            "description": "Envioronmental parameters for the APEX engine",
+            "entry_schema": {
+              "type": "onap.datatypes.policies.controlloop.operational.apex.Environment"
+            }
+          }
+        }
+      }
+    }
+  ],
+  "data_types": [
+    {
+      "onap.datatypes.policies.controlloop.operational.apex.EngineService": {
+        "derived_from": "tosca.datatypes.Root",
+        "properties": {
+          "name": {
+            "type": "string",
+            "description": "Specifies the engine name",
+            "required": false,
+            "default": "ApexEngineService"
+          },
+          "version": {
+            "type": "string",
+            "description": "Specifies the engine version in double dotted format",
+            "required": false,
+            "default": "1.0.0"
+          },
+          "id": {
+            "type": "int",
+            "description": "Specifies the engine id",
+            "required": true
+          },
+          "instance_count": {
+            "type": "int",
+            "description": "Specifies the number of engine threads that should be run",
+            "required": true
+          },
+          "deployment_port": {
+            "type": "int",
+            "description": "Specifies the port to connect to for engine administration",
+            "required": false,
+            "default": 1
+          },
+          "policy_model_file_name": {
+            "type": "string",
+            "description": "The name of the file from which to read the APEX policy model",
+            "required": false,
+            "default": ""
+          },
+          "policy_type_impl": {
+            "type": "string",
+            "description": "The policy type implementation from which to read the APEX policy model",
+            "required": false,
+            "default": ""
+          },
+          "periodic_event_period": {
+            "type": "string",
+            "description": "The time interval in milliseconds for the periodic scanning event, 0 means \"don't scan\"",
+            "required": false,
+            "default": 0
+          },
+          "engine": {
+            "type": "onap.datatypes.policies.controlloop.operational.apex.engineservice.Engine",
+            "description": "The parameters for all engines in the APEX engine service",
+            "required": true
+          }
+        }
+      }
+    },
+    {
+      "onap.datatypes.policies.controlloop.operational.apex.EventHandler": {
+        "derived_from": "tosca.datatypes.Root",
+        "properties": {
+          "name": {
+            "type": "string",
+            "description": "Specifies the event handler name, if not specified this is set to the key name",
+            "required": false
+          },
+          "carrier_technology": {
+            "type": "onap.datatypes.policies.controlloop.operational.apex.CarrierTechnology",
+            "description": "Specifies the carrier technology of the event handler (such as REST/Web Socket/Kafka)",
+            "required": true
+          },
+          "event_protocol": {
+            "type": "onap.datatypes.policies.controlloop.operational.apex.EventProtocol",
+            "description": "Specifies the event protocol of events for the event handler (such as Yaml/JSON/XML/POJO)",
+            "required": true
+          },
+          "event_name": {
+            "type": "string",
+            "description": "Specifies the event name for events on this event handler, if not specified, the event name is read from or written to the event being received or sent",
+            "required": false
+          },
+          "event_name_filter": {
+            "type": "string",
+            "description": "Specifies a filter as a regular expression, events that do not match the filter are dropped, the default is to let all events through",
+            "required": false
+          },
+          "synchronous_mode": {
+            "type": "bool",
+            "description": "Specifies the event handler is syncronous (receive event and send response)",
+            "required": false,
+            "default": false
+          },
+          "synchronous_peer": {
+            "type": "string",
+            "description": "The peer event handler (output for input or input for output) of this event handler in synchronous mode, this parameter is mandatory if the event handler is in synchronous mode",
+            "required": false,
+            "default": ""
+          },
+          "synchronous_timeout": {
+            "type": "int",
+            "description": "The timeout in milliseconds for responses to be issued by APEX torequests, this parameter is mandatory if the event handler is in synchronous mode",
+            "required": false,
+            "default": ""
+          },
+          "requestor_mode": {
+            "type": "bool",
+            "description": "Specifies the event handler is in requestor mode (send event and wait for response mode)",
+            "required": false,
+            "default": false
+          },
+          "requestor_peer": {
+            "type": "string",
+            "description": "The peer event handler (output for input or input for output) of this event handler in requestor mode, this parameter is mandatory if the event handler is in requestor mode",
+            "required": false,
+            "default": ""
+          },
+          "requestor_timeout": {
+            "type": "int",
+            "description": "The timeout in milliseconds for wait for responses to requests, this parameter is mandatory if the event handler is in requestor mode",
+            "required": false,
+            "default": ""
+          }
+        }
+      }
+    },
+    {
+      "onap.datatypes.policies.controlloop.operational.apex.CarrierTechnology": {
+        "derived_from": "tosca.datatypes.Root",
+        "properties": {
+          "label": {
+            "type": "string",
+            "description": "The label (name) of the carrier technology (such as REST, Kafka, WebSocket)",
+            "required": true
+          },
+          "plugin_parameter_class_name": {
+            "type": "string",
+            "description": "The class name of the class that overrides default handling of event input or output for this carrier technology, defaults to the supplied input or output class",
+            "required": false
+          }
+        }
+      }
+    },
+    {
+      "onap.datatypes.policies.controlloop.operational.apex.EventProtocol": {
+        "derived_from": "tosca.datatypes.Root",
+        "properties": {
+          "label": {
+            "type": "string",
+            "description": "The label (name) of the event protocol (such as Yaml, JSON, XML, or POJO)",
+            "required": true
+          },
+          "event_protocol_plugin_class": {
+            "type": "string",
+            "description": "The class name of the class that overrides default handling of the event protocol for this carrier technology, defaults to the supplied event protocol class",
+            "required": false
+          }
+        }
+      }
+    },
+    {
+      "onap.datatypes.policies.controlloop.operational.apex.Environmental": {
+        "derived_from": "tosca.datatypes.Root",
+        "properties": {
+          "name": {
+            "type": "string",
+            "description": "The name of the environment variable",
+            "required": true
+          },
+          "value": {
+            "type": "string",
+            "description": "The value of the environment variable",
+            "required": true
+          }
+        }
+      }
+    },
+    {
+      "onap.datatypes.policies.controlloop.operational.apex.engineservice.Engine": {
+        "derived_from": "tosca.datatypes.Root",
+        "properties": {
+          "context": {
+            "type": "onap.datatypes.policies.controlloop.operational.apex.engineservice.engine.Context",
+            "description": "The properties for handling context in APEX engines, defaults to using Java maps for context",
+            "required": false
+          },
+          "executors": {
+            "type": "map",
+            "description": "The plugins for policy executors used in engines such as javascript, MVEL, Jython",
+            "required": true,
+            "entry_schema": {
+              "description": "The plugin class path for this policy executor",
+              "type": "string"
+            }
+          }
+        }
+      }
+    },
+    {
+      "onap.datatypes.policies.controlloop.operational.apex.engineservice.engine.Context": {
+        "derived_from": "tosca.datatypes.Root",
+        "properties": {
+          "distributor": {
+            "type": "onap.datatypes.policies.controlloop.operational.apex.Plugin",
+            "description": "The plugin to be used for distributing context between APEX PDPs at runtime",
+            "required": false
+          },
+          "schemas": {
+            "type": "map",
+            "description": "The plugins for context schemas available in APEX PDPs such as Java and Avro",
+            "required": false,
+            "entry_schema": {
+              "type": "onap.datatypes.policies.controlloop.operational.apex.Plugin"
+            }
+          },
+          "locking": {
+            "type": "onap.datatypes.policies.controlloop.operational.apex.plugin",
+            "description": "The plugin to be used for locking context in and between APEX PDPs at runtime",
+            "required": false
+          },
+          "persistence": {
+            "type": "onap.datatypes.policies.controlloop.operational.apex.Plugin",
+            "description": "The plugin to be used for persisting context for APEX PDPs at runtime",
+            "required": false
+          }
+        }
+      }
+    },
+    {
+      "onap.datatypes.policies.controlloop.operational.apex.Plugin": {
+        "derived_from": "tosca.datatypes.Root",
+        "properties": {
+          "name": {
+            "type": "string",
+            "description": "The name of the executor such as Javascript, Jython or MVEL",
+            "required": true
+          },
+          "plugin_class_name": {
+            "type": "string",
+            "description": "The class path of the plugin class for this executor"
+          }
+        }
+      }
+    }
+  ]
+}
\ No newline at end of file