============LICENSE_START=======================================================
Copyright (C) 2020 Nordix Foundation.
Modifications Copyright (C) 2020 AT&T Intellectual Property. All rights reserved.
+ Modifications Copyright (C) 2022 Bell Canada. All rights reserved.
================================================================================
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
<artifactId>plugins-context-schema-avro</artifactId>
<version>${project.version}</version>
</dependency>
+ <dependency>
+ <groupId>org.onap.policy.apex-pdp.plugins.plugins-context.plugins-context-schema</groupId>
+ <artifactId>plugins-context-schema-json</artifactId>
+ <version>${project.version}</version>
+ </dependency>
<dependency>
<groupId>org.onap.policy.apex-pdp.plugins.plugins-executor</groupId>
<artifactId>plugins-executor-javascript</artifactId>
</dependencies>
<build>
<plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <configuration>
+ <argLine>-Xss1m</argLine>
+ </configuration>
+ </plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
"Avro": {
"parameterClassName": "org.onap.policy.apex.plugins.context.schema.avro.AvroSchemaHelperParameters"
},
+ "Json": {
+ "parameterClassName": "org.onap.policy.apex.plugins.context.schema.json.JsonSchemaHelperParameters"
+ },
"Java": {
"parameterClassName": "org.onap.policy.apex.context.impl.schema.java.JavaSchemaHelperParameters",
"jsonAdapters": {
"target": "DCAE",
"toscaPolicyState": "EXIT_SUCCESS",
"status": {
- "subscriptionName": "testPolicyB",
"nfName": "pnf300",
+ "subscriptionName": "testPolicyB",
"changeType": "CREATE",
"message": "success"
}
/*
* ============LICENSE_START=======================================================
* Copyright (C) 2020 Nordix. All rights reserved.
+ * Modifications Copyright (C) 2022 Bell Canada. All rights reserved.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
var pmSubscriptionInfo = executor.getContextAlbum("PMSubscriptionAlbum").get(executor.inFields.get("albumID").toString())
-var payloadProperties = executor.subject.getOutFieldSchemaHelper("payload").createNewSubInstance("create_DasH_subscription_DasH_properties_record");
+var payloadProperties = new java.util.HashMap();
payloadProperties.put("nfName", pmSubscriptionInfo.get("nfName"))
payloadProperties.put("subscriptionName", pmSubscriptionInfo.get("subscription").get("subscriptionName"))
payloadProperties.put("fileLocation", pmSubscriptionInfo.get("subscription").get("fileLocation"))
payloadProperties.put("measurementGroups", pmSubscriptionInfo.get("subscription").get("measurementGroups"))
-var payloadEntry = executor.subject.getOutFieldSchemaHelper("payload").createNewSubInstance("CDSRequestPayloadEntry");
-payloadEntry.put("create_DasH_subscription_DasH_properties", payloadProperties)
+var payloadEntry = new java.util.HashMap();
+payloadEntry.put("create-subscription-properties", payloadProperties)
-var payload = executor.subject.getOutFieldSchemaHelper("payload").createNewInstance();
+var payload = new java.util.HashMap();
var payloadSchemaHelper = executor.subject.getOutFieldSchemaHelper("payload");
-payload.put("create_DasH_subscription_DasH_request", payloadEntry);
+payload.put("create-subscription-request", payloadEntry);
executor.logger.info("CDS payload - " + executor.stringify2Json( payload, payloadSchemaHelper));
/*
* ============LICENSE_START=======================================================
* Copyright (C) 2020 Nordix. All rights reserved.
+ * Modifications Copyright (C) 2022 Bell Canada. All rights reserved.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
var payload = executor.inFields.get("payload")
var actionName = "create-subscription"
-var commonHeader = executor.subject.getOutFieldSchemaHelper("commonHeader").createNewInstance();
+var commonHeader = new java.util.HashMap();
commonHeader.put("originatorId", "sdnc");
commonHeader.put("requestId", "123456-1000");
commonHeader.put("subRequestId", "sub-123456-1000");
-var actionIdentifiers = executor.subject.getOutFieldSchemaHelper("actionIdentifiers").createNewInstance();
+var actionIdentifiers = new java.util.HashMap();
actionIdentifiers.put("actionName", actionName);
actionIdentifiers.put("blueprintName", "pm_control");
actionIdentifiers.put("blueprintVersion", "1.0.0");
/*
* ============LICENSE_START=======================================================
* Copyright (C) 2020 Nordix. All rights reserved.
+ * Modifications Copyright (C) 2022 Bell Canada. All rights reserved.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
var pmSubscriptionInfo = executor.getContextAlbum("PMSubscriptionAlbum").get(executor.inFields.get("albumID").toString())
-var payloadProperties = executor.subject.getOutFieldSchemaHelper("payload").createNewSubInstance("delete_DasH_subscription_DasH_properties_record");
+var payloadProperties = new java.util.HashMap();
payloadProperties.put("nfName", pmSubscriptionInfo.get("nfName"))
payloadProperties.put("subscriptionName", pmSubscriptionInfo.get("subscription").get("subscriptionName"))
payloadProperties.put("fileLocation", pmSubscriptionInfo.get("subscription").get("fileLocation"))
payloadProperties.put("measurementGroups", pmSubscriptionInfo.get("subscription").get("measurementGroups"))
-var payloadEntry = executor.subject.getOutFieldSchemaHelper("payload").createNewSubInstance("CDSRequestPayloadEntry");
-payloadEntry.put("delete_DasH_subscription_DasH_properties", payloadProperties)
+var payloadEntry = new java.util.HashMap();
+payloadEntry.put("delete-subscription-properties", payloadProperties)
-var payload = executor.subject.getOutFieldSchemaHelper("payload").createNewInstance();
-payload.put("delete_DasH_subscription_DasH_request", payloadEntry);
+var payload = new java.util.HashMap();
+payload.put("delete-subscription-request", payloadEntry);
executor.outFields.put("albumID", executor.inFields.get("albumID"))
executor.outFields.put("payload", payload);
/*
* ============LICENSE_START=======================================================
* Copyright (C) 2020 Nordix. All rights reserved.
+ * Modifications Copyright (C) 2022 Bell Canada. All rights reserved.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
var payload = executor.inFields.get("payload")
var actionName = "delete-subscription"
-var commonHeader = executor.subject.getOutFieldSchemaHelper("commonHeader").createNewInstance();
+var commonHeader = new java.util.HashMap();
commonHeader.put("originatorId", "sdnc");
commonHeader.put("requestId", "123456-1000");
commonHeader.put("subRequestId", "sub-123456-1000");
-var actionIdentifiers = executor.subject.getOutFieldSchemaHelper("actionIdentifiers").createNewInstance();
+var actionIdentifiers = new java.util.HashMap();
actionIdentifiers.put("actionName", actionName);
actionIdentifiers.put("blueprintName", "pm_control");
actionIdentifiers.put("blueprintVersion", "1.0.0");
/*
* ============LICENSE_START=======================================================
* Copyright (C) 2020 Nordix. All rights reserved.
+ * Modifications Copyright (C) 2022 Bell Canada. All rights reserved.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
//albumID will be used to fetch info from our album later
var albumID = uuidType.fromString("d0050623-18e5-46c9-9298-9a567990cd7c");
-var pmSubscriptionInfo = executor.getContextAlbum("PMSubscriptionAlbum").getSchemaHelper().createNewInstance();
+var pmSubscriptionInfo = new java.util.HashMap();
var returnValue = true;;
if (executor.inFields.get("policyName") != null) {
/*
* ============LICENSE_START=======================================================
* Copyright (C) 2020 Nordix. All rights reserved.
- * Modifications Copyright (C) 2021 Bell Canada. All rights reserved.
+ * Modifications Copyright (C) 2021-2022 Bell Canada. All rights reserved.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
var pmSubscriptionInfo = executor.getContextAlbum("PMSubscriptionAlbum").get(albumID.toString());
-var responseStatus = executor.subject.getOutFieldSchemaHelper("CDSResponseStatusEvent", "status").createNewInstance();
+var responseStatus = new java.util.HashMap();
responseStatus.put("subscriptionName", pmSubscriptionInfo.get("subscription").get("subscriptionName"))
responseStatus.put("nfName", pmSubscriptionInfo.get("nfName"))
var response = executor.inFields.get("payload")
-if ("failure".equals(response.get("create_DasH_subscription_DasH_response").get("odl_DasH_response").get("status"))) {
+if ("failure".equals(response.get("create-subscription-response").get("odl-response").get("status"))) {
responseStatus.put("message", "failed")
} else {
responseStatus.put("message", "success")
schema create name=UUIDType flavour=Java schema=java.util.UUID
schema create name=SimpleIntType flavour=Java schema=java.lang.Integer
-schema create name=CDSRequestCommonHeaderType flavour=Avro schema=LS
-#MACROFILE:"src/main/resources/schemas/CDSRequestCommonHeaderType.avsc"
+schema create name=CDSRequestCommonHeaderType flavour=Json schema=LS
+#MACROFILE:"src/main/resources/schemas/CDSRequestCommonHeaderType.json"
LE
-schema create name=CDSResponseCommonHeaderType flavour=Avro schema=LS
-#MACROFILE:"src/main/resources/schemas/CDSResponseCommonHeaderType.avsc"
+schema create name=CDSResponseCommonHeaderType flavour=Json schema=LS
+#MACROFILE:"src/main/resources/schemas/CDSResponseCommonHeaderType.json"
LE
-schema create name=CDSActionIdentifiersType flavour=Avro schema=LS
-#MACROFILE:"src/main/resources/schemas/CDSActionIdentifiersType.avsc"
+schema create name=CDSActionIdentifiersType flavour=Json schema=LS
+#MACROFILE:"src/main/resources/schemas/CDSActionIdentifiersType.json"
LE
-schema create name=CDSResponseStatusType flavour=Avro schema=LS
-#MACROFILE:"src/main/resources/schemas/CDSResponseStatusType.avsc"
+schema create name=CDSResponseStatusType flavour=Json schema=LS
+#MACROFILE:"src/main/resources/schemas/CDSResponseStatusType.json"
LE
-schema create name=CDSCreateSubscriptionPayloadType flavour=Avro schema=LS
-#MACROFILE:"src/main/resources/schemas/CDSCreateSubscriptionPayloadType.avsc"
+schema create name=CDSCreateSubscriptionPayloadType flavour=Json schema=LS
+#MACROFILE:"src/main/resources/schemas/CDSCreateSubscriptionPayloadType.json"
LE
schema create name=CDSDeleteSubscriptionPayloadType flavour=Avro schema=LS
#MACROFILE:"src/main/resources/schemas/CDSDeleteSubscriptionPayloadType.avsc"
LE
-schema create name=CDSResponsePayloadType flavour=Avro schema=LS
-#MACROFILE:"src/main/resources/schemas/CDSResponsePayloadType.avsc"
+schema create name=CDSResponsePayloadType flavour=Json schema=LS
+#MACROFILE:"src/main/resources/schemas/CDSResponsePayloadType.json"
LE
-schema create name=SubscriptionStatusType flavour=Avro schema=LS
-#MACROFILE:"src/main/resources/schemas/SubscriptionStatusType.avsc"
+schema create name=SubscriptionStatusType flavour=Json schema=LS
+#MACROFILE:"src/main/resources/schemas/SubscriptionStatusType.json"
LE
-schema create name=PMSubscriptionType flavour=Avro schema=LS
-#MACROFILE:"src/main/resources/schemas/PMSubscriptionType.avsc"
+schema create name=PMSubscriptionType flavour=Json schema=LS
+#MACROFILE:"src/main/resources/schemas/PMSubscriptionType.json"
LE
-schema create name=SubscriptionType flavour=Avro schema=LS
-#MACROFILE:"src/main/resources/schemas/SubscriptionType.avsc"
+schema create name=SubscriptionType flavour=Json schema=LS
+#MACROFILE:"src/main/resources/schemas/SubscriptionType.json"
LE
##
+++ /dev/null
-{
- "type": "record",
- "name": "CDSActionIdentifiers_Type",
- "namespace": "org.onap.policy.apex.onap.helloworld",
- "fields": [
- {
- "name": "actionName",
- "type": "string"
- },
- {
- "name": "blueprintName",
- "type": "string"
- },
- {
- "name": "blueprintVersion",
- "type": "string"
- },
- {
- "name": "mode",
- "type": "string"
- }
- ]
-}
--- /dev/null
+{
+ "$schema": "http://json-schema.org/draft-04/schema#",
+ "type": "object",
+ "properties": {
+ "actionName": {
+ "type": "string"
+ },
+ "blueprintName": {
+ "type": "string"
+ },
+ "blueprintVersion": {
+ "type": "string"
+ },
+ "mode": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "actionName",
+ "blueprintName",
+ "blueprintVersion",
+ "mode"
+ ]
+}
+++ /dev/null
-{
- "type": "map",
- "values": {
- "type": "record",
- "name": "CDSRequestPayloadEntry",
- "fields": [
- {
- "name": "create_DasH_subscription_DasH_properties",
- "type": {
- "name": "create_DasH_subscription_DasH_properties_record",
- "type": "record",
- "fields": [
- {
- "name": "nfName",
- "type": "string"
- },
- {
- "name": "subscriptionName",
- "type": "string"
- },
- {
- "name": "administrativeState",
- "type": "string"
- },
- {
- "name": "fileBasedGP",
- "type": "string"
- },
- {
- "name": "fileLocation",
- "type": "string"
- },
- {
- "name": "measurementGroups",
- "type": {
- "type": "array",
- "items": {
- "name": "measurementGroups_record",
- "type": "record",
- "fields": [
- {
- "name": "measurementGroup",
- "type": {
- "name": "measurementGroup",
- "type": "record",
- "fields": [
- {
- "name": "measurementTypes",
- "type": {
- "type": "array",
- "items": {
- "name": "measurementTypes_record",
- "type": "record",
- "fields": [
- {
- "name": "measurementType",
- "type": "string"
- }
- ]
- }
- }
- },
- {
- "name": "managedObjectDNsBasic",
- "type": {
- "type": "array",
- "items": {
- "name": "managedObjectDNsBasic_record",
- "type": "record",
- "fields": [
- {
- "name": "DN",
- "type": "string"
- }
- ]
- }
- }
- }
- ]
- }
- }
- ]
- }
- }
- }
- ]
- }
- }
- ]
- }
-}
\ No newline at end of file
--- /dev/null
+{
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "type": "object",
+ "required": [
+ "create-subscription-request"
+ ],
+ "properties": {
+ "create-subscription-request": {
+ "type": "object",
+ "required": [
+ "create-subscription-properties"
+ ],
+ "properties": {
+ "create-subscription-properties": {
+ "type": "object",
+ "required": [
+ "nfName",
+ "administrativeState",
+ "subscriptionName",
+ "measurementGroups",
+ "fileBasedGP",
+ "fileLocation"
+ ],
+ "properties": {
+ "nfName": {
+ "type": "string",
+ "default": "",
+ "examples": [
+ "pnf300"
+ ],
+ "pattern": "^.*$"
+ },
+ "administrativeState": {
+ "type": "string",
+ "default": "",
+ "examples": [
+ "UNLOCKED"
+ ],
+ "pattern": "^.*$"
+ },
+ "subscriptionName": {
+ "type": "string",
+ "default": "",
+ "examples": [
+ "testPolicyB"
+ ],
+ "pattern": "^.*$"
+ },
+ "measurementGroups": {
+ "type": "array",
+ "default": [],
+ "items": {
+ "type": "object",
+ "required": [
+ "measurementGroup"
+ ],
+ "properties": {
+ "measurementGroup": {
+ "type": "object",
+ "required": [
+ "measurementTypes",
+ "managedObjectDNsBasic"
+ ],
+ "properties": {
+ "measurementTypes": {
+ "type": "array",
+ "default": [],
+ "items": {
+ "type": "object",
+ "required": [
+ "measurementType"
+ ],
+ "properties": {
+ "measurementType": {
+ "type": "string",
+ "default": "",
+ "examples": [
+ "countera"
+ ],
+ "pattern": "^.*$"
+ }
+ }
+ }
+ },
+ "managedObjectDNsBasic": {
+ "type": "array",
+ "default": [],
+ "items": {
+ "$id": "#root/create-subscription-request/create-subscription-properties/measurementGroups/items/measurementGroup/managedObjectDNsBasic/items",
+ "title": "Items",
+ "type": "object",
+ "required": [
+ "DN"
+ ],
+ "properties": {
+ "DN": {
+ "type": "string",
+ "default": "",
+ "examples": [
+ "dna"
+ ],
+ "pattern": "^.*$"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "fileBasedGP": {
+ "type": "string",
+ "default": "",
+ "examples": [
+ "15.0"
+ ],
+ "pattern": "^.*$"
+ },
+ "fileLocation": {
+ "type": "string",
+ "default": "",
+ "examples": [
+ "/pm/pm.xml"
+ ],
+ "pattern": "^.*$"
+ }
+ }
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
+++ /dev/null
-{
- "type": "record",
- "name": "CDSRequestCommonHeader_Type",
- "namespace": "org.onap.policy.apex.onap.helloworld",
- "fields": [
- {
- "name": "originatorId",
- "type": "string"
- },
- {
- "name": "requestId",
- "type": "string"
- },
- {
- "name": "subRequestId",
- "type": "string"
- }
- ]
-}
--- /dev/null
+{
+ "definitions": {},
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "title": "Root",
+ "type": "object",
+ "required": [
+ "requestId",
+ "subRequestId",
+ "originatorId"
+ ],
+ "properties": {
+ "requestId": {
+ "$id": "#root/requestId",
+ "title": "Requestid",
+ "type": "string",
+ "default": "",
+ "examples": [
+ "123456-1000"
+ ],
+ "pattern": "^.*$"
+ },
+ "subRequestId": {
+ "$id": "#root/subRequestId",
+ "title": "Subrequestid",
+ "type": "string",
+ "default": "",
+ "examples": [
+ "sub-123456-1000"
+ ],
+ "pattern": "^.*$"
+ },
+ "originatorId": {
+ "$id": "#root/originatorId",
+ "title": "Originatorid",
+ "type": "string",
+ "default": "",
+ "examples": [
+ "sdnc"
+ ],
+ "pattern": "^.*$"
+ }
+ }
+}
+++ /dev/null
-{
- "type": "record",
- "name": "CDSResponseCommonHeader_Type",
- "namespace": "org.onap.policy.apex.onap.helloworld",
- "fields": [
- {
- "name": "originatorId",
- "type": "string"
- },
- {
- "name": "requestId",
- "type": "string"
- },
- {
- "name": "subRequestId",
- "type": "string"
- },
- {
- "name": "timestamp",
- "type": "string"
- }
- ]
-}
--- /dev/null
+{
+ "$schema": "http://json-schema.org/draft-04/schema#",
+ "type": "object",
+ "properties": {
+ "timestamp": {
+ "type": "string"
+ },
+ "requestId": {
+ "type": "string"
+ },
+ "subRequestId": {
+ "type": "string"
+ },
+ "flag": {
+ "type": "object"
+ },
+ "originatorId": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "timestamp",
+ "requestId",
+ "subRequestId",
+ "flag",
+ "originatorId"
+ ]
+}
+++ /dev/null
-{
- "name": "CDSResponsePayloadEntry",
- "type": "record",
- "namespace": "com.acme.avro",
- "fields": [
- {
- "name": "create_DasH_subscription_DasH_response",
- "type": {
- "name": "create_DasH_subscription_DasH_response",
- "type": "record",
- "fields": [
- {
- "name": "odl_DasH_response",
- "type": {
- "name": "odl_DasH_response",
- "type": "record",
- "fields": [
- {
- "name": "status",
- "type": "string"
- }
- ]
- }
- }
- ]
- }
- }
- ]
-}
--- /dev/null
+{
+ "$schema": "http://json-schema.org/draft-04/schema#",
+ "type": "object",
+ "properties": {
+ "create-subscription-response": {
+ "type": "object",
+ "properties": {
+ "odl-response": {
+ "type": "object",
+ "properties": {
+ "status": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "status"
+ ]
+ }
+ },
+ "required": [
+ "odl-response"
+ ]
+ }
+ },
+ "required": [
+ "create-subscription-response"
+ ]
+}
+++ /dev/null
-{
- "type": "record",
- "name": "CDSResponseStatus_Type",
- "namespace": "org.onap.policy.apex.onap.helloworld",
- "fields": [
- {
- "name": "code",
- "type": "int"
- },
- {
- "name": "eventType",
- "type": "string"
- },
- {
- "name": "timestamp",
- "type": "string"
- },
- {
- "name": "message",
- "type": "string"
- }
- ]
-}
--- /dev/null
+{
+ "$schema": "http://json-schema.org/draft-04/schema#",
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "integer"
+ },
+ "message": {
+ "type": "string"
+ },
+ "eventType": {
+ "type": "string"
+ },
+ "timestamp": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "code",
+ "message",
+ "eventType",
+ "timestamp"
+ ]
+}
+++ /dev/null
-{
- "name": "PMSubscription",
- "type": "record",
- "namespace": "org.onap.policy.apex.onap.pmcontrol",
- "fields": [
- {
- "name": "nfName",
- "type": "string"
- },
- {
- "name": "changeType",
- "type": "string"
- },
- {
- "name": "closedLoopControlName",
- "type": "string"
- },
- {
- "name": "policyName",
- "type": "string"
- },
- {
- "name": "subscription",
- "type": {
- "name": "subscription",
- "type": "record",
- "fields": [
- {
- "name": "subscriptionName",
- "type": "string"
- },
- {
- "name": "administrativeState",
- "type": "string"
- },
- {
- "name": "fileBasedGP",
- "type": "int"
- },
- {
- "name": "fileLocation",
- "type": "string"
- },
- {
- "name": "measurementGroups",
- "type": {
- "type": "array",
- "items": {
- "name": "Measurement_Groups_Type",
- "type": "record",
- "fields": [
- {
- "name": "measurementGroup",
- "type": {
- "name": "Measurement_Group_Type",
- "type": "record",
- "fields": [
- {
- "name": "measurementTypes",
- "type": {
- "type": "array",
- "items": {
- "name": "Measurement_Types_Type",
- "type": "record",
- "fields": [
- {
- "name": "measurementType",
- "type": "string"
- }
- ]
- }
- }
- },
- {
- "name": "managedObjectDNsBasic",
- "type": {
- "type": "array",
- "items": {
- "name": "Managed_Object_Dns_Basic_Type",
- "type": "record",
- "fields": [
- {
- "name": "DN",
- "type": "string"
- }
- ]
- }
- }
- }
- ]
- }
- }
- ]
- }
- }
- }
- ]
- }
- }
- ]
-}
\ No newline at end of file
--- /dev/null
+{
+ "$schema": "http://json-schema.org/draft-04/schema#",
+ "type": "object",
+ "properties": {
+ "changeType": {
+ "type": "string"
+ },
+ "closedLoopControlName": {
+ "type": "string"
+ },
+ "policyName": {
+ "type": "string"
+ },
+ "nfName": {
+ "type": "string"
+ },
+ "subscription": {
+ "type": "array",
+ "items": [
+ {
+ "type": "object",
+ "properties": {
+ "measurementGroup": {
+ "type": "object",
+ "properties": {
+ "measurementTypes": {
+ "type": "array",
+ "items": [
+ {
+ "type": "object",
+ "properties": {
+ "measurementType": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "measurementType"
+ ]
+ },
+ {
+ "type": "object",
+ "properties": {
+ "measurementType": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "measurementType"
+ ]
+ }
+ ]
+ },
+ "managedObjectDNsBasic": {
+ "type": "array",
+ "items": [
+ {
+ "type": "object",
+ "properties": {
+ "DN": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "DN"
+ ]
+ },
+ {
+ "type": "object",
+ "properties": {
+ "DN": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "DN"
+ ]
+ }
+ ]
+ }
+ },
+ "required": [
+ "measurementTypes",
+ "managedObjectDNsBasic"
+ ]
+ }
+ },
+ "required": [
+ "measurementGroup"
+ ]
+ }
+ ]
+ }
+ },
+ "required": [
+ "changeType",
+ "closedLoopControlName",
+ "policyName",
+ "nfName",
+ "subscription"
+ ]
+}
+++ /dev/null
-{
- "type": "record",
- "name": "ActivateSubscriptionStatus_Type",
- "namespace": "org.onap.policy.apex.onap.helloworld",
- "fields": [
- {
- "name": "subscriptionName",
- "type": "string"
- },
- {
- "name": "nfName",
- "type": "string"
- },
- {
- "name": "changeType",
- "type": "string"
- },
- {
- "name": "message",
- "type": "string"
- }
- ]
-}
\ No newline at end of file
--- /dev/null
+{
+ "$schema": "http://json-schema.org/draft-04/schema#",
+ "type": "object",
+ "properties": {
+ "subscriptionName": {
+ "type": "string"
+ },
+ "nfName": {
+ "type": "string"
+ },
+ "changeType": {
+ "type": "string"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "subscriptionName",
+ "nfName",
+ "changeType",
+ "message"
+ ]
+}
+++ /dev/null
-{
- "name": "subscription",
- "type": "record",
- "fields": [
- {
- "name": "subscriptionName",
- "type": "string"
- },
- {
- "name": "administrativeState",
- "type": "string"
- },
- {
- "name": "fileBasedGP",
- "type": "int"
- },
- {
- "name": "fileLocation",
- "type": "string"
- },
- {
- "name": "measurementGroups",
- "type": {
- "type": "array",
- "items": {
- "name": "Measurement_Groups_Type",
- "type": "record",
- "fields": [
- {
- "name": "measurementGroup",
- "type": {
- "name": "Measurement_Group_Type",
- "type": "record",
- "fields": [
- {
- "name": "measurementTypes",
- "type": {
- "type": "array",
- "items": {
- "name": "Measurement_Types_Type",
- "type": "record",
- "fields": [
- {
- "name": "measurementType",
- "type": "string"
- }
- ]
- }
- }
- },
- {
- "name": "managedObjectDNsBasic",
- "type": {
- "type": "array",
- "items": {
- "name": "Managed_Object_Dns_Basic_Type",
- "type": "record",
- "fields": [
- {
- "name": "DN",
- "type": "string"
- }
- ]
- }
- }
- }
- ]
- }
- }
- ]
- }
- }
- }
- ]
-}
\ No newline at end of file
--- /dev/null
+{
+ "definitions": {},
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "title": "Root",
+ "type": "object",
+ "required": [
+ "subscriptionName",
+ "administrativeState",
+ "fileBasedGP",
+ "fileLocation",
+ "measurementGroups"
+ ],
+ "properties": {
+ "subscriptionName": {
+ "$id": "#root/subscriptionName",
+ "title": "Subscriptionname",
+ "type": "string",
+ "default": "",
+ "examples": [
+ "testPolicyB"
+ ],
+ "pattern": "^.*$"
+ },
+ "administrativeState": {
+ "$id": "#root/administrativeState",
+ "title": "Administrativestate",
+ "type": "string",
+ "default": "",
+ "examples": [
+ "UNLOCKED"
+ ],
+ "pattern": "^.*$"
+ },
+ "fileBasedGP": {
+ "$id": "#root/fileBasedGP",
+ "title": "Filebasedgp",
+ "type": "integer",
+ "examples": [
+ 15
+ ],
+ "default": 0
+ },
+ "fileLocation": {
+ "$id": "#root/fileLocation",
+ "title": "Filelocation",
+ "type": "string",
+ "default": "",
+ "examples": [
+ "/pm/pm.xml"
+ ],
+ "pattern": "^.*$"
+ },
+ "measurementGroups": {
+ "$id": "#root/measurementGroups",
+ "title": "Measurementgroups",
+ "type": "array",
+ "default": [],
+ "items": {
+ "$id": "#root/measurementGroups/items",
+ "title": "Items",
+ "type": "object",
+ "required": [
+ "measurementGroup"
+ ],
+ "properties": {
+ "measurementGroup": {
+ "$id": "#root/measurementGroups/items/measurementGroup",
+ "title": "Measurementgroup",
+ "type": "object",
+ "required": [
+ "measurementTypes",
+ "managedObjectDNsBasic"
+ ],
+ "properties": {
+ "measurementTypes": {
+ "$id": "#root/measurementGroups/items/measurementGroup/measurementTypes",
+ "title": "Measurementtypes",
+ "type": "array",
+ "default": [],
+ "items": {
+ "$id": "#root/measurementGroups/items/measurementGroup/measurementTypes/items",
+ "title": "Items",
+ "type": "object",
+ "required": [
+ "measurementType"
+ ],
+ "properties": {
+ "measurementType": {
+ "$id": "#root/measurementGroups/items/measurementGroup/measurementTypes/items/measurementType",
+ "title": "Measurementtype",
+ "type": "string",
+ "default": "",
+ "examples": [
+ "countera"
+ ],
+ "pattern": "^.*$"
+ }
+ }
+ }
+ },
+ "managedObjectDNsBasic": {
+ "$id": "#root/measurementGroups/items/measurementGroup/managedObjectDNsBasic",
+ "title": "Managedobjectdnsbasic",
+ "type": "array",
+ "default": [],
+ "items": {
+ "$id": "#root/measurementGroups/items/measurementGroup/managedObjectDNsBasic/items",
+ "title": "Items",
+ "type": "object",
+ "required": [
+ "DN"
+ ],
+ "properties": {
+ "DN": {
+ "$id": "#root/measurementGroups/items/measurementGroup/managedObjectDNsBasic/items/DN",
+ "title": "Dn",
+ "type": "string",
+ "default": "",
+ "examples": [
+ "dna"
+ ],
+ "pattern": "^.*$"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+}
<dependency>
<groupId>com.worldturner.medeia</groupId>
<artifactId>medeia-validator-gson</artifactId>
- <version>1.1.1</version>
</dependency>
<dependency>
<groupId>junit</groupId>