Remove JAXB and XML, use GSON for JSON 24/127024/1
authorliamfallon <liam.fallon@est.tech>
Mon, 7 Feb 2022 17:56:44 +0000 (17:56 +0000)
committerliamfallon <liam.fallon@est.tech>
Tue, 8 Feb 2022 18:39:03 +0000 (18:39 +0000)
This review converst apex-pdp to use GSON for JSON handling. In order to
preserve backward compatibility with the JAXB format of JSON, custom
handling of maps was required. Therefore, the policy-common
StandardCoder could not be used.

There are a lot of small changes, removing annotations from concepts and
tweaking of test data. However, this cleans up the code base so it is
worth doing.

Issue-ID: POLICY-1820
Change-Id: I213fa64f6d7f3f1df8d10f111d9fbedbe80f9fe0
Signed-off-by: liamfallon <liam.fallon@est.tech>
160 files changed:
auth/cli-codegen/src/test/java/org/onap/policy/apex/auth/clicodegen/CodeGeneratorCliEditorTest.java
auth/cli-codegen/src/test/java/org/onap/policy/apex/auth/clicodegen/SupportGenerationTest.java
auth/cli-codegen/src/test/resources/models/TestPolicyModel.json
auth/cli-editor/src/main/java/org/onap/policy/apex/auth/clieditor/ApexModelHandler.java
auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/CommandLineEditorOptionsTest.java
auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/CommandLineEditorScriptingTest.java
auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/ContextAlbumsTest.java
auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/FileMacroTest.java
auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/LogicBlockTest.java
auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/tosca/ApexCliToscaEditorTest.java
auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/utils/CliUtilsTest.java
auth/cli-editor/src/test/resources/compare/AvroSchemaModel_Compare.json
auth/cli-editor/src/test/resources/compare/ContextAlbumsModel_Compare.json
auth/cli-editor/src/test/resources/compare/FLBPolicyModel_Compare.json
auth/cli-editor/src/test/resources/compare/FLBPolicyModel_noAlbums_Compare.json
auth/cli-editor/src/test/resources/compare/FileMacroModel_Compare.json
auth/cli-editor/src/test/resources/compare/LogicBlockModel_Compare.json
auth/cli-editor/src/test/resources/tosca/ToscaPolicyOutput_compare_1.json [moved from auth/cli-editor/src/test/resources/tosca/ToscaPolicyOutput_compare.json with 99% similarity]
auth/cli-editor/src/test/resources/tosca/ToscaPolicyOutput_compare_2.json [new file with mode: 0644]
core/core-engine/src/main/java/org/onap/policy/apex/core/engine/EngineParameters.java
examples/examples-aadm/src/main/java/org/onap/policy/apex/examples/aadm/model/AadmDomainModelSaver.java
examples/examples-aadm/src/test/java/org/onap/policy/apex/examples/aadm/AadmModelTest.java
examples/examples-adaptive/src/main/java/org/onap/policy/apex/examples/adaptive/model/AdaptiveDomainModelSaver.java
examples/examples-adaptive/src/test/java/org/onap/policy/apex/examples/adaptive/AnomalyDetectionModelTest.java
examples/examples-adaptive/src/test/java/org/onap/policy/apex/examples/adaptive/AutoLearnModelTest.java
examples/examples-myfirstpolicy/src/test/java/org/onap/policy/apex/examples/myfirstpolicy/MfpModelTest.java
examples/examples-onap-vcpe/src/test/java/org/onap/policy/apex/domains/onap/vcpe/OnapVCpeSimEndpoint.java
model/basic-model/pom.xml
model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/concepts/AxArtifactKey.java
model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/concepts/AxConcept.java
model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/concepts/AxKeyInfo.java
model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/concepts/AxKeyInformation.java
model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/concepts/AxModel.java
model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/concepts/AxReferenceKey.java
model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/concepts/package-info.java
model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelCustomGsonMapAdapter.java [new file with mode: 0644]
model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelCustomGsonRefereceKeyAdapter.java [new file with mode: 0644]
model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelFileWriter.java
model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelReader.java
model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelSaver.java
model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelStringWriter.java
model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelWriter.java
model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/ApexSchemaGenerator.java [deleted file]
model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/KeyInfoMarshalFilter.java [deleted file]
model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/package-info.java
model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/package-info.java
model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/test/TestApexModel.java
model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/xml/AxReferenceKeyAdapter.java [deleted file]
model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/xml/package-info.java [deleted file]
model/basic-model/src/main/resources/xml/example.xsd [deleted file]
model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/concepts/DummyEntity.java
model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelFileWriterTest.java
model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelReaderTest.java
model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelSaverTest.java
model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelStringWriterTest.java
model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelWriterTest.java
model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/ApexSchemaGeneratorTest.java [deleted file]
model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/SupportApexBasicModelTest.java
model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/SupportBasicModelTest.java
model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/SupportConceptGetterTest.java
model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/xml/AxReferenceKeyAdapterTest.java [deleted file]
model/context-model/pom.xml
model/context-model/src/main/java/org/onap/policy/apex/model/contextmodel/concepts/AxContextAlbum.java
model/context-model/src/main/java/org/onap/policy/apex/model/contextmodel/concepts/AxContextAlbums.java
model/context-model/src/main/java/org/onap/policy/apex/model/contextmodel/concepts/AxContextModel.java
model/context-model/src/main/java/org/onap/policy/apex/model/contextmodel/concepts/AxContextSchema.java
model/context-model/src/main/java/org/onap/policy/apex/model/contextmodel/concepts/AxContextSchemas.java
model/context-model/src/test/java/org/onap/policy/apex/model/contextmodel/handling/ApexContextModelTest.java
model/context-model/src/test/resources/json/ContextModel.json [deleted file]
model/engine-model/pom.xml
model/engine-model/src/main/java/org/onap/policy/apex/model/enginemodel/concepts/AxEngineModel.java
model/engine-model/src/main/java/org/onap/policy/apex/model/enginemodel/concepts/AxEngineState.java
model/engine-model/src/main/java/org/onap/policy/apex/model/enginemodel/concepts/AxEngineStats.java
model/engine-model/src/main/java/org/onap/policy/apex/model/enginemodel/concepts/package-info.java
model/engine-model/src/test/java/org/onap/policy/apex/model/enginemodel/handling/ApexEngineModelTest.java
model/event-model/pom.xml
model/event-model/src/main/java/org/onap/policy/apex/model/eventmodel/concepts/AxEvent.java
model/event-model/src/main/java/org/onap/policy/apex/model/eventmodel/concepts/AxEventModel.java
model/event-model/src/main/java/org/onap/policy/apex/model/eventmodel/concepts/AxEvents.java
model/event-model/src/main/java/org/onap/policy/apex/model/eventmodel/concepts/AxField.java
model/event-model/src/main/java/org/onap/policy/apex/model/eventmodel/concepts/AxInputField.java
model/event-model/src/main/java/org/onap/policy/apex/model/eventmodel/concepts/AxOutputField.java
model/event-model/src/main/java/org/onap/policy/apex/model/eventmodel/concepts/package-info.java
model/event-model/src/test/java/org/onap/policy/apex/model/eventmodel/concepts/EventsTest.java
model/event-model/src/test/java/org/onap/policy/apex/model/eventmodel/handling/ApexEventModelTest.java
model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/ApexApiResult.java
model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/ApexModel.java
model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/ApexModelFactory.java
model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/ApexModelImpl.java
model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/ContextAlbumFacade.java
model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/ContextSchemaFacade.java
model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/EventFacade.java
model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/KeyInformationFacade.java
model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/ModelFacade.java
model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/ModelHandlerFacade.java
model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/PolicyFacade.java
model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/TaskFacade.java
model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ApexEditorApiContextAlbumTest.java
model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ApexEditorApiContextSchemaTest.java
model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ApexEditorApiEventTest.java
model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ApexEditorApiKeyInfoTest.java
model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ApexEditorApiPolicyTest.java
model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ApexEditorApiTaskTest.java
model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ApexModelApiTest.java
model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ModelFacadeTest.java
model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ModelHandlerFacadeTest.java
model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/RealModelTest.java [new file with mode: 0644]
model/model-api/src/test/resources/models/PolicyModel.json
model/model-api/src/test/resources/models/PolicyModel.xml [deleted file]
model/model-api/src/test/resources/models/RealPolicyModel.json [new file with mode: 0644]
model/policy-model/pom.xml
model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxLogic.java
model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxPolicies.java
model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxPolicy.java
model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxPolicyModel.java
model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxState.java
model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxStateFinalizerLogic.java
model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxStateOutput.java
model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxStateTaskOutputType.java
model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxStateTaskReference.java
model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxTask.java
model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxTaskLogic.java
model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxTaskParameter.java
model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxTaskSelectionLogic.java
model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxTasks.java
model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/package-info.java
model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/handling/EmptyAlbumsAdapter.java [deleted file]
model/policy-model/src/test/java/org/onap/policy/apex/model/policymodel/concepts/PoliciesTest.java
model/policy-model/src/test/java/org/onap/policy/apex/model/policymodel/concepts/StateTest.java
model/policy-model/src/test/java/org/onap/policy/apex/model/policymodel/concepts/TasksTest.java
model/policy-model/src/test/java/org/onap/policy/apex/model/policymodel/handling/ApexPolicyModelTest.java
plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/pom.xml [deleted file]
plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/src/main/java/org/onap/policy/apex/plugins/event/protocol/xml/Apex2XmlEventConverter.java [deleted file]
plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/src/main/java/org/onap/policy/apex/plugins/event/protocol/xml/XmlEventProtocolParameters.java [deleted file]
plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/src/main/java/org/onap/policy/apex/plugins/event/protocol/xml/package-info.java [deleted file]
plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/src/main/resources/xml/apex-event.xjb [deleted file]
plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/src/main/resources/xml/apex-event.xsd [deleted file]
plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/src/test/java/org/onap/policy/apex/plugins/event/protocol/xml/XmlEventGenerator.java [deleted file]
plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/src/test/java/org/onap/policy/apex/plugins/event/protocol/xml/XmlEventHandlerTest.java [deleted file]
plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/src/test/java/org/onap/policy/apex/plugins/event/protocol/xml/XmlEventProtocolParametersTest.java [deleted file]
plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/src/test/java/org/onap/policy/apex/plugins/event/protocol/xml/XmlTaggedEventConsumerTest.java [deleted file]
plugins/plugins-event/plugins-event-protocol/pom.xml
services/services-engine/src/main/java/org/onap/policy/apex/service/engine/runtime/impl/EngineWorker.java
services/services-engine/src/main/java/org/onap/policy/apex/service/parameters/ApexParameterHandler.java
services/services-engine/src/test/java/org/onap/policy/apex/service/engine/event/JsonEventHandlerForPojoTest.java
services/services-engine/src/test/java/org/onap/policy/apex/service/engine/runtime/impl/EngineServiceImplTest.java
services/services-engine/src/test/java/org/onap/policy/apex/service/engine/runtime/impl/EngineWorkerTest.java
services/services-engine/src/test/resources/policymodels/PojoEventModel.json
services/services-engine/src/test/resources/policymodels/SmallModel.json
services/services-engine/src/test/resources/policymodels/SmallModelDifferent.json
testsuites/integration/integration-common/src/main/java/org/onap/policy/apex/testsuites/integration/common/model/SampleDomainModelSaver.java
testsuites/integration/integration-common/src/main/resources/examples/models/JMS/JMSTestModel.json
testsuites/integration/integration-common/src/test/java/org/onap/policy/apex/testsuites/integration/common/model/SampleDomainModelSaverTest.java
testsuites/integration/integration-executor-test/src/test/java/org/onap/policy/apex/testsuites/integration/executor/handling/TestApexSamplePolicyCreateModelFiles.java
testsuites/integration/integration-executor-test/src/test/java/org/onap/policy/apex/testsuites/integration/executor/handling/TestApexSamplePolicyModel.java
tools/model-generator/src/main/java/org/onap/policy/apex/tools/model/generator/model2cli/Model2Cli.java
tools/model-generator/src/main/java/org/onap/policy/apex/tools/model/generator/model2event/Model2JsonEventSchema.java
tools/model-generator/src/test/java/org/onap/policy/apex/tools/model/generator/model2cli/Model2CliTest.java
tools/model-generator/src/test/resources/ExecutionPropertiesRestTestPolicyModel.json
tools/model-generator/src/test/resources/SmallModel.json

index 8ad8b02..f0cb1d8 100644 (file)
@@ -2,7 +2,7 @@
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2018 Ericsson. All rights reserved.
  *  Modifications Copyright (C) 2019 Samsung Electronics Co., Ltd.
- *  Modifications Copyright (C) 2020 Nordix Foundation
+ *  Modifications Copyright (C) 2020,2022 Nordix Foundation
  *  Modifications Copyright (C) 2021 Bell Canada. All rights reserved.
  *  Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
  * ================================================================================
@@ -74,7 +74,7 @@ public class CodeGeneratorCliEditorTest {
         ApexModelReader<AxPolicyModel> modelReader = null;
         modelReader = new ApexModelReader<>(AxPolicyModel.class);
 
-        modelReader.setValidateFlag(false);
+        modelReader.setValidate(false);
         AxPolicyModel apexPolicyModel = null;
         apexPolicyModel = modelReader
                             .read(new FileInputStream(new File("src/test/resources/models/TestPolicyModel.json")));
index aed3345..e6c4369 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2021 Nordix Foundation
+ *  Modifications Copyright (C) 2021-2022 Nordix Foundation
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -129,9 +129,6 @@ public class SupportGenerationTest {
             }
         }
 
-        if (!("".equals(error))) {
-            System.err.println(error);
-        }
         assertEquals(0, error.length());
     }
 }
index 2dc4bcd..a7ec595 100644 (file)
 {
-   "apexPolicyModel" : {
-      "key" : {
-         "name" : "SamplePolicyModelJAVASCRIPT",
-         "version" : "0.0.1"
-      },
-      "keyInformation" : {
-         "key" : {
-            "name" : "KeyInformation",
-            "version" : "0.0.1"
-         },
-         "keyInfoMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "Context",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Context",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "ca36bfd8-6042-3633-8c85-89c66507c3bf",
-                  "description" : "Generated description for concept referred to by key \"Context:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Event0000",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Event0000",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "465a81cc-885f-3a4d-bc4e-1508da92b236",
-                  "description" : "Generated description for concept referred to by key \"Event0000:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Event0001",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Event0001",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "36b2d570-fff7-3a4b-bab2-6bf492f5129a",
-                  "description" : "Generated description for concept referred to by key \"Event0001:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Event0002",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Event0002",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "ff6160a7-fb5e-379c-a6d2-2cd28053eacf",
-                  "description" : "Generated description for concept referred to by key \"Event0002:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Event0003",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Event0003",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "5899e216-2abf-3781-abc4-2c257b92721e",
-                  "description" : "Generated description for concept referred to by key \"Event0003:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Event0004",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Event0004",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "7c2692a7-4587-3d09-abf9-d96b339a316f",
-                  "description" : "Generated description for concept referred to by key \"Event0004:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Event0100",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Event0100",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "b696048c-c0b0-34c1-8dbe-32ab6c8bc0c7",
-                  "description" : "Generated description for concept referred to by key \"Event0100:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Event0101",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Event0101",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "edbfa868-2ab2-30fd-8078-4c7f67ca6122",
-                  "description" : "Generated description for concept referred to by key \"Event0101:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Event0102",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Event0102",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "6b6ad2ff-ef63-3f7b-aabb-fba44f8de9d4",
-                  "description" : "Generated description for concept referred to by key \"Event0102:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Event0103",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Event0103",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "c2550912-10d9-3000-8826-377288cd6cb1",
-                  "description" : "Generated description for concept referred to by key \"Event0103:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Event0104",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Event0104",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "f6d75b71-c8a7-3337-a121-88d68c389f5a",
-                  "description" : "Generated description for concept referred to by key \"Event0104:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Events",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Events",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0215644c-4531-375c-8335-d558b4de8c03",
-                  "description" : "Generated description for concept referred to by key \"Events:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "ExternalContextAlbum",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "ExternalContextAlbum",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "976a79e7-5c80-3c03-9503-da3f41fec395",
-                  "description" : "Generated description for concept referred to by key \"ExternalContextAlbum:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "GlobalContextAlbum",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "GlobalContextAlbum",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "c95e9e5f-d2c7-3ac7-a205-ea3574530cb7",
-                  "description" : "Generated description for concept referred to by key \"GlobalContextAlbum:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "KeyInformation",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "KeyInformation",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "1ff2f905-685c-3caf-95bc-0bbc90345888",
-                  "description" : "Generated description for concept referred to by key \"KeyInformation:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Policies",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Policies",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "f54c3b2b-be76-31c4-adfc-87c494c06808",
-                  "description" : "Generated description for concept referred to by key \"Policies:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Policy0",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Policy0",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "3410e939-30ca-32c4-a2d8-c30b6fee6eec",
-                  "description" : "Generated description for concept referred to by key \"Policy0:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Policy0ContextAlbum",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Policy0ContextAlbum",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "e27564c4-3cbf-3db2-9bf3-83ae80a2f907",
-                  "description" : "Generated description for concept referred to by key \"Policy0ContextAlbum:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Policy1",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Policy1",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "d0b2b585-f344-33b8-af9e-250e7f4cfbce",
-                  "description" : "Generated description for concept referred to by key \"Policy1:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Policy1ContextAlbum",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Policy1ContextAlbum",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "815d74ae-6fc0-3221-87b9-2bb1dfdfa7f0",
-                  "description" : "Generated description for concept referred to by key \"Policy1ContextAlbum:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "SamplePolicyModelJAVASCRIPT",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SamplePolicyModelJAVASCRIPT",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "bc8ee312-81ce-3c4a-92d5-4a73b8077148",
-                  "description" : "Generated description for concept referred to by key \"SamplePolicyModelJAVASCRIPT:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Task_Act0",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Task_Act0",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0589ff20-adcc-3ce5-95fe-8d7978ed54ed",
-                  "description" : "Generated description for concept referred to by key \"Task_Act0:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Task_Act1",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Task_Act1",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "095b126d-ca8b-32c9-ad52-d744e817a79c",
-                  "description" : "Generated description for concept referred to by key \"Task_Act1:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Task_Act2",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Task_Act2",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "3d786b4c-d9ee-3367-ab71-c67271a4ea2f",
-                  "description" : "Generated description for concept referred to by key \"Task_Act2:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Task_Act3",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Task_Act3",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "9231753e-20c5-3436-982f-9100340cc570",
-                  "description" : "Generated description for concept referred to by key \"Task_Act3:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Task_Decide0",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Task_Decide0",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "502383d3-483f-3a56-a426-2f0406674c8d",
-                  "description" : "Generated description for concept referred to by key \"Task_Decide0:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Task_Decide1",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Task_Decide1",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "16598106-41c8-3b5a-99c6-5fcf6d1a5ddf",
-                  "description" : "Generated description for concept referred to by key \"Task_Decide1:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Task_Decide2",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Task_Decide2",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "ad3a89f5-e369-3c66-b22c-669f7b3653b8",
-                  "description" : "Generated description for concept referred to by key \"Task_Decide2:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Task_Decide3",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Task_Decide3",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "56815939-1164-3867-9ed1-0a27ff8aafb3",
-                  "description" : "Generated description for concept referred to by key \"Task_Decide3:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Task_Establish0",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Task_Establish0",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0db0c566-ecd7-3e27-9865-4b82c893abdb",
-                  "description" : "Generated description for concept referred to by key \"Task_Establish0:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Task_Establish1",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Task_Establish1",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "6944a4c1-6201-317c-8d7e-eaa7f2ee0ea0",
-                  "description" : "Generated description for concept referred to by key \"Task_Establish1:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Task_Establish2",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Task_Establish2",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0f766ea9-11cd-3e7d-a8c8-28c8dee6a85a",
-                  "description" : "Generated description for concept referred to by key \"Task_Establish2:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Task_Establish3",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Task_Establish3",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "c3237a38-cc6d-3418-b1e1-0dc8b4bdcc66",
-                  "description" : "Generated description for concept referred to by key \"Task_Establish3:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Task_Match0",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Task_Match0",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "051bcfd5-cf73-3c89-8ee7-ea6e005ec059",
-                  "description" : "Generated description for concept referred to by key \"Task_Match0:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Task_Match1",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Task_Match1",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "3754fe19-98f2-34a1-9f45-db31052208d8",
-                  "description" : "Generated description for concept referred to by key \"Task_Match1:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Task_Match2",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Task_Match2",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "8c200709-a180-3c8b-916f-275ff49ce194",
-                  "description" : "Generated description for concept referred to by key \"Task_Match2:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Task_Match3",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Task_Match3",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "a1a879c6-4510-33b0-bbd0-ad6256189a37",
-                  "description" : "Generated description for concept referred to by key \"Task_Match3:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Tasks",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Tasks",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "a7fab96b-ce1c-37ce-bbb2-556b6db524a5",
-                  "description" : "Generated description for concept referred to by key \"Tasks:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TestCase",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestCase",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0a652886-c88d-3f8c-8994-ae9161e7c963",
-                  "description" : "Generated description for concept referred to by key \"TestCase:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TestContextItem000",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestContextItem000",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "8efba9fa-371e-33df-a7d6-88b0284e7fd0",
-                  "description" : "Generated description for concept referred to by key \"TestContextItem000:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TestContextItem001",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestContextItem001",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "3740077c-a2b3-356b-81dc-5ded2118a951",
-                  "description" : "Generated description for concept referred to by key \"TestContextItem001:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TestContextItem002",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestContextItem002",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "b5c7df95-9af5-322f-9ea8-eb440a2bf926",
-                  "description" : "Generated description for concept referred to by key \"TestContextItem002:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TestContextItem003",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestContextItem003",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "b36f0aa5-0fb9-3e2c-8fa2-fddb7fd05f4b",
-                  "description" : "Generated description for concept referred to by key \"TestContextItem003:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TestContextItem004",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestContextItem004",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "093cda11-eaeb-3a46-a5b6-d5e30c00935b",
-                  "description" : "Generated description for concept referred to by key \"TestContextItem004:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TestContextItem005",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestContextItem005",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "569a758d-ba40-37c0-aebb-7ad138df25ac",
-                  "description" : "Generated description for concept referred to by key \"TestContextItem005:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TestContextItem006",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestContextItem006",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "252818d9-b61f-3962-a905-8865fb00fb04",
-                  "description" : "Generated description for concept referred to by key \"TestContextItem006:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TestContextItem007",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestContextItem007",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "fe1a5f7c-c083-377b-a797-752b01fc6c73",
-                  "description" : "Generated description for concept referred to by key \"TestContextItem007:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TestContextItem008",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestContextItem008",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "aa87d007-d07e-3f67-8c6d-0ebc3d85479d",
-                  "description" : "Generated description for concept referred to by key \"TestContextItem008:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TestContextItem009",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestContextItem009",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "126e7a3a-11b6-3f88-9397-c21d8819f859",
-                  "description" : "Generated description for concept referred to by key \"TestContextItem009:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TestContextItem00A",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestContextItem00A",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0e0e3dec-e03d-3379-a87b-1ecd4aa3d8cc",
-                  "description" : "Generated description for concept referred to by key \"TestContextItem00A:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TestContextItem00B",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestContextItem00B",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "dbdc98df-3ff4-360c-b8d3-a7a836ac3de6",
-                  "description" : "Generated description for concept referred to by key \"TestContextItem00B:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TestContextItem00C",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestContextItem00C",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "32a2f355-77f3-3b25-ace6-7a9c5763a5ad",
-                  "description" : "Generated description for concept referred to by key \"TestContextItem00C:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TestDatatypes",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestDatatypes",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "3f95472c-973e-30e2-95f1-bf00cbef909a",
-                  "description" : "Generated description for concept referred to by key \"TestDatatypes:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TestExternalContextItem",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestExternalContextItem",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "610dbbd4-9149-3b3c-9af4-819056f0e169",
-                  "description" : "Generated description for concept referred to by key \"TestExternalContextItem:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TestGlobalContextItem",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestGlobalContextItem",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "07fa8f68-55f1-3fd0-81c1-749a379753a7",
-                  "description" : "Generated description for concept referred to by key \"TestGlobalContextItem:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TestPolicyContextItem",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestPolicyContextItem",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "d9c93cd1-539e-35c5-aaec-bb711ceb1251",
-                  "description" : "Generated description for concept referred to by key \"TestPolicyContextItem:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TestSlogan",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestSlogan",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "683fe492-7eae-3ac7-9924-bb7850208d05",
-                  "description" : "Generated description for concept referred to by key \"TestSlogan:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TestTemperature",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestTemperature",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "bba25b6f-e3cd-3060-9022-4ef3a79f8eb0",
-                  "description" : "Generated description for concept referred to by key \"TestTemperature:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TestTimestamp",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestTimestamp",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "97b73937-c344-33c0-924c-4d26b6449564",
-                  "description" : "Generated description for concept referred to by key \"TestTimestamp:0.0.1\""
-               }
-            } ]
-         }
-      },
-      "policies" : {
-         "key" : {
-            "name" : "Policies",
-            "version" : "0.0.1"
-         },
-         "policyMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "Policy0",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "policyKey" : {
-                     "name" : "Policy0",
-                     "version" : "0.0.1"
-                  },
-                  "template" : "MEDA",
-                  "state" : {
-                     "entry" : [ {
-                        "key" : "Act",
-                        "value" : {
-                           "stateKey" : {
-                              "parentKeyName" : "Policy0",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Act"
-                           },
-                           "trigger" : {
-                              "name" : "Event0003",
-                              "version" : "0.0.1"
-                           },
-                           "stateOutputs" : {
-                              "entry" : [ {
-                                 "key" : "Act_NULL",
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Act",
-                                       "localName" : "Act_NULL"
-                                    },
-                                    "outgoingEvent" : {
-                                       "name" : "Event0004",
-                                       "version" : "0.0.1"
-                                    },
-                                    "nextState" : {
-                                       "parentKeyName" : "NULL",
-                                       "parentKeyVersion" : "0.0.0",
-                                       "parentLocalName" : "NULL",
-                                       "localName" : "NULL"
-                                    }
-                                 }
-                              } ]
-                           },
-                           "contextAlbumReference" : [ {
-                              "name" : "GlobalContextAlbum",
-                              "version" : "0.0.1"
-                           } ],
-                           "taskSelectionLogic" : {
-                              "key" : "TaskSelectionLigic",
-                              "logicFlavour" : "JAVASCRIPT",
-                              "logic" : "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.subject.defaultTaskKey.copyTo(executor.selectedTask)\n\nvar returnValue = executor.isTrue;"
-                           },
-                           "stateFinalizerLogicMap" : {
-                              "entry" : [ ]
-                           },
-                           "defaultTask" : {
-                              "name" : "Task_Act1",
-                              "version" : "0.0.1"
-                           },
-                           "taskReferences" : {
-                              "entry" : [ {
-                                 "key" : {
-                                    "name" : "Task_Act0",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Act",
-                                       "localName" : "Task_Act0_DIRECT_Act_NULL"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Act",
-                                       "localName" : "Act_NULL"
-                                    }
-                                 }
-                              }, {
-                                 "key" : {
-                                    "name" : "Task_Act1",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Act",
-                                       "localName" : "Task_Act1_DIRECT_Act_NULL"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Act",
-                                       "localName" : "Act_NULL"
-                                    }
-                                 }
-                              }, {
-                                 "key" : {
-                                    "name" : "Task_Act2",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Act",
-                                       "localName" : "Task_Act2_DIRECT_Act_NULL"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Act",
-                                       "localName" : "Act_NULL"
-                                    }
-                                 }
-                              }, {
-                                 "key" : {
-                                    "name" : "Task_Act3",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Act",
-                                       "localName" : "Task_Act3_DIRECT_Act_NULL"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Act",
-                                       "localName" : "Act_NULL"
-                                    }
-                                 }
-                              } ]
-                           }
-                        }
-                     }, {
-                        "key" : "Decide",
-                        "value" : {
-                           "stateKey" : {
-                              "parentKeyName" : "Policy0",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Decide"
-                           },
-                           "trigger" : {
-                              "name" : "Event0002",
-                              "version" : "0.0.1"
-                           },
-                           "stateOutputs" : {
-                              "entry" : [ {
-                                 "key" : "Decide_Act",
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Decide",
-                                       "localName" : "Decide_Act"
-                                    },
-                                    "outgoingEvent" : {
-                                       "name" : "Event0003",
-                                       "version" : "0.0.1"
-                                    },
-                                    "nextState" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "NULL",
-                                       "localName" : "Act"
-                                    }
-                                 }
-                              } ]
-                           },
-                           "contextAlbumReference" : [ {
-                              "name" : "ExternalContextAlbum",
-                              "version" : "0.0.1"
-                           }, {
-                              "name" : "GlobalContextAlbum",
-                              "version" : "0.0.1"
-                           }, {
-                              "name" : "Policy0ContextAlbum",
-                              "version" : "0.0.1"
-                           } ],
-                           "taskSelectionLogic" : {
-                              "key" : "TaskSelectionLigic",
-                              "logicFlavour" : "JAVASCRIPT",
-                              "logic" : "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.subject.defaultTaskKey.copyTo(executor.selectedTask)\n\nvar returnValue = executor.isTrue;"
-                           },
-                           "stateFinalizerLogicMap" : {
-                              "entry" : [ ]
-                           },
-                           "defaultTask" : {
-                              "name" : "Task_Decide3",
-                              "version" : "0.0.1"
-                           },
-                           "taskReferences" : {
-                              "entry" : [ {
-                                 "key" : {
-                                    "name" : "Task_Decide0",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Decide",
-                                       "localName" : "Task_Decide0_DIRECT_Decide_Act"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Decide",
-                                       "localName" : "Decide_Act"
-                                    }
-                                 }
-                              }, {
-                                 "key" : {
-                                    "name" : "Task_Decide1",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Decide",
-                                       "localName" : "Task_Decide1_DIRECT_Decide_Act"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Decide",
-                                       "localName" : "Decide_Act"
-                                    }
-                                 }
-                              }, {
-                                 "key" : {
-                                    "name" : "Task_Decide2",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Decide",
-                                       "localName" : "Task_Decide2_DIRECT_Decide_Act"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Decide",
-                                       "localName" : "Decide_Act"
-                                    }
-                                 }
-                              }, {
-                                 "key" : {
-                                    "name" : "Task_Decide3",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Decide",
-                                       "localName" : "Task_Decide3_DIRECT_Decide_Act"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Decide",
-                                       "localName" : "Decide_Act"
-                                    }
-                                 }
-                              } ]
-                           }
-                        }
-                     }, {
-                        "key" : "Establish",
-                        "value" : {
-                           "stateKey" : {
-                              "parentKeyName" : "Policy0",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Establish"
-                           },
-                           "trigger" : {
-                              "name" : "Event0001",
-                              "version" : "0.0.1"
-                           },
-                           "stateOutputs" : {
-                              "entry" : [ {
-                                 "key" : "Establish_Decide",
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Establish",
-                                       "localName" : "Establish_Decide"
-                                    },
-                                    "outgoingEvent" : {
-                                       "name" : "Event0002",
-                                       "version" : "0.0.1"
-                                    },
-                                    "nextState" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "NULL",
-                                       "localName" : "Decide"
-                                    }
-                                 }
-                              } ]
-                           },
-                           "contextAlbumReference" : [ {
-                              "name" : "ExternalContextAlbum",
-                              "version" : "0.0.1"
-                           }, {
-                              "name" : "GlobalContextAlbum",
-                              "version" : "0.0.1"
-                           }, {
-                              "name" : "Policy1ContextAlbum",
-                              "version" : "0.0.1"
-                           } ],
-                           "taskSelectionLogic" : {
-                              "key" : "TaskSelectionLigic",
-                              "logicFlavour" : "JAVASCRIPT",
-                              "logic" : "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.subject.defaultTaskKey.copyTo(executor.selectedTask)\n\nvar returnValue = executor.isTrue;"
-                           },
-                           "stateFinalizerLogicMap" : {
-                              "entry" : [ ]
-                           },
-                           "defaultTask" : {
-                              "name" : "Task_Establish2",
-                              "version" : "0.0.1"
-                           },
-                           "taskReferences" : {
-                              "entry" : [ {
-                                 "key" : {
-                                    "name" : "Task_Establish0",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Establish",
-                                       "localName" : "Task_Establish0_DIRECT_Establish_Decide"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Establish",
-                                       "localName" : "Establish_Decide"
-                                    }
-                                 }
-                              }, {
-                                 "key" : {
-                                    "name" : "Task_Establish1",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Establish",
-                                       "localName" : "Task_Establish1_DIRECT_Establish_Decide"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Establish",
-                                       "localName" : "Establish_Decide"
-                                    }
-                                 }
-                              }, {
-                                 "key" : {
-                                    "name" : "Task_Establish2",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Establish",
-                                       "localName" : "Task_Establish2_DIRECT_Establish_Decide"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Establish",
-                                       "localName" : "Establish_Decide"
-                                    }
-                                 }
-                              }, {
-                                 "key" : {
-                                    "name" : "Task_Establish3",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Establish",
-                                       "localName" : "Task_Establish3_DIRECT_Establish_Decide"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Establish",
-                                       "localName" : "Establish_Decide"
-                                    }
-                                 }
-                              } ]
-                           }
-                        }
-                     }, {
-                        "key" : "Match",
-                        "value" : {
-                           "stateKey" : {
-                              "parentKeyName" : "Policy0",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Match"
-                           },
-                           "trigger" : {
-                              "name" : "Event0000",
-                              "version" : "0.0.1"
-                           },
-                           "stateOutputs" : {
-                              "entry" : [ {
-                                 "key" : "Match_Establish",
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Match",
-                                       "localName" : "Match_Establish"
-                                    },
-                                    "outgoingEvent" : {
-                                       "name" : "Event0001",
-                                       "version" : "0.0.1"
-                                    },
-                                    "nextState" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "NULL",
-                                       "localName" : "Establish"
-                                    }
-                                 }
-                              } ]
-                           },
-                           "contextAlbumReference" : [ {
-                              "name" : "GlobalContextAlbum",
-                              "version" : "0.0.1"
-                           }, {
-                              "name" : "Policy0ContextAlbum",
-                              "version" : "0.0.1"
-                           } ],
-                           "taskSelectionLogic" : {
-                              "key" : "TaskSelectionLigic",
-                              "logicFlavour" : "JAVASCRIPT",
-                              "logic" : "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.subject.defaultTaskKey.copyTo(executor.selectedTask)\n\nvar returnValue = executor.isTrue;"
-                           },
-                           "stateFinalizerLogicMap" : {
-                              "entry" : [ ]
-                           },
-                           "defaultTask" : {
-                              "name" : "Task_Match0",
-                              "version" : "0.0.1"
-                           },
-                           "taskReferences" : {
-                              "entry" : [ {
-                                 "key" : {
-                                    "name" : "Task_Match0",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Match",
-                                       "localName" : "Task_Match0_DIRECT_Match_Establish"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Match",
-                                       "localName" : "Match_Establish"
-                                    }
-                                 }
-                              }, {
-                                 "key" : {
-                                    "name" : "Task_Match1",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Match",
-                                       "localName" : "Task_Match1_DIRECT_Match_Establish"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Match",
-                                       "localName" : "Match_Establish"
-                                    }
-                                 }
-                              }, {
-                                 "key" : {
-                                    "name" : "Task_Match2",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Match",
-                                       "localName" : "Task_Match2_DIRECT_Match_Establish"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Match",
-                                       "localName" : "Match_Establish"
-                                    }
-                                 }
-                              }, {
-                                 "key" : {
-                                    "name" : "Task_Match3",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Match",
-                                       "localName" : "Task_Match3_DIRECT_Match_Establish"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "Policy0",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Match",
-                                       "localName" : "Match_Establish"
-                                    }
-                                 }
-                              } ]
-                           }
-                        }
-                     } ]
-                  },
-                  "firstState" : "Match"
-               }
-            }, {
-               "key" : {
-                  "name" : "Policy1",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "policyKey" : {
-                     "name" : "Policy1",
-                     "version" : "0.0.1"
-                  },
-                  "template" : "MEDA",
-                  "state" : {
-                     "entry" : [ {
-                        "key" : "Act",
-                        "value" : {
-                           "stateKey" : {
-                              "parentKeyName" : "Policy1",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Act"
-                           },
-                           "trigger" : {
-                              "name" : "Event0103",
-                              "version" : "0.0.1"
-                           },
-                           "stateOutputs" : {
-                              "entry" : [ {
-                                 "key" : "Act_NULL",
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Act",
-                                       "localName" : "Act_NULL"
-                                    },
-                                    "outgoingEvent" : {
-                                       "name" : "Event0104",
-                                       "version" : "0.0.1"
-                                    },
-                                    "nextState" : {
-                                       "parentKeyName" : "NULL",
-                                       "parentKeyVersion" : "0.0.0",
-                                       "parentLocalName" : "NULL",
-                                       "localName" : "NULL"
-                                    }
-                                 }
-                              } ]
-                           },
-                           "contextAlbumReference" : [ {
-                              "name" : "GlobalContextAlbum",
-                              "version" : "0.0.1"
-                           } ],
-                           "taskSelectionLogic" : {
-                              "key" : "TaskSelectionLigic",
-                              "logicFlavour" : "JAVASCRIPT",
-                              "logic" : "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.subject.defaultTaskKey.copyTo(executor.selectedTask)\n\nvar returnValue = executor.isTrue;"
-                           },
-                           "stateFinalizerLogicMap" : {
-                              "entry" : [ ]
-                           },
-                           "defaultTask" : {
-                              "name" : "Task_Act0",
-                              "version" : "0.0.1"
-                           },
-                           "taskReferences" : {
-                              "entry" : [ {
-                                 "key" : {
-                                    "name" : "Task_Act0",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Act",
-                                       "localName" : "Task_Act0_DIRECT_Act_NULL"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Act",
-                                       "localName" : "Act_NULL"
-                                    }
-                                 }
-                              }, {
-                                 "key" : {
-                                    "name" : "Task_Act1",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Act",
-                                       "localName" : "Task_Act1_DIRECT_Act_NULL"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Act",
-                                       "localName" : "Act_NULL"
-                                    }
-                                 }
-                              }, {
-                                 "key" : {
-                                    "name" : "Task_Act2",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Act",
-                                       "localName" : "Task_Act2_DIRECT_Act_NULL"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Act",
-                                       "localName" : "Act_NULL"
-                                    }
-                                 }
-                              }, {
-                                 "key" : {
-                                    "name" : "Task_Act3",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Act",
-                                       "localName" : "Task_Act3_DIRECT_Act_NULL"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Act",
-                                       "localName" : "Act_NULL"
-                                    }
-                                 }
-                              } ]
-                           }
-                        }
-                     }, {
-                        "key" : "Decide",
-                        "value" : {
-                           "stateKey" : {
-                              "parentKeyName" : "Policy1",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Decide"
-                           },
-                           "trigger" : {
-                              "name" : "Event0102",
-                              "version" : "0.0.1"
-                           },
-                           "stateOutputs" : {
-                              "entry" : [ {
-                                 "key" : "Decide_Act",
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Decide",
-                                       "localName" : "Decide_Act"
-                                    },
-                                    "outgoingEvent" : {
-                                       "name" : "Event0103",
-                                       "version" : "0.0.1"
-                                    },
-                                    "nextState" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "NULL",
-                                       "localName" : "Act"
-                                    }
-                                 }
-                              } ]
-                           },
-                           "contextAlbumReference" : [ {
-                              "name" : "ExternalContextAlbum",
-                              "version" : "0.0.1"
-                           }, {
-                              "name" : "GlobalContextAlbum",
-                              "version" : "0.0.1"
-                           }, {
-                              "name" : "Policy1ContextAlbum",
-                              "version" : "0.0.1"
-                           } ],
-                           "taskSelectionLogic" : {
-                              "key" : "TaskSelectionLigic",
-                              "logicFlavour" : "JAVASCRIPT",
-                              "logic" : "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.subject.defaultTaskKey.copyTo(executor.selectedTask)\n\nvar returnValue = executor.isTrue;"
-                           },
-                           "stateFinalizerLogicMap" : {
-                              "entry" : [ ]
-                           },
-                           "defaultTask" : {
-                              "name" : "Task_Decide3",
-                              "version" : "0.0.1"
-                           },
-                           "taskReferences" : {
-                              "entry" : [ {
-                                 "key" : {
-                                    "name" : "Task_Decide0",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Decide",
-                                       "localName" : "Task_Decide0_DIRECT_Decide_Act"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Decide",
-                                       "localName" : "Decide_Act"
-                                    }
-                                 }
-                              }, {
-                                 "key" : {
-                                    "name" : "Task_Decide1",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Decide",
-                                       "localName" : "Task_Decide1_DIRECT_Decide_Act"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Decide",
-                                       "localName" : "Decide_Act"
-                                    }
-                                 }
-                              }, {
-                                 "key" : {
-                                    "name" : "Task_Decide2",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Decide",
-                                       "localName" : "Task_Decide2_DIRECT_Decide_Act"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Decide",
-                                       "localName" : "Decide_Act"
-                                    }
-                                 }
-                              }, {
-                                 "key" : {
-                                    "name" : "Task_Decide3",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Decide",
-                                       "localName" : "Task_Decide3_DIRECT_Decide_Act"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Decide",
-                                       "localName" : "Decide_Act"
-                                    }
-                                 }
-                              } ]
-                           }
-                        }
-                     }, {
-                        "key" : "Establish",
-                        "value" : {
-                           "stateKey" : {
-                              "parentKeyName" : "Policy1",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Establish"
-                           },
-                           "trigger" : {
-                              "name" : "Event0101",
-                              "version" : "0.0.1"
-                           },
-                           "stateOutputs" : {
-                              "entry" : [ {
-                                 "key" : "Establish_Decide",
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Establish",
-                                       "localName" : "Establish_Decide"
-                                    },
-                                    "outgoingEvent" : {
-                                       "name" : "Event0102",
-                                       "version" : "0.0.1"
-                                    },
-                                    "nextState" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "NULL",
-                                       "localName" : "Decide"
-                                    }
-                                 }
-                              } ]
-                           },
-                           "contextAlbumReference" : [ {
-                              "name" : "ExternalContextAlbum",
-                              "version" : "0.0.1"
-                           }, {
-                              "name" : "GlobalContextAlbum",
-                              "version" : "0.0.1"
-                           }, {
-                              "name" : "Policy1ContextAlbum",
-                              "version" : "0.0.1"
-                           } ],
-                           "taskSelectionLogic" : {
-                              "key" : "TaskSelectionLigic",
-                              "logicFlavour" : "JAVASCRIPT",
-                              "logic" : "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.subject.defaultTaskKey.copyTo(executor.selectedTask)\n\nvar returnValue = executor.isTrue;"
-                           },
-                           "stateFinalizerLogicMap" : {
-                              "entry" : [ ]
-                           },
-                           "defaultTask" : {
-                              "name" : "Task_Establish1",
-                              "version" : "0.0.1"
-                           },
-                           "taskReferences" : {
-                              "entry" : [ {
-                                 "key" : {
-                                    "name" : "Task_Establish0",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Establish",
-                                       "localName" : "Task_Establish0_DIRECT_Establish_Decide"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Establish",
-                                       "localName" : "Establish_Decide"
-                                    }
-                                 }
-                              }, {
-                                 "key" : {
-                                    "name" : "Task_Establish1",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Establish",
-                                       "localName" : "Task_Establish1_DIRECT_Establish_Decide"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Establish",
-                                       "localName" : "Establish_Decide"
-                                    }
-                                 }
-                              }, {
-                                 "key" : {
-                                    "name" : "Task_Establish2",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Establish",
-                                       "localName" : "Task_Establish2_DIRECT_Establish_Decide"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Establish",
-                                       "localName" : "Establish_Decide"
-                                    }
-                                 }
-                              }, {
-                                 "key" : {
-                                    "name" : "Task_Establish3",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Establish",
-                                       "localName" : "Task_Establish3_DIRECT_Establish_Decide"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Establish",
-                                       "localName" : "Establish_Decide"
-                                    }
-                                 }
-                              } ]
-                           }
-                        }
-                     }, {
-                        "key" : "Match",
-                        "value" : {
-                           "stateKey" : {
-                              "parentKeyName" : "Policy1",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Match"
-                           },
-                           "trigger" : {
-                              "name" : "Event0100",
-                              "version" : "0.0.1"
-                           },
-                           "stateOutputs" : {
-                              "entry" : [ {
-                                 "key" : "Match_Establish",
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Match",
-                                       "localName" : "Match_Establish"
-                                    },
-                                    "outgoingEvent" : {
-                                       "name" : "Event0101",
-                                       "version" : "0.0.1"
-                                    },
-                                    "nextState" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "NULL",
-                                       "localName" : "Establish"
-                                    }
-                                 }
-                              } ]
-                           },
-                           "contextAlbumReference" : [ {
-                              "name" : "ExternalContextAlbum",
-                              "version" : "0.0.1"
-                           }, {
-                              "name" : "GlobalContextAlbum",
-                              "version" : "0.0.1"
-                           }, {
-                              "name" : "Policy1ContextAlbum",
-                              "version" : "0.0.1"
-                           } ],
-                           "taskSelectionLogic" : {
-                              "key" : "TaskSelectionLigic",
-                              "logicFlavour" : "JAVASCRIPT",
-                              "logic" : "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.subject.defaultTaskKey.copyTo(executor.selectedTask)\n\nvar returnValue = executor.isTrue;"
-                           },
-                           "stateFinalizerLogicMap" : {
-                              "entry" : [ ]
-                           },
-                           "defaultTask" : {
-                              "name" : "Task_Match3",
-                              "version" : "0.0.1"
-                           },
-                           "taskReferences" : {
-                              "entry" : [ {
-                                 "key" : {
-                                    "name" : "Task_Match0",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Match",
-                                       "localName" : "Task_Match0_DIRECT_Match_Establish"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Match",
-                                       "localName" : "Match_Establish"
-                                    }
-                                 }
-                              }, {
-                                 "key" : {
-                                    "name" : "Task_Match1",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Match",
-                                       "localName" : "Task_Match1_DIRECT_Match_Establish"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Match",
-                                       "localName" : "Match_Establish"
-                                    }
-                                 }
-                              }, {
-                                 "key" : {
-                                    "name" : "Task_Match2",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Match",
-                                       "localName" : "Task_Match2_DIRECT_Match_Establish"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Match",
-                                       "localName" : "Match_Establish"
-                                    }
-                                 }
-                              }, {
-                                 "key" : {
-                                    "name" : "Task_Match3",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Match",
-                                       "localName" : "Task_Match3_DIRECT_Match_Establish"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "Policy1",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Match",
-                                       "localName" : "Match_Establish"
-                                    }
-                                 }
-                              } ]
-                           }
-                        }
-                     } ]
-                  },
-                  "firstState" : "Match"
-               }
-            } ]
-         }
-      },
-      "tasks" : {
-         "key" : {
-            "name" : "Tasks",
-            "version" : "0.0.1"
-         },
-         "taskMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "Task_Act0",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Task_Act0",
-                     "version" : "0.0.1"
-                  },
-                  "inputFields" : {
-                     "entry" : [ {
-                        "key" : "TestDecideCaseSelected",
-                        "value" : {
-                           "key" : "TestDecideCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestDecideStateTime",
-                        "value" : {
-                           "key" : "TestDecideStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishCaseSelected",
-                        "value" : {
-                           "key" : "TestEstablishCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishStateTime",
-                        "value" : {
-                           "key" : "TestEstablishStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCaseSelected",
-                        "value" : {
-                           "key" : "TestMatchCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchStateTime",
-                        "value" : {
-                           "key" : "TestMatchStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  },
-                  "outputFields" : {
-                     "entry" : [ {
-                        "key" : "TestActCaseSelected",
-                        "value" : {
-                           "key" : "TestActCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestActStateTime",
-                        "value" : {
-                           "key" : "TestActStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestDecideCaseSelected",
-                        "value" : {
-                           "key" : "TestDecideCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestDecideStateTime",
-                        "value" : {
-                           "key" : "TestDecideStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishCaseSelected",
-                        "value" : {
-                           "key" : "TestEstablishCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishStateTime",
-                        "value" : {
-                           "key" : "TestEstablishStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCaseSelected",
-                        "value" : {
-                           "key" : "TestMatchCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchStateTime",
-                        "value" : {
-                           "key" : "TestMatchStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  },
-                  "taskParameters" : {
-                     "entry" : [ {
-                        "key" : "Parameter0",
-                        "value" : {
-                           "key" : {
-                              "parentKeyName" : "Task_Act0",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Parameter0"
-                           },
-                           "defaultValue" : "DefaultValue0"
-                        }
-                     }, {
-                        "key" : "Parameter1",
-                        "value" : {
-                           "key" : {
-                              "parentKeyName" : "Task_Act0",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Parameter1"
-                           },
-                           "defaultValue" : "DefaultValue1"
-                        }
-                     }, {
-                        "key" : "Parameter2",
-                        "value" : {
-                           "key" : {
-                              "parentKeyName" : "Task_Act0",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Parameter2"
-                           },
-                           "defaultValue" : "DefaultValue2"
-                        }
-                     } ]
-                  },
-                  "contextAlbumReference" : [ {
-                     "name" : "ExternalContextAlbum",
-                     "version" : "0.0.1"
-                  }, {
-                     "name" : "GlobalContextAlbum",
-                     "version" : "0.0.1"
-                  }, {
-                     "name" : "Policy0ContextAlbum",
-                     "version" : "0.0.1"
-                  }, {
-                     "name" : "Policy1ContextAlbum",
-                     "version" : "0.0.1"
-                  } ],
-                  "taskLogic" : {
-                     "key" : "_TaskLogic",
-                     "logicFlavour" : "JAVASCRIPT",
-                     "logic" : "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nvar caseSelectedType = Java.type(\"java.lang.Byte\");\nexecutor.outFields.put(\"TestActCaseSelected\", new caseSelectedType(2));\n\nvar JavaDate = Java.type(\"java.util.Date\");\ntimeNow = new JavaDate();\nexecutor.outFields.put(\"TestActStateTime\", timeNow.getTime());\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "Task_Act1",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Task_Act1",
-                     "version" : "0.0.1"
-                  },
-                  "inputFields" : {
-                     "entry" : [ {
-                        "key" : "TestDecideCaseSelected",
-                        "value" : {
-                           "key" : "TestDecideCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestDecideStateTime",
-                        "value" : {
-                           "key" : "TestDecideStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishCaseSelected",
-                        "value" : {
-                           "key" : "TestEstablishCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishStateTime",
-                        "value" : {
-                           "key" : "TestEstablishStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCaseSelected",
-                        "value" : {
-                           "key" : "TestMatchCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchStateTime",
-                        "value" : {
-                           "key" : "TestMatchStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  },
-                  "outputFields" : {
-                     "entry" : [ {
-                        "key" : "TestActCaseSelected",
-                        "value" : {
-                           "key" : "TestActCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestActStateTime",
-                        "value" : {
-                           "key" : "TestActStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestDecideCaseSelected",
-                        "value" : {
-                           "key" : "TestDecideCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestDecideStateTime",
-                        "value" : {
-                           "key" : "TestDecideStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishCaseSelected",
-                        "value" : {
-                           "key" : "TestEstablishCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishStateTime",
-                        "value" : {
-                           "key" : "TestEstablishStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCaseSelected",
-                        "value" : {
-                           "key" : "TestMatchCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchStateTime",
-                        "value" : {
-                           "key" : "TestMatchStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  },
-                  "taskParameters" : {
-                     "entry" : [ {
-                        "key" : "Parameter0",
-                        "value" : {
-                           "key" : {
-                              "parentKeyName" : "Task_Act1",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Parameter0"
-                           },
-                           "defaultValue" : "DefaultValue0"
-                        }
-                     }, {
-                        "key" : "Parameter1",
-                        "value" : {
-                           "key" : {
-                              "parentKeyName" : "Task_Act1",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Parameter1"
-                           },
-                           "defaultValue" : "DefaultValue1"
-                        }
-                     } ]
-                  },
-                  "contextAlbumReference" : [ {
-                     "name" : "GlobalContextAlbum",
-                     "version" : "0.0.1"
-                  }, {
-                     "name" : "Policy0ContextAlbum",
-                     "version" : "0.0.1"
-                  } ],
-                  "taskLogic" : {
-                     "key" : "_TaskLogic",
-                     "logicFlavour" : "JAVASCRIPT",
-                     "logic" : "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nvar caseSelectedType = Java.type(\"java.lang.Byte\");\nexecutor.outFields.put(\"TestActCaseSelected\", new caseSelectedType(3));\n\nvar JavaDate = Java.type(\"java.util.Date\");\ntimeNow = new JavaDate();\nexecutor.outFields.put(\"TestActStateTime\", timeNow.getTime());\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "Task_Act2",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Task_Act2",
-                     "version" : "0.0.1"
-                  },
-                  "inputFields" : {
-                     "entry" : [ {
-                        "key" : "TestDecideCaseSelected",
-                        "value" : {
-                           "key" : "TestDecideCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestDecideStateTime",
-                        "value" : {
-                           "key" : "TestDecideStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishCaseSelected",
-                        "value" : {
-                           "key" : "TestEstablishCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishStateTime",
-                        "value" : {
-                           "key" : "TestEstablishStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCaseSelected",
-                        "value" : {
-                           "key" : "TestMatchCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchStateTime",
-                        "value" : {
-                           "key" : "TestMatchStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  },
-                  "outputFields" : {
-                     "entry" : [ {
-                        "key" : "TestActCaseSelected",
-                        "value" : {
-                           "key" : "TestActCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestActStateTime",
-                        "value" : {
-                           "key" : "TestActStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestDecideCaseSelected",
-                        "value" : {
-                           "key" : "TestDecideCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestDecideStateTime",
-                        "value" : {
-                           "key" : "TestDecideStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishCaseSelected",
-                        "value" : {
-                           "key" : "TestEstablishCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishStateTime",
-                        "value" : {
-                           "key" : "TestEstablishStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCaseSelected",
-                        "value" : {
-                           "key" : "TestMatchCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchStateTime",
-                        "value" : {
-                           "key" : "TestMatchStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  },
-                  "taskParameters" : {
-                     "entry" : [ {
-                        "key" : "Parameter0",
-                        "value" : {
-                           "key" : {
-                              "parentKeyName" : "Task_Act2",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Parameter0"
-                           },
-                           "defaultValue" : "DefaultValue0"
-                        }
-                     } ]
-                  },
-                  "contextAlbumReference" : [ {
-                     "name" : "GlobalContextAlbum",
-                     "version" : "0.0.1"
-                  }, {
-                     "name" : "Policy1ContextAlbum",
-                     "version" : "0.0.1"
-                  } ],
-                  "taskLogic" : {
-                     "key" : "_TaskLogic",
-                     "logicFlavour" : "JAVASCRIPT",
-                     "logic" : "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nvar caseSelectedType = Java.type(\"java.lang.Byte\");\nexecutor.outFields.put(\"TestActCaseSelected\", new caseSelectedType(0));\n\nvar JavaDate = Java.type(\"java.util.Date\");\ntimeNow = new JavaDate();\nexecutor.outFields.put(\"TestActStateTime\", timeNow.getTime());\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "Task_Act3",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Task_Act3",
-                     "version" : "0.0.1"
-                  },
-                  "inputFields" : {
-                     "entry" : [ {
-                        "key" : "TestDecideCaseSelected",
-                        "value" : {
-                           "key" : "TestDecideCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestDecideStateTime",
-                        "value" : {
-                           "key" : "TestDecideStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishCaseSelected",
-                        "value" : {
-                           "key" : "TestEstablishCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishStateTime",
-                        "value" : {
-                           "key" : "TestEstablishStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCaseSelected",
-                        "value" : {
-                           "key" : "TestMatchCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchStateTime",
-                        "value" : {
-                           "key" : "TestMatchStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  },
-                  "outputFields" : {
-                     "entry" : [ {
-                        "key" : "TestActCaseSelected",
-                        "value" : {
-                           "key" : "TestActCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestActStateTime",
-                        "value" : {
-                           "key" : "TestActStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestDecideCaseSelected",
-                        "value" : {
-                           "key" : "TestDecideCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestDecideStateTime",
-                        "value" : {
-                           "key" : "TestDecideStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishCaseSelected",
-                        "value" : {
-                           "key" : "TestEstablishCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishStateTime",
-                        "value" : {
-                           "key" : "TestEstablishStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCaseSelected",
-                        "value" : {
-                           "key" : "TestMatchCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchStateTime",
-                        "value" : {
-                           "key" : "TestMatchStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  },
-                  "taskParameters" : {
-                     "entry" : [ {
-                        "key" : "Parameter0",
-                        "value" : {
-                           "key" : {
-                              "parentKeyName" : "Task_Act3",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Parameter0"
-                           },
-                           "defaultValue" : "DefaultValue0"
-                        }
-                     } ]
-                  },
-                  "contextAlbumReference" : [ {
-                     "name" : "ExternalContextAlbum",
-                     "version" : "0.0.1"
-                  }, {
-                     "name" : "GlobalContextAlbum",
-                     "version" : "0.0.1"
-                  } ],
-                  "taskLogic" : {
-                     "key" : "_TaskLogic",
-                     "logicFlavour" : "JAVASCRIPT",
-                     "logic" : "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nvar caseSelectedType = Java.type(\"java.lang.Byte\");\nexecutor.outFields.put(\"TestActCaseSelected\", new caseSelectedType(1));\n\nvar JavaDate = Java.type(\"java.util.Date\");\ntimeNow = new JavaDate();\nexecutor.outFields.put(\"TestActStateTime\", timeNow.getTime());\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "Task_Decide0",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Task_Decide0",
-                     "version" : "0.0.1"
-                  },
-                  "inputFields" : {
-                     "entry" : [ {
-                        "key" : "TestEstablishCaseSelected",
-                        "value" : {
-                           "key" : "TestEstablishCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishStateTime",
-                        "value" : {
-                           "key" : "TestEstablishStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCaseSelected",
-                        "value" : {
-                           "key" : "TestMatchCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchStateTime",
-                        "value" : {
-                           "key" : "TestMatchStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  },
-                  "outputFields" : {
-                     "entry" : [ {
-                        "key" : "TestDecideCaseSelected",
-                        "value" : {
-                           "key" : "TestDecideCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestDecideStateTime",
-                        "value" : {
-                           "key" : "TestDecideStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishCaseSelected",
-                        "value" : {
-                           "key" : "TestEstablishCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishStateTime",
-                        "value" : {
-                           "key" : "TestEstablishStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCaseSelected",
-                        "value" : {
-                           "key" : "TestMatchCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchStateTime",
-                        "value" : {
-                           "key" : "TestMatchStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  },
-                  "taskParameters" : {
-                     "entry" : [ {
-                        "key" : "Parameter0",
-                        "value" : {
-                           "key" : {
-                              "parentKeyName" : "Task_Decide0",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Parameter0"
-                           },
-                           "defaultValue" : "DefaultValue0"
-                        }
-                     }, {
-                        "key" : "Parameter1",
-                        "value" : {
-                           "key" : {
-                              "parentKeyName" : "Task_Decide0",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Parameter1"
-                           },
-                           "defaultValue" : "DefaultValue1"
-                        }
-                     }, {
-                        "key" : "Parameter2",
-                        "value" : {
-                           "key" : {
-                              "parentKeyName" : "Task_Decide0",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Parameter2"
-                           },
-                           "defaultValue" : "DefaultValue2"
-                        }
-                     } ]
-                  },
-                  "contextAlbumReference" : [ {
-                     "name" : "ExternalContextAlbum",
-                     "version" : "0.0.1"
-                  }, {
-                     "name" : "GlobalContextAlbum",
-                     "version" : "0.0.1"
-                  }, {
-                     "name" : "Policy0ContextAlbum",
-                     "version" : "0.0.1"
-                  }, {
-                     "name" : "Policy1ContextAlbum",
-                     "version" : "0.0.1"
-                  } ],
-                  "taskLogic" : {
-                     "key" : "_TaskLogic",
-                     "logicFlavour" : "JAVASCRIPT",
-                     "logic" : "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nvar caseSelectedType = Java.type(\"java.lang.Byte\");\nexecutor.outFields.put(\"TestDecideCaseSelected\", new caseSelectedType(2));\n\nvar JavaDate = Java.type(\"java.util.Date\");\ntimeNow = new JavaDate();\nexecutor.outFields.put(\"TestDecideStateTime\", timeNow.getTime());\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "Task_Decide1",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Task_Decide1",
-                     "version" : "0.0.1"
-                  },
-                  "inputFields" : {
-                     "entry" : [ {
-                        "key" : "TestEstablishCaseSelected",
-                        "value" : {
-                           "key" : "TestEstablishCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishStateTime",
-                        "value" : {
-                           "key" : "TestEstablishStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCaseSelected",
-                        "value" : {
-                           "key" : "TestMatchCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchStateTime",
-                        "value" : {
-                           "key" : "TestMatchStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  },
-                  "outputFields" : {
-                     "entry" : [ {
-                        "key" : "TestDecideCaseSelected",
-                        "value" : {
-                           "key" : "TestDecideCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestDecideStateTime",
-                        "value" : {
-                           "key" : "TestDecideStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishCaseSelected",
-                        "value" : {
-                           "key" : "TestEstablishCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishStateTime",
-                        "value" : {
-                           "key" : "TestEstablishStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCaseSelected",
-                        "value" : {
-                           "key" : "TestMatchCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchStateTime",
-                        "value" : {
-                           "key" : "TestMatchStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  },
-                  "taskParameters" : {
-                     "entry" : [ {
-                        "key" : "Parameter0",
-                        "value" : {
-                           "key" : {
-                              "parentKeyName" : "Task_Decide1",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Parameter0"
-                           },
-                           "defaultValue" : "DefaultValue0"
-                        }
-                     }, {
-                        "key" : "Parameter1",
-                        "value" : {
-                           "key" : {
-                              "parentKeyName" : "Task_Decide1",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Parameter1"
-                           },
-                           "defaultValue" : "DefaultValue1"
-                        }
-                     } ]
-                  },
-                  "contextAlbumReference" : [ {
-                     "name" : "GlobalContextAlbum",
-                     "version" : "0.0.1"
-                  }, {
-                     "name" : "Policy0ContextAlbum",
-                     "version" : "0.0.1"
-                  } ],
-                  "taskLogic" : {
-                     "key" : "_TaskLogic",
-                     "logicFlavour" : "JAVASCRIPT",
-                     "logic" : "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nvar caseSelectedType = Java.type(\"java.lang.Byte\");\nexecutor.outFields.put(\"TestDecideCaseSelected\", new caseSelectedType(3));\n\nvar JavaDate = Java.type(\"java.util.Date\");\ntimeNow = new JavaDate();\nexecutor.outFields.put(\"TestDecideStateTime\", timeNow.getTime());\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "Task_Decide2",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Task_Decide2",
-                     "version" : "0.0.1"
-                  },
-                  "inputFields" : {
-                     "entry" : [ {
-                        "key" : "TestEstablishCaseSelected",
-                        "value" : {
-                           "key" : "TestEstablishCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishStateTime",
-                        "value" : {
-                           "key" : "TestEstablishStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCaseSelected",
-                        "value" : {
-                           "key" : "TestMatchCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchStateTime",
-                        "value" : {
-                           "key" : "TestMatchStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  },
-                  "outputFields" : {
-                     "entry" : [ {
-                        "key" : "TestDecideCaseSelected",
-                        "value" : {
-                           "key" : "TestDecideCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestDecideStateTime",
-                        "value" : {
-                           "key" : "TestDecideStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishCaseSelected",
-                        "value" : {
-                           "key" : "TestEstablishCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishStateTime",
-                        "value" : {
-                           "key" : "TestEstablishStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCaseSelected",
-                        "value" : {
-                           "key" : "TestMatchCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchStateTime",
-                        "value" : {
-                           "key" : "TestMatchStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  },
-                  "taskParameters" : {
-                     "entry" : [ {
-                        "key" : "Parameter0",
-                        "value" : {
-                           "key" : {
-                              "parentKeyName" : "Task_Decide2",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Parameter0"
-                           },
-                           "defaultValue" : "DefaultValue0"
-                        }
-                     } ]
-                  },
-                  "contextAlbumReference" : [ {
-                     "name" : "GlobalContextAlbum",
-                     "version" : "0.0.1"
-                  }, {
-                     "name" : "Policy1ContextAlbum",
-                     "version" : "0.0.1"
-                  } ],
-                  "taskLogic" : {
-                     "key" : "_TaskLogic",
-                     "logicFlavour" : "JAVASCRIPT",
-                     "logic" : "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nvar caseSelectedType = Java.type(\"java.lang.Byte\");\nexecutor.outFields.put(\"TestDecideCaseSelected\", new caseSelectedType(0));\n\nvar JavaDate = Java.type(\"java.util.Date\");\ntimeNow = new JavaDate();\nexecutor.outFields.put(\"TestDecideStateTime\", timeNow.getTime());\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "Task_Decide3",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Task_Decide3",
-                     "version" : "0.0.1"
-                  },
-                  "inputFields" : {
-                     "entry" : [ {
-                        "key" : "TestEstablishCaseSelected",
-                        "value" : {
-                           "key" : "TestEstablishCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishStateTime",
-                        "value" : {
-                           "key" : "TestEstablishStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCaseSelected",
-                        "value" : {
-                           "key" : "TestMatchCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchStateTime",
-                        "value" : {
-                           "key" : "TestMatchStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  },
-                  "outputFields" : {
-                     "entry" : [ {
-                        "key" : "TestDecideCaseSelected",
-                        "value" : {
-                           "key" : "TestDecideCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestDecideStateTime",
-                        "value" : {
-                           "key" : "TestDecideStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishCaseSelected",
-                        "value" : {
-                           "key" : "TestEstablishCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishStateTime",
-                        "value" : {
-                           "key" : "TestEstablishStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCaseSelected",
-                        "value" : {
-                           "key" : "TestMatchCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchStateTime",
-                        "value" : {
-                           "key" : "TestMatchStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  },
-                  "taskParameters" : {
-                     "entry" : [ {
-                        "key" : "Parameter0",
-                        "value" : {
-                           "key" : {
-                              "parentKeyName" : "Task_Decide3",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Parameter0"
-                           },
-                           "defaultValue" : "DefaultValue0"
-                        }
-                     } ]
-                  },
-                  "contextAlbumReference" : [ {
-                     "name" : "ExternalContextAlbum",
-                     "version" : "0.0.1"
-                  }, {
-                     "name" : "GlobalContextAlbum",
-                     "version" : "0.0.1"
-                  } ],
-                  "taskLogic" : {
-                     "key" : "_TaskLogic",
-                     "logicFlavour" : "JAVASCRIPT",
-                     "logic" : "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nvar caseSelectedType = Java.type(\"java.lang.Byte\");\nexecutor.outFields.put(\"TestDecideCaseSelected\", new caseSelectedType(1));\n\nvar JavaDate = Java.type(\"java.util.Date\");\ntimeNow = new JavaDate();\nexecutor.outFields.put(\"TestDecideStateTime\", timeNow.getTime());\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "Task_Establish0",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Task_Establish0",
-                     "version" : "0.0.1"
-                  },
-                  "inputFields" : {
-                     "entry" : [ {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCaseSelected",
-                        "value" : {
-                           "key" : "TestMatchCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchStateTime",
-                        "value" : {
-                           "key" : "TestMatchStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  },
-                  "outputFields" : {
-                     "entry" : [ {
-                        "key" : "TestEstablishCaseSelected",
-                        "value" : {
-                           "key" : "TestEstablishCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishStateTime",
-                        "value" : {
-                           "key" : "TestEstablishStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCaseSelected",
-                        "value" : {
-                           "key" : "TestMatchCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchStateTime",
-                        "value" : {
-                           "key" : "TestMatchStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  },
-                  "taskParameters" : {
-                     "entry" : [ {
-                        "key" : "Parameter0",
-                        "value" : {
-                           "key" : {
-                              "parentKeyName" : "Task_Establish0",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Parameter0"
-                           },
-                           "defaultValue" : "DefaultValue0"
-                        }
-                     }, {
-                        "key" : "Parameter1",
-                        "value" : {
-                           "key" : {
-                              "parentKeyName" : "Task_Establish0",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Parameter1"
-                           },
-                           "defaultValue" : "DefaultValue1"
-                        }
-                     }, {
-                        "key" : "Parameter2",
-                        "value" : {
-                           "key" : {
-                              "parentKeyName" : "Task_Establish0",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Parameter2"
-                           },
-                           "defaultValue" : "DefaultValue2"
-                        }
-                     } ]
-                  },
-                  "contextAlbumReference" : [ {
-                     "name" : "ExternalContextAlbum",
-                     "version" : "0.0.1"
-                  }, {
-                     "name" : "GlobalContextAlbum",
-                     "version" : "0.0.1"
-                  }, {
-                     "name" : "Policy0ContextAlbum",
-                     "version" : "0.0.1"
-                  }, {
-                     "name" : "Policy1ContextAlbum",
-                     "version" : "0.0.1"
-                  } ],
-                  "taskLogic" : {
-                     "key" : "_TaskLogic",
-                     "logicFlavour" : "JAVASCRIPT",
-                     "logic" : "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nvar caseSelectedType = Java.type(\"java.lang.Byte\");\nexecutor.outFields.put(\"TestEstablishCaseSelected\", new caseSelectedType(2));\n\nvar JavaDate = Java.type(\"java.util.Date\");\ntimeNow = new JavaDate();\nexecutor.outFields.put(\"TestEstablishStateTime\", timeNow.getTime());\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "Task_Establish1",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Task_Establish1",
-                     "version" : "0.0.1"
-                  },
-                  "inputFields" : {
-                     "entry" : [ {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCaseSelected",
-                        "value" : {
-                           "key" : "TestMatchCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchStateTime",
-                        "value" : {
-                           "key" : "TestMatchStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  },
-                  "outputFields" : {
-                     "entry" : [ {
-                        "key" : "TestEstablishCaseSelected",
-                        "value" : {
-                           "key" : "TestEstablishCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishStateTime",
-                        "value" : {
-                           "key" : "TestEstablishStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCaseSelected",
-                        "value" : {
-                           "key" : "TestMatchCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchStateTime",
-                        "value" : {
-                           "key" : "TestMatchStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  },
-                  "taskParameters" : {
-                     "entry" : [ {
-                        "key" : "Parameter0",
-                        "value" : {
-                           "key" : {
-                              "parentKeyName" : "Task_Establish1",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Parameter0"
-                           },
-                           "defaultValue" : "DefaultValue0"
-                        }
-                     }, {
-                        "key" : "Parameter1",
-                        "value" : {
-                           "key" : {
-                              "parentKeyName" : "Task_Establish1",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Parameter1"
-                           },
-                           "defaultValue" : "DefaultValue1"
-                        }
-                     } ]
-                  },
-                  "contextAlbumReference" : [ {
-                     "name" : "GlobalContextAlbum",
-                     "version" : "0.0.1"
-                  }, {
-                     "name" : "Policy0ContextAlbum",
-                     "version" : "0.0.1"
-                  } ],
-                  "taskLogic" : {
-                     "key" : "_TaskLogic",
-                     "logicFlavour" : "JAVASCRIPT",
-                     "logic" : "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nvar caseSelectedType = Java.type(\"java.lang.Byte\");\nexecutor.outFields.put(\"TestEstablishCaseSelected\", new caseSelectedType(3));\n\nvar JavaDate = Java.type(\"java.util.Date\");\ntimeNow = new JavaDate();\nexecutor.outFields.put(\"TestEstablishStateTime\", timeNow.getTime());\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "Task_Establish2",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Task_Establish2",
-                     "version" : "0.0.1"
-                  },
-                  "inputFields" : {
-                     "entry" : [ {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCaseSelected",
-                        "value" : {
-                           "key" : "TestMatchCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchStateTime",
-                        "value" : {
-                           "key" : "TestMatchStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  },
-                  "outputFields" : {
-                     "entry" : [ {
-                        "key" : "TestEstablishCaseSelected",
-                        "value" : {
-                           "key" : "TestEstablishCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishStateTime",
-                        "value" : {
-                           "key" : "TestEstablishStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCaseSelected",
-                        "value" : {
-                           "key" : "TestMatchCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchStateTime",
-                        "value" : {
-                           "key" : "TestMatchStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  },
-                  "taskParameters" : {
-                     "entry" : [ {
-                        "key" : "Parameter0",
-                        "value" : {
-                           "key" : {
-                              "parentKeyName" : "Task_Establish2",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Parameter0"
-                           },
-                           "defaultValue" : "DefaultValue0"
-                        }
-                     } ]
-                  },
-                  "contextAlbumReference" : [ {
-                     "name" : "GlobalContextAlbum",
-                     "version" : "0.0.1"
-                  }, {
-                     "name" : "Policy1ContextAlbum",
-                     "version" : "0.0.1"
-                  } ],
-                  "taskLogic" : {
-                     "key" : "_TaskLogic",
-                     "logicFlavour" : "JAVASCRIPT",
-                     "logic" : "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nvar caseSelectedType = Java.type(\"java.lang.Byte\");\nexecutor.outFields.put(\"TestEstablishCaseSelected\", new caseSelectedType(0));\n\nvar JavaDate = Java.type(\"java.util.Date\");\ntimeNow = new JavaDate();\nexecutor.outFields.put(\"TestEstablishStateTime\", timeNow.getTime());\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "Task_Establish3",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Task_Establish3",
-                     "version" : "0.0.1"
-                  },
-                  "inputFields" : {
-                     "entry" : [ {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCaseSelected",
-                        "value" : {
-                           "key" : "TestMatchCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchStateTime",
-                        "value" : {
-                           "key" : "TestMatchStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  },
-                  "outputFields" : {
-                     "entry" : [ {
-                        "key" : "TestEstablishCaseSelected",
-                        "value" : {
-                           "key" : "TestEstablishCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishStateTime",
-                        "value" : {
-                           "key" : "TestEstablishStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCaseSelected",
-                        "value" : {
-                           "key" : "TestMatchCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchStateTime",
-                        "value" : {
-                           "key" : "TestMatchStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  },
-                  "taskParameters" : {
-                     "entry" : [ {
-                        "key" : "Parameter0",
-                        "value" : {
-                           "key" : {
-                              "parentKeyName" : "Task_Establish3",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Parameter0"
-                           },
-                           "defaultValue" : "DefaultValue0"
-                        }
-                     } ]
-                  },
-                  "contextAlbumReference" : [ {
-                     "name" : "ExternalContextAlbum",
-                     "version" : "0.0.1"
-                  }, {
-                     "name" : "GlobalContextAlbum",
-                     "version" : "0.0.1"
-                  } ],
-                  "taskLogic" : {
-                     "key" : "_TaskLogic",
-                     "logicFlavour" : "JAVASCRIPT",
-                     "logic" : "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nvar caseSelectedType = Java.type(\"java.lang.Byte\");\nexecutor.outFields.put(\"TestEstablishCaseSelected\", new caseSelectedType(1));\n\nvar JavaDate = Java.type(\"java.util.Date\");\ntimeNow = new JavaDate();\nexecutor.outFields.put(\"TestEstablishStateTime\", timeNow.getTime());\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "Task_Match0",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Task_Match0",
-                     "version" : "0.0.1"
-                  },
-                  "inputFields" : {
-                     "entry" : [ {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  },
-                  "outputFields" : {
-                     "entry" : [ {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCaseSelected",
-                        "value" : {
-                           "key" : "TestMatchCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchStateTime",
-                        "value" : {
-                           "key" : "TestMatchStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  },
-                  "taskParameters" : {
-                     "entry" : [ {
-                        "key" : "Parameter0",
-                        "value" : {
-                           "key" : {
-                              "parentKeyName" : "Task_Match0",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Parameter0"
-                           },
-                           "defaultValue" : "DefaultValue0"
-                        }
-                     }, {
-                        "key" : "Parameter1",
-                        "value" : {
-                           "key" : {
-                              "parentKeyName" : "Task_Match0",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Parameter1"
-                           },
-                           "defaultValue" : "DefaultValue1"
-                        }
-                     }, {
-                        "key" : "Parameter2",
-                        "value" : {
-                           "key" : {
-                              "parentKeyName" : "Task_Match0",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Parameter2"
-                           },
-                           "defaultValue" : "DefaultValue2"
-                        }
-                     } ]
-                  },
-                  "contextAlbumReference" : [ {
-                     "name" : "ExternalContextAlbum",
-                     "version" : "0.0.1"
-                  }, {
-                     "name" : "GlobalContextAlbum",
-                     "version" : "0.0.1"
-                  }, {
-                     "name" : "Policy0ContextAlbum",
-                     "version" : "0.0.1"
-                  }, {
-                     "name" : "Policy1ContextAlbum",
-                     "version" : "0.0.1"
-                  } ],
-                  "taskLogic" : {
-                     "key" : "_TaskLogic",
-                     "logicFlavour" : "JAVASCRIPT",
-                     "logic" : "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nvar caseSelectedType = Java.type(\"java.lang.Byte\");\nexecutor.outFields.put(\"TestMatchCaseSelected\", new caseSelectedType(2));\n\nvar JavaDate = Java.type(\"java.util.Date\");\ntimeNow = new JavaDate();\nexecutor.outFields.put(\"TestMatchStateTime\", timeNow.getTime());\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "Task_Match1",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Task_Match1",
-                     "version" : "0.0.1"
-                  },
-                  "inputFields" : {
-                     "entry" : [ {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  },
-                  "outputFields" : {
-                     "entry" : [ {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCaseSelected",
-                        "value" : {
-                           "key" : "TestMatchCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchStateTime",
-                        "value" : {
-                           "key" : "TestMatchStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  },
-                  "taskParameters" : {
-                     "entry" : [ {
-                        "key" : "Parameter0",
-                        "value" : {
-                           "key" : {
-                              "parentKeyName" : "Task_Match1",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Parameter0"
-                           },
-                           "defaultValue" : "DefaultValue0"
-                        }
-                     }, {
-                        "key" : "Parameter1",
-                        "value" : {
-                           "key" : {
-                              "parentKeyName" : "Task_Match1",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Parameter1"
-                           },
-                           "defaultValue" : "DefaultValue1"
-                        }
-                     } ]
-                  },
-                  "contextAlbumReference" : [ {
-                     "name" : "GlobalContextAlbum",
-                     "version" : "0.0.1"
-                  }, {
-                     "name" : "Policy0ContextAlbum",
-                     "version" : "0.0.1"
-                  } ],
-                  "taskLogic" : {
-                     "key" : "_TaskLogic",
-                     "logicFlavour" : "JAVASCRIPT",
-                     "logic" : "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nvar caseSelectedType = Java.type(\"java.lang.Byte\");\nexecutor.outFields.put(\"TestMatchCaseSelected\", new caseSelectedType(3));\n\nvar JavaDate = Java.type(\"java.util.Date\");\ntimeNow = new JavaDate();\nexecutor.outFields.put(\"TestMatchStateTime\", timeNow.getTime());\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "Task_Match2",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Task_Match2",
-                     "version" : "0.0.1"
-                  },
-                  "inputFields" : {
-                     "entry" : [ {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  },
-                  "outputFields" : {
-                     "entry" : [ {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCaseSelected",
-                        "value" : {
-                           "key" : "TestMatchCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchStateTime",
-                        "value" : {
-                           "key" : "TestMatchStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  },
-                  "taskParameters" : {
-                     "entry" : [ {
-                        "key" : "Parameter0",
-                        "value" : {
-                           "key" : {
-                              "parentKeyName" : "Task_Match2",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Parameter0"
-                           },
-                           "defaultValue" : "DefaultValue0"
-                        }
-                     } ]
-                  },
-                  "contextAlbumReference" : [ {
-                     "name" : "GlobalContextAlbum",
-                     "version" : "0.0.1"
-                  }, {
-                     "name" : "Policy1ContextAlbum",
-                     "version" : "0.0.1"
-                  } ],
-                  "taskLogic" : {
-                     "key" : "_TaskLogic",
-                     "logicFlavour" : "JAVASCRIPT",
-                     "logic" : "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nvar caseSelectedType = Java.type(\"java.lang.Byte\");\nexecutor.outFields.put(\"TestMatchCaseSelected\", new caseSelectedType(0));\n\nvar JavaDate = Java.type(\"java.util.Date\");\ntimeNow = new JavaDate();\nexecutor.outFields.put(\"TestMatchStateTime\", timeNow.getTime());\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "Task_Match3",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Task_Match3",
-                     "version" : "0.0.1"
-                  },
-                  "inputFields" : {
-                     "entry" : [ {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  },
-                  "outputFields" : {
-                     "entry" : [ {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCaseSelected",
-                        "value" : {
-                           "key" : "TestMatchCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchStateTime",
-                        "value" : {
-                           "key" : "TestMatchStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  },
-                  "taskParameters" : {
-                     "entry" : [ {
-                        "key" : "Parameter0",
-                        "value" : {
-                           "key" : {
-                              "parentKeyName" : "Task_Match3",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Parameter0"
-                           },
-                           "defaultValue" : "DefaultValue0"
-                        }
-                     } ]
-                  },
-                  "contextAlbumReference" : [ {
-                     "name" : "ExternalContextAlbum",
-                     "version" : "0.0.1"
-                  }, {
-                     "name" : "GlobalContextAlbum",
-                     "version" : "0.0.1"
-                  } ],
-                  "taskLogic" : {
-                     "key" : "_TaskLogic",
-                     "logicFlavour" : "JAVASCRIPT",
-                     "logic" : "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nvar caseSelectedType = Java.type(\"java.lang.Byte\");\nexecutor.outFields.put(\"TestMatchCaseSelected\", new caseSelectedType(1));\n\nvar JavaDate = Java.type(\"java.util.Date\");\ntimeNow = new JavaDate();\nexecutor.outFields.put(\"TestMatchStateTime\", timeNow.getTime());\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
-                  }
-               }
-            } ]
-         }
-      },
-      "events" : {
-         "key" : {
-            "name" : "Events",
-            "version" : "0.0.1"
-         },
-         "eventMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "Event0000",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Event0000",
-                     "version" : "0.0.1"
-                  },
-                  "nameSpace" : "org.onap.policy.apex.sample.events",
-                  "source" : "Outside",
-                  "target" : "Match",
-                  "parameter" : {
-                     "entry" : [ {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "Event0001",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Event0001",
-                     "version" : "0.0.1"
-                  },
-                  "nameSpace" : "org.onap.policy.apex.sample.events",
-                  "source" : "Match",
-                  "target" : "Establish",
-                  "parameter" : {
-                     "entry" : [ {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCaseSelected",
-                        "value" : {
-                           "key" : "TestMatchCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchStateTime",
-                        "value" : {
-                           "key" : "TestMatchStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "Event0002",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Event0002",
-                     "version" : "0.0.1"
-                  },
-                  "nameSpace" : "org.onap.policy.apex.sample.events",
-                  "source" : "Establish",
-                  "target" : "Decide",
-                  "parameter" : {
-                     "entry" : [ {
-                        "key" : "TestEstablishCaseSelected",
-                        "value" : {
-                           "key" : "TestEstablishCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishStateTime",
-                        "value" : {
-                           "key" : "TestEstablishStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCaseSelected",
-                        "value" : {
-                           "key" : "TestMatchCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchStateTime",
-                        "value" : {
-                           "key" : "TestMatchStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "Event0003",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Event0003",
-                     "version" : "0.0.1"
-                  },
-                  "nameSpace" : "org.onap.policy.apex.sample.events",
-                  "source" : "Decide",
-                  "target" : "Act",
-                  "parameter" : {
-                     "entry" : [ {
-                        "key" : "TestDecideCaseSelected",
-                        "value" : {
-                           "key" : "TestDecideCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestDecideStateTime",
-                        "value" : {
-                           "key" : "TestDecideStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishCaseSelected",
-                        "value" : {
-                           "key" : "TestEstablishCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishStateTime",
-                        "value" : {
-                           "key" : "TestEstablishStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCaseSelected",
-                        "value" : {
-                           "key" : "TestMatchCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchStateTime",
-                        "value" : {
-                           "key" : "TestMatchStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "Event0004",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Event0004",
-                     "version" : "0.0.1"
-                  },
-                  "nameSpace" : "org.onap.policy.apex.sample.events",
-                  "source" : "Act",
-                  "target" : "Outside",
-                  "parameter" : {
-                     "entry" : [ {
-                        "key" : "TestActCaseSelected",
-                        "value" : {
-                           "key" : "TestActCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestActStateTime",
-                        "value" : {
-                           "key" : "TestActStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestDecideCaseSelected",
-                        "value" : {
-                           "key" : "TestDecideCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestDecideStateTime",
-                        "value" : {
-                           "key" : "TestDecideStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishCaseSelected",
-                        "value" : {
-                           "key" : "TestEstablishCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishStateTime",
-                        "value" : {
-                           "key" : "TestEstablishStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCaseSelected",
-                        "value" : {
-                           "key" : "TestMatchCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchStateTime",
-                        "value" : {
-                           "key" : "TestMatchStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "Event0100",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Event0100",
-                     "version" : "0.0.1"
-                  },
-                  "nameSpace" : "org.onap.policy.apex.sample.events",
-                  "source" : "Outside",
-                  "target" : "Match",
-                  "parameter" : {
-                     "entry" : [ {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "Event0101",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Event0101",
-                     "version" : "0.0.1"
-                  },
-                  "nameSpace" : "org.onap.policy.apex.sample.events",
-                  "source" : "Match",
-                  "target" : "Establish",
-                  "parameter" : {
-                     "entry" : [ {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCaseSelected",
-                        "value" : {
-                           "key" : "TestMatchCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchStateTime",
-                        "value" : {
-                           "key" : "TestMatchStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "Event0102",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Event0102",
-                     "version" : "0.0.1"
-                  },
-                  "nameSpace" : "org.onap.policy.apex.sample.events",
-                  "source" : "Establish",
-                  "target" : "Decide",
-                  "parameter" : {
-                     "entry" : [ {
-                        "key" : "TestEstablishCaseSelected",
-                        "value" : {
-                           "key" : "TestEstablishCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishStateTime",
-                        "value" : {
-                           "key" : "TestEstablishStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCaseSelected",
-                        "value" : {
-                           "key" : "TestMatchCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchStateTime",
-                        "value" : {
-                           "key" : "TestMatchStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "Event0103",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Event0103",
-                     "version" : "0.0.1"
-                  },
-                  "nameSpace" : "org.onap.policy.apex.sample.events",
-                  "source" : "Decide",
-                  "target" : "Act",
-                  "parameter" : {
-                     "entry" : [ {
-                        "key" : "TestDecideCaseSelected",
-                        "value" : {
-                           "key" : "TestDecideCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestDecideStateTime",
-                        "value" : {
-                           "key" : "TestDecideStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishCaseSelected",
-                        "value" : {
-                           "key" : "TestEstablishCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishStateTime",
-                        "value" : {
-                           "key" : "TestEstablishStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCaseSelected",
-                        "value" : {
-                           "key" : "TestMatchCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchStateTime",
-                        "value" : {
-                           "key" : "TestMatchStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "Event0104",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Event0104",
-                     "version" : "0.0.1"
-                  },
-                  "nameSpace" : "org.onap.policy.apex.sample.events",
-                  "source" : "Act",
-                  "target" : "Outside",
-                  "parameter" : {
-                     "entry" : [ {
-                        "key" : "TestActCaseSelected",
-                        "value" : {
-                           "key" : "TestActCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestActStateTime",
-                        "value" : {
-                           "key" : "TestActStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestDecideCaseSelected",
-                        "value" : {
-                           "key" : "TestDecideCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestDecideStateTime",
-                        "value" : {
-                           "key" : "TestDecideStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishCaseSelected",
-                        "value" : {
-                           "key" : "TestEstablishCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestEstablishStateTime",
-                        "value" : {
-                           "key" : "TestEstablishStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCase",
-                        "value" : {
-                           "key" : "TestMatchCase",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchCaseSelected",
-                        "value" : {
-                           "key" : "TestMatchCaseSelected",
-                           "fieldSchemaKey" : {
-                              "name" : "TestCase",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestMatchStateTime",
-                        "value" : {
-                           "key" : "TestMatchStateTime",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestSlogan",
-                        "value" : {
-                           "key" : "TestSlogan",
-                           "fieldSchemaKey" : {
-                              "name" : "TestSlogan",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTemperature",
-                        "value" : {
-                           "key" : "TestTemperature",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTemperature",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "TestTimestamp",
-                        "value" : {
-                           "key" : "TestTimestamp",
-                           "fieldSchemaKey" : {
-                              "name" : "TestTimestamp",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  }
-               }
-            } ]
-         }
-      },
-      "albums" : {
-         "key" : {
-            "name" : "Context",
-            "version" : "0.0.1"
-         },
-         "albums" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "ExternalContextAlbum",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "ExternalContextAlbum",
-                     "version" : "0.0.1"
-                  },
-                  "scope" : "EXTERNAL",
-                  "isWritable" : false,
-                  "itemSchema" : {
-                     "name" : "TestExternalContextItem",
-                     "version" : "0.0.1"
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "GlobalContextAlbum",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "GlobalContextAlbum",
-                     "version" : "0.0.1"
-                  },
-                  "scope" : "GLOBAL",
-                  "isWritable" : true,
-                  "itemSchema" : {
-                     "name" : "TestGlobalContextItem",
-                     "version" : "0.0.1"
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "Policy0ContextAlbum",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Policy0ContextAlbum",
-                     "version" : "0.0.1"
-                  },
-                  "scope" : "APPLICATION",
-                  "isWritable" : true,
-                  "itemSchema" : {
-                     "name" : "TestPolicyContextItem",
-                     "version" : "0.0.1"
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "Policy1ContextAlbum",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Policy1ContextAlbum",
-                     "version" : "0.0.1"
-                  },
-                  "scope" : "APPLICATION",
-                  "isWritable" : true,
-                  "itemSchema" : {
-                     "name" : "TestPolicyContextItem",
-                     "version" : "0.0.1"
-                  }
-               }
-            } ]
-         }
-      },
-      "schemas" : {
-         "key" : {
-            "name" : "TestDatatypes",
-            "version" : "0.0.1"
-         },
-         "schemas" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "TestCase",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestCase",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Byte"
-               }
-            }, {
-               "key" : {
-                  "name" : "TestContextItem000",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestContextItem000",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "org.onap.policy.apex.context.test.concepts.TestContextItem000"
-               }
-            }, {
-               "key" : {
-                  "name" : "TestContextItem001",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestContextItem001",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "org.onap.policy.apex.context.test.concepts.TestContextItem001"
-               }
-            }, {
-               "key" : {
-                  "name" : "TestContextItem002",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestContextItem002",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "org.onap.policy.apex.context.test.concepts.TestContextItem002"
-               }
-            }, {
-               "key" : {
-                  "name" : "TestContextItem003",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestContextItem003",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "org.onap.policy.apex.context.test.concepts.TestContextItem003"
-               }
-            }, {
-               "key" : {
-                  "name" : "TestContextItem004",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestContextItem004",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "org.onap.policy.apex.context.test.concepts.TestContextItem004"
-               }
-            }, {
-               "key" : {
-                  "name" : "TestContextItem005",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestContextItem005",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "org.onap.policy.apex.context.test.concepts.TestContextItem005"
-               }
-            }, {
-               "key" : {
-                  "name" : "TestContextItem006",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestContextItem006",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "org.onap.policy.apex.context.test.concepts.TestContextItem006"
-               }
-            }, {
-               "key" : {
-                  "name" : "TestContextItem007",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestContextItem007",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "org.onap.policy.apex.context.test.concepts.TestContextItem007"
-               }
-            }, {
-               "key" : {
-                  "name" : "TestContextItem008",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestContextItem008",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "org.onap.policy.apex.context.test.concepts.TestContextItem008"
-               }
-            }, {
-               "key" : {
-                  "name" : "TestContextItem009",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestContextItem009",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "org.onap.policy.apex.context.test.concepts.TestContextItem009"
-               }
-            }, {
-               "key" : {
-                  "name" : "TestContextItem00A",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestContextItem00A",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "org.onap.policy.apex.context.test.concepts.TestContextItem00A"
-               }
-            }, {
-               "key" : {
-                  "name" : "TestContextItem00B",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestContextItem00B",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "org.onap.policy.apex.context.test.concepts.TestContextItem00B"
-               }
-            }, {
-               "key" : {
-                  "name" : "TestContextItem00C",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestContextItem00C",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "org.onap.policy.apex.context.test.concepts.TestContextItem00C"
-               }
-            }, {
-               "key" : {
-                  "name" : "TestExternalContextItem",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestExternalContextItem",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "org.onap.policy.apex.context.test.concepts.TestExternalContextItem"
-               }
-            }, {
-               "key" : {
-                  "name" : "TestGlobalContextItem",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestGlobalContextItem",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "org.onap.policy.apex.context.test.concepts.TestGlobalContextItem"
-               }
-            }, {
-               "key" : {
-                  "name" : "TestPolicyContextItem",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestPolicyContextItem",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "org.onap.policy.apex.context.test.concepts.TestPolicyContextItem"
-               }
-            }, {
-               "key" : {
-                  "name" : "TestSlogan",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestSlogan",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.String"
-               }
-            }, {
-               "key" : {
-                  "name" : "TestTemperature",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestTemperature",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Double"
-               }
-            }, {
-               "key" : {
-                  "name" : "TestTimestamp",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestTimestamp",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Long"
-               }
-            } ]
-         }
-      }
-   }
-}
\ No newline at end of file
+  "key": {
+    "name": "SamplePolicyModelJAVASCRIPT",
+    "version": "0.0.1"
+  },
+  "keyInformation": {
+    "key": {
+      "name": "KeyInformation",
+      "version": "0.0.1"
+    },
+    "keyInfoMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "Context",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Context",
+              "version": "0.0.1"
+            },
+            "UUID": "ca36bfd8-6042-3633-8c85-89c66507c3bf",
+            "description": "Generated description for concept referred to by key \"Context:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Event0000",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Event0000",
+              "version": "0.0.1"
+            },
+            "UUID": "465a81cc-885f-3a4d-bc4e-1508da92b236",
+            "description": "Generated description for concept referred to by key \"Event0000:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Event0001",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Event0001",
+              "version": "0.0.1"
+            },
+            "UUID": "36b2d570-fff7-3a4b-bab2-6bf492f5129a",
+            "description": "Generated description for concept referred to by key \"Event0001:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Event0002",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Event0002",
+              "version": "0.0.1"
+            },
+            "UUID": "ff6160a7-fb5e-379c-a6d2-2cd28053eacf",
+            "description": "Generated description for concept referred to by key \"Event0002:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Event0003",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Event0003",
+              "version": "0.0.1"
+            },
+            "UUID": "5899e216-2abf-3781-abc4-2c257b92721e",
+            "description": "Generated description for concept referred to by key \"Event0003:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Event0004",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Event0004",
+              "version": "0.0.1"
+            },
+            "UUID": "7c2692a7-4587-3d09-abf9-d96b339a316f",
+            "description": "Generated description for concept referred to by key \"Event0004:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Event0100",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Event0100",
+              "version": "0.0.1"
+            },
+            "UUID": "b696048c-c0b0-34c1-8dbe-32ab6c8bc0c7",
+            "description": "Generated description for concept referred to by key \"Event0100:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Event0101",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Event0101",
+              "version": "0.0.1"
+            },
+            "UUID": "edbfa868-2ab2-30fd-8078-4c7f67ca6122",
+            "description": "Generated description for concept referred to by key \"Event0101:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Event0102",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Event0102",
+              "version": "0.0.1"
+            },
+            "UUID": "6b6ad2ff-ef63-3f7b-aabb-fba44f8de9d4",
+            "description": "Generated description for concept referred to by key \"Event0102:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Event0103",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Event0103",
+              "version": "0.0.1"
+            },
+            "UUID": "c2550912-10d9-3000-8826-377288cd6cb1",
+            "description": "Generated description for concept referred to by key \"Event0103:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Event0104",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Event0104",
+              "version": "0.0.1"
+            },
+            "UUID": "f6d75b71-c8a7-3337-a121-88d68c389f5a",
+            "description": "Generated description for concept referred to by key \"Event0104:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Events",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Events",
+              "version": "0.0.1"
+            },
+            "UUID": "0215644c-4531-375c-8335-d558b4de8c03",
+            "description": "Generated description for concept referred to by key \"Events:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "ExternalContextAlbum",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "ExternalContextAlbum",
+              "version": "0.0.1"
+            },
+            "UUID": "976a79e7-5c80-3c03-9503-da3f41fec395",
+            "description": "Generated description for concept referred to by key \"ExternalContextAlbum:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "GlobalContextAlbum",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "GlobalContextAlbum",
+              "version": "0.0.1"
+            },
+            "UUID": "c95e9e5f-d2c7-3ac7-a205-ea3574530cb7",
+            "description": "Generated description for concept referred to by key \"GlobalContextAlbum:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "KeyInformation",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "KeyInformation",
+              "version": "0.0.1"
+            },
+            "UUID": "1ff2f905-685c-3caf-95bc-0bbc90345888",
+            "description": "Generated description for concept referred to by key \"KeyInformation:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Policies",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Policies",
+              "version": "0.0.1"
+            },
+            "UUID": "f54c3b2b-be76-31c4-adfc-87c494c06808",
+            "description": "Generated description for concept referred to by key \"Policies:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Policy0",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Policy0",
+              "version": "0.0.1"
+            },
+            "UUID": "3410e939-30ca-32c4-a2d8-c30b6fee6eec",
+            "description": "Generated description for concept referred to by key \"Policy0:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Policy0ContextAlbum",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Policy0ContextAlbum",
+              "version": "0.0.1"
+            },
+            "UUID": "e27564c4-3cbf-3db2-9bf3-83ae80a2f907",
+            "description": "Generated description for concept referred to by key \"Policy0ContextAlbum:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Policy1",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Policy1",
+              "version": "0.0.1"
+            },
+            "UUID": "d0b2b585-f344-33b8-af9e-250e7f4cfbce",
+            "description": "Generated description for concept referred to by key \"Policy1:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Policy1ContextAlbum",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Policy1ContextAlbum",
+              "version": "0.0.1"
+            },
+            "UUID": "815d74ae-6fc0-3221-87b9-2bb1dfdfa7f0",
+            "description": "Generated description for concept referred to by key \"Policy1ContextAlbum:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "SamplePolicyModelJAVASCRIPT",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SamplePolicyModelJAVASCRIPT",
+              "version": "0.0.1"
+            },
+            "UUID": "bc8ee312-81ce-3c4a-92d5-4a73b8077148",
+            "description": "Generated description for concept referred to by key \"SamplePolicyModelJAVASCRIPT:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Task_Act0",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Task_Act0",
+              "version": "0.0.1"
+            },
+            "UUID": "0589ff20-adcc-3ce5-95fe-8d7978ed54ed",
+            "description": "Generated description for concept referred to by key \"Task_Act0:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Task_Act1",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Task_Act1",
+              "version": "0.0.1"
+            },
+            "UUID": "095b126d-ca8b-32c9-ad52-d744e817a79c",
+            "description": "Generated description for concept referred to by key \"Task_Act1:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Task_Act2",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Task_Act2",
+              "version": "0.0.1"
+            },
+            "UUID": "3d786b4c-d9ee-3367-ab71-c67271a4ea2f",
+            "description": "Generated description for concept referred to by key \"Task_Act2:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Task_Act3",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Task_Act3",
+              "version": "0.0.1"
+            },
+            "UUID": "9231753e-20c5-3436-982f-9100340cc570",
+            "description": "Generated description for concept referred to by key \"Task_Act3:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Task_Decide0",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Task_Decide0",
+              "version": "0.0.1"
+            },
+            "UUID": "502383d3-483f-3a56-a426-2f0406674c8d",
+            "description": "Generated description for concept referred to by key \"Task_Decide0:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Task_Decide1",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Task_Decide1",
+              "version": "0.0.1"
+            },
+            "UUID": "16598106-41c8-3b5a-99c6-5fcf6d1a5ddf",
+            "description": "Generated description for concept referred to by key \"Task_Decide1:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Task_Decide2",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Task_Decide2",
+              "version": "0.0.1"
+            },
+            "UUID": "ad3a89f5-e369-3c66-b22c-669f7b3653b8",
+            "description": "Generated description for concept referred to by key \"Task_Decide2:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Task_Decide3",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Task_Decide3",
+              "version": "0.0.1"
+            },
+            "UUID": "56815939-1164-3867-9ed1-0a27ff8aafb3",
+            "description": "Generated description for concept referred to by key \"Task_Decide3:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Task_Establish0",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Task_Establish0",
+              "version": "0.0.1"
+            },
+            "UUID": "0db0c566-ecd7-3e27-9865-4b82c893abdb",
+            "description": "Generated description for concept referred to by key \"Task_Establish0:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Task_Establish1",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Task_Establish1",
+              "version": "0.0.1"
+            },
+            "UUID": "6944a4c1-6201-317c-8d7e-eaa7f2ee0ea0",
+            "description": "Generated description for concept referred to by key \"Task_Establish1:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Task_Establish2",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Task_Establish2",
+              "version": "0.0.1"
+            },
+            "UUID": "0f766ea9-11cd-3e7d-a8c8-28c8dee6a85a",
+            "description": "Generated description for concept referred to by key \"Task_Establish2:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Task_Establish3",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Task_Establish3",
+              "version": "0.0.1"
+            },
+            "UUID": "c3237a38-cc6d-3418-b1e1-0dc8b4bdcc66",
+            "description": "Generated description for concept referred to by key \"Task_Establish3:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Task_Match0",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Task_Match0",
+              "version": "0.0.1"
+            },
+            "UUID": "051bcfd5-cf73-3c89-8ee7-ea6e005ec059",
+            "description": "Generated description for concept referred to by key \"Task_Match0:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Task_Match1",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Task_Match1",
+              "version": "0.0.1"
+            },
+            "UUID": "3754fe19-98f2-34a1-9f45-db31052208d8",
+            "description": "Generated description for concept referred to by key \"Task_Match1:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Task_Match2",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Task_Match2",
+              "version": "0.0.1"
+            },
+            "UUID": "8c200709-a180-3c8b-916f-275ff49ce194",
+            "description": "Generated description for concept referred to by key \"Task_Match2:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Task_Match3",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Task_Match3",
+              "version": "0.0.1"
+            },
+            "UUID": "a1a879c6-4510-33b0-bbd0-ad6256189a37",
+            "description": "Generated description for concept referred to by key \"Task_Match3:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Tasks",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Tasks",
+              "version": "0.0.1"
+            },
+            "UUID": "a7fab96b-ce1c-37ce-bbb2-556b6db524a5",
+            "description": "Generated description for concept referred to by key \"Tasks:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TestCase",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestCase",
+              "version": "0.0.1"
+            },
+            "UUID": "0a652886-c88d-3f8c-8994-ae9161e7c963",
+            "description": "Generated description for concept referred to by key \"TestCase:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TestContextItem000",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestContextItem000",
+              "version": "0.0.1"
+            },
+            "UUID": "8efba9fa-371e-33df-a7d6-88b0284e7fd0",
+            "description": "Generated description for concept referred to by key \"TestContextItem000:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TestContextItem001",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestContextItem001",
+              "version": "0.0.1"
+            },
+            "UUID": "3740077c-a2b3-356b-81dc-5ded2118a951",
+            "description": "Generated description for concept referred to by key \"TestContextItem001:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TestContextItem002",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestContextItem002",
+              "version": "0.0.1"
+            },
+            "UUID": "b5c7df95-9af5-322f-9ea8-eb440a2bf926",
+            "description": "Generated description for concept referred to by key \"TestContextItem002:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TestContextItem003",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestContextItem003",
+              "version": "0.0.1"
+            },
+            "UUID": "b36f0aa5-0fb9-3e2c-8fa2-fddb7fd05f4b",
+            "description": "Generated description for concept referred to by key \"TestContextItem003:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TestContextItem004",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestContextItem004",
+              "version": "0.0.1"
+            },
+            "UUID": "093cda11-eaeb-3a46-a5b6-d5e30c00935b",
+            "description": "Generated description for concept referred to by key \"TestContextItem004:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TestContextItem005",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestContextItem005",
+              "version": "0.0.1"
+            },
+            "UUID": "569a758d-ba40-37c0-aebb-7ad138df25ac",
+            "description": "Generated description for concept referred to by key \"TestContextItem005:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TestContextItem006",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestContextItem006",
+              "version": "0.0.1"
+            },
+            "UUID": "252818d9-b61f-3962-a905-8865fb00fb04",
+            "description": "Generated description for concept referred to by key \"TestContextItem006:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TestContextItem007",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestContextItem007",
+              "version": "0.0.1"
+            },
+            "UUID": "fe1a5f7c-c083-377b-a797-752b01fc6c73",
+            "description": "Generated description for concept referred to by key \"TestContextItem007:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TestContextItem008",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestContextItem008",
+              "version": "0.0.1"
+            },
+            "UUID": "aa87d007-d07e-3f67-8c6d-0ebc3d85479d",
+            "description": "Generated description for concept referred to by key \"TestContextItem008:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TestContextItem009",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestContextItem009",
+              "version": "0.0.1"
+            },
+            "UUID": "126e7a3a-11b6-3f88-9397-c21d8819f859",
+            "description": "Generated description for concept referred to by key \"TestContextItem009:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TestContextItem00A",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestContextItem00A",
+              "version": "0.0.1"
+            },
+            "UUID": "0e0e3dec-e03d-3379-a87b-1ecd4aa3d8cc",
+            "description": "Generated description for concept referred to by key \"TestContextItem00A:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TestContextItem00B",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestContextItem00B",
+              "version": "0.0.1"
+            },
+            "UUID": "dbdc98df-3ff4-360c-b8d3-a7a836ac3de6",
+            "description": "Generated description for concept referred to by key \"TestContextItem00B:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TestContextItem00C",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestContextItem00C",
+              "version": "0.0.1"
+            },
+            "UUID": "32a2f355-77f3-3b25-ace6-7a9c5763a5ad",
+            "description": "Generated description for concept referred to by key \"TestContextItem00C:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TestDatatypes",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestDatatypes",
+              "version": "0.0.1"
+            },
+            "UUID": "3f95472c-973e-30e2-95f1-bf00cbef909a",
+            "description": "Generated description for concept referred to by key \"TestDatatypes:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TestExternalContextItem",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestExternalContextItem",
+              "version": "0.0.1"
+            },
+            "UUID": "610dbbd4-9149-3b3c-9af4-819056f0e169",
+            "description": "Generated description for concept referred to by key \"TestExternalContextItem:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TestGlobalContextItem",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestGlobalContextItem",
+              "version": "0.0.1"
+            },
+            "UUID": "07fa8f68-55f1-3fd0-81c1-749a379753a7",
+            "description": "Generated description for concept referred to by key \"TestGlobalContextItem:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TestPolicyContextItem",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestPolicyContextItem",
+              "version": "0.0.1"
+            },
+            "UUID": "d9c93cd1-539e-35c5-aaec-bb711ceb1251",
+            "description": "Generated description for concept referred to by key \"TestPolicyContextItem:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TestSlogan",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestSlogan",
+              "version": "0.0.1"
+            },
+            "UUID": "683fe492-7eae-3ac7-9924-bb7850208d05",
+            "description": "Generated description for concept referred to by key \"TestSlogan:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TestTemperature",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestTemperature",
+              "version": "0.0.1"
+            },
+            "UUID": "bba25b6f-e3cd-3060-9022-4ef3a79f8eb0",
+            "description": "Generated description for concept referred to by key \"TestTemperature:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TestTimestamp",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestTimestamp",
+              "version": "0.0.1"
+            },
+            "UUID": "97b73937-c344-33c0-924c-4d26b6449564",
+            "description": "Generated description for concept referred to by key \"TestTimestamp:0.0.1\""
+          }
+        }
+      ]
+    }
+  },
+  "policies": {
+    "key": {
+      "name": "Policies",
+      "version": "0.0.1"
+    },
+    "policyMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "Policy0",
+            "version": "0.0.1"
+          },
+          "value": {
+            "policyKey": {
+              "name": "Policy0",
+              "version": "0.0.1"
+            },
+            "template": "MEDA",
+            "state": {
+              "entry": [
+                {
+                  "key": "Act",
+                  "value": {
+                    "stateKey": {
+                      "parentKeyName": "Policy0",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Act"
+                    },
+                    "trigger": {
+                      "name": "Event0003",
+                      "version": "0.0.1"
+                    },
+                    "stateOutputs": {
+                      "entry": [
+                        {
+                          "key": "Act_NULL",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Act",
+                              "localName": "Act_NULL"
+                            },
+                            "outgoingEvent": {
+                              "name": "Event0004",
+                              "version": "0.0.1"
+                            },
+                            "nextState": {
+                              "parentKeyName": "NULL",
+                              "parentKeyVersion": "0.0.0",
+                              "parentLocalName": "NULL",
+                              "localName": "NULL"
+                            }
+                          }
+                        }
+                      ]
+                    },
+                    "contextAlbumReference": [
+                      {
+                        "name": "GlobalContextAlbum",
+                        "version": "0.0.1"
+                      }
+                    ],
+                    "taskSelectionLogic": {
+                      "key": "TaskSelectionLigic",
+                      "logicFlavour": "JAVASCRIPT",
+                      "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.subject.defaultTaskKey.copyTo(executor.selectedTask)\n\nvar returnValue = executor.isTrue;"
+                    },
+                    "stateFinalizerLogicMap": {
+                      "entry": []
+                    },
+                    "defaultTask": {
+                      "name": "Task_Act1",
+                      "version": "0.0.1"
+                    },
+                    "taskReferences": {
+                      "entry": [
+                        {
+                          "key": {
+                            "name": "Task_Act0",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Act",
+                              "localName": "Task_Act0_DIRECT_Act_NULL"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Act",
+                              "localName": "Act_NULL"
+                            }
+                          }
+                        },
+                        {
+                          "key": {
+                            "name": "Task_Act1",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Act",
+                              "localName": "Task_Act1_DIRECT_Act_NULL"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Act",
+                              "localName": "Act_NULL"
+                            }
+                          }
+                        },
+                        {
+                          "key": {
+                            "name": "Task_Act2",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Act",
+                              "localName": "Task_Act2_DIRECT_Act_NULL"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Act",
+                              "localName": "Act_NULL"
+                            }
+                          }
+                        },
+                        {
+                          "key": {
+                            "name": "Task_Act3",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Act",
+                              "localName": "Task_Act3_DIRECT_Act_NULL"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Act",
+                              "localName": "Act_NULL"
+                            }
+                          }
+                        }
+                      ]
+                    }
+                  }
+                },
+                {
+                  "key": "Decide",
+                  "value": {
+                    "stateKey": {
+                      "parentKeyName": "Policy0",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Decide"
+                    },
+                    "trigger": {
+                      "name": "Event0002",
+                      "version": "0.0.1"
+                    },
+                    "stateOutputs": {
+                      "entry": [
+                        {
+                          "key": "Decide_Act",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Decide",
+                              "localName": "Decide_Act"
+                            },
+                            "outgoingEvent": {
+                              "name": "Event0003",
+                              "version": "0.0.1"
+                            },
+                            "nextState": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "Act"
+                            }
+                          }
+                        }
+                      ]
+                    },
+                    "contextAlbumReference": [
+                      {
+                        "name": "ExternalContextAlbum",
+                        "version": "0.0.1"
+                      },
+                      {
+                        "name": "GlobalContextAlbum",
+                        "version": "0.0.1"
+                      },
+                      {
+                        "name": "Policy0ContextAlbum",
+                        "version": "0.0.1"
+                      }
+                    ],
+                    "taskSelectionLogic": {
+                      "key": "TaskSelectionLigic",
+                      "logicFlavour": "JAVASCRIPT",
+                      "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.subject.defaultTaskKey.copyTo(executor.selectedTask)\n\nvar returnValue = executor.isTrue;"
+                    },
+                    "stateFinalizerLogicMap": {
+                      "entry": []
+                    },
+                    "defaultTask": {
+                      "name": "Task_Decide3",
+                      "version": "0.0.1"
+                    },
+                    "taskReferences": {
+                      "entry": [
+                        {
+                          "key": {
+                            "name": "Task_Decide0",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Decide",
+                              "localName": "Task_Decide0_DIRECT_Decide_Act"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Decide",
+                              "localName": "Decide_Act"
+                            }
+                          }
+                        },
+                        {
+                          "key": {
+                            "name": "Task_Decide1",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Decide",
+                              "localName": "Task_Decide1_DIRECT_Decide_Act"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Decide",
+                              "localName": "Decide_Act"
+                            }
+                          }
+                        },
+                        {
+                          "key": {
+                            "name": "Task_Decide2",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Decide",
+                              "localName": "Task_Decide2_DIRECT_Decide_Act"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Decide",
+                              "localName": "Decide_Act"
+                            }
+                          }
+                        },
+                        {
+                          "key": {
+                            "name": "Task_Decide3",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Decide",
+                              "localName": "Task_Decide3_DIRECT_Decide_Act"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Decide",
+                              "localName": "Decide_Act"
+                            }
+                          }
+                        }
+                      ]
+                    }
+                  }
+                },
+                {
+                  "key": "Establish",
+                  "value": {
+                    "stateKey": {
+                      "parentKeyName": "Policy0",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Establish"
+                    },
+                    "trigger": {
+                      "name": "Event0001",
+                      "version": "0.0.1"
+                    },
+                    "stateOutputs": {
+                      "entry": [
+                        {
+                          "key": "Establish_Decide",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Establish",
+                              "localName": "Establish_Decide"
+                            },
+                            "outgoingEvent": {
+                              "name": "Event0002",
+                              "version": "0.0.1"
+                            },
+                            "nextState": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "Decide"
+                            }
+                          }
+                        }
+                      ]
+                    },
+                    "contextAlbumReference": [
+                      {
+                        "name": "ExternalContextAlbum",
+                        "version": "0.0.1"
+                      },
+                      {
+                        "name": "GlobalContextAlbum",
+                        "version": "0.0.1"
+                      },
+                      {
+                        "name": "Policy1ContextAlbum",
+                        "version": "0.0.1"
+                      }
+                    ],
+                    "taskSelectionLogic": {
+                      "key": "TaskSelectionLigic",
+                      "logicFlavour": "JAVASCRIPT",
+                      "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.subject.defaultTaskKey.copyTo(executor.selectedTask)\n\nvar returnValue = executor.isTrue;"
+                    },
+                    "stateFinalizerLogicMap": {
+                      "entry": []
+                    },
+                    "defaultTask": {
+                      "name": "Task_Establish2",
+                      "version": "0.0.1"
+                    },
+                    "taskReferences": {
+                      "entry": [
+                        {
+                          "key": {
+                            "name": "Task_Establish0",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Establish",
+                              "localName": "Task_Establish0_DIRECT_Establish_Decide"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Establish",
+                              "localName": "Establish_Decide"
+                            }
+                          }
+                        },
+                        {
+                          "key": {
+                            "name": "Task_Establish1",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Establish",
+                              "localName": "Task_Establish1_DIRECT_Establish_Decide"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Establish",
+                              "localName": "Establish_Decide"
+                            }
+                          }
+                        },
+                        {
+                          "key": {
+                            "name": "Task_Establish2",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Establish",
+                              "localName": "Task_Establish2_DIRECT_Establish_Decide"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Establish",
+                              "localName": "Establish_Decide"
+                            }
+                          }
+                        },
+                        {
+                          "key": {
+                            "name": "Task_Establish3",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Establish",
+                              "localName": "Task_Establish3_DIRECT_Establish_Decide"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Establish",
+                              "localName": "Establish_Decide"
+                            }
+                          }
+                        }
+                      ]
+                    }
+                  }
+                },
+                {
+                  "key": "Match",
+                  "value": {
+                    "stateKey": {
+                      "parentKeyName": "Policy0",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Match"
+                    },
+                    "trigger": {
+                      "name": "Event0000",
+                      "version": "0.0.1"
+                    },
+                    "stateOutputs": {
+                      "entry": [
+                        {
+                          "key": "Match_Establish",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Match",
+                              "localName": "Match_Establish"
+                            },
+                            "outgoingEvent": {
+                              "name": "Event0001",
+                              "version": "0.0.1"
+                            },
+                            "nextState": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "Establish"
+                            }
+                          }
+                        }
+                      ]
+                    },
+                    "contextAlbumReference": [
+                      {
+                        "name": "GlobalContextAlbum",
+                        "version": "0.0.1"
+                      },
+                      {
+                        "name": "Policy0ContextAlbum",
+                        "version": "0.0.1"
+                      }
+                    ],
+                    "taskSelectionLogic": {
+                      "key": "TaskSelectionLigic",
+                      "logicFlavour": "JAVASCRIPT",
+                      "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.subject.defaultTaskKey.copyTo(executor.selectedTask)\n\nvar returnValue = executor.isTrue;"
+                    },
+                    "stateFinalizerLogicMap": {
+                      "entry": []
+                    },
+                    "defaultTask": {
+                      "name": "Task_Match0",
+                      "version": "0.0.1"
+                    },
+                    "taskReferences": {
+                      "entry": [
+                        {
+                          "key": {
+                            "name": "Task_Match0",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Match",
+                              "localName": "Task_Match0_DIRECT_Match_Establish"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Match",
+                              "localName": "Match_Establish"
+                            }
+                          }
+                        },
+                        {
+                          "key": {
+                            "name": "Task_Match1",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Match",
+                              "localName": "Task_Match1_DIRECT_Match_Establish"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Match",
+                              "localName": "Match_Establish"
+                            }
+                          }
+                        },
+                        {
+                          "key": {
+                            "name": "Task_Match2",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Match",
+                              "localName": "Task_Match2_DIRECT_Match_Establish"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Match",
+                              "localName": "Match_Establish"
+                            }
+                          }
+                        },
+                        {
+                          "key": {
+                            "name": "Task_Match3",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Match",
+                              "localName": "Task_Match3_DIRECT_Match_Establish"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "Policy0",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Match",
+                              "localName": "Match_Establish"
+                            }
+                          }
+                        }
+                      ]
+                    }
+                  }
+                }
+              ]
+            },
+            "firstState": "Match"
+          }
+        },
+        {
+          "key": {
+            "name": "Policy1",
+            "version": "0.0.1"
+          },
+          "value": {
+            "policyKey": {
+              "name": "Policy1",
+              "version": "0.0.1"
+            },
+            "template": "MEDA",
+            "state": {
+              "entry": [
+                {
+                  "key": "Act",
+                  "value": {
+                    "stateKey": {
+                      "parentKeyName": "Policy1",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Act"
+                    },
+                    "trigger": {
+                      "name": "Event0103",
+                      "version": "0.0.1"
+                    },
+                    "stateOutputs": {
+                      "entry": [
+                        {
+                          "key": "Act_NULL",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Act",
+                              "localName": "Act_NULL"
+                            },
+                            "outgoingEvent": {
+                              "name": "Event0104",
+                              "version": "0.0.1"
+                            },
+                            "nextState": {
+                              "parentKeyName": "NULL",
+                              "parentKeyVersion": "0.0.0",
+                              "parentLocalName": "NULL",
+                              "localName": "NULL"
+                            }
+                          }
+                        }
+                      ]
+                    },
+                    "contextAlbumReference": [
+                      {
+                        "name": "GlobalContextAlbum",
+                        "version": "0.0.1"
+                      }
+                    ],
+                    "taskSelectionLogic": {
+                      "key": "TaskSelectionLigic",
+                      "logicFlavour": "JAVASCRIPT",
+                      "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.subject.defaultTaskKey.copyTo(executor.selectedTask)\n\nvar returnValue = executor.isTrue;"
+                    },
+                    "stateFinalizerLogicMap": {
+                      "entry": []
+                    },
+                    "defaultTask": {
+                      "name": "Task_Act0",
+                      "version": "0.0.1"
+                    },
+                    "taskReferences": {
+                      "entry": [
+                        {
+                          "key": {
+                            "name": "Task_Act0",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Act",
+                              "localName": "Task_Act0_DIRECT_Act_NULL"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Act",
+                              "localName": "Act_NULL"
+                            }
+                          }
+                        },
+                        {
+                          "key": {
+                            "name": "Task_Act1",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Act",
+                              "localName": "Task_Act1_DIRECT_Act_NULL"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Act",
+                              "localName": "Act_NULL"
+                            }
+                          }
+                        },
+                        {
+                          "key": {
+                            "name": "Task_Act2",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Act",
+                              "localName": "Task_Act2_DIRECT_Act_NULL"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Act",
+                              "localName": "Act_NULL"
+                            }
+                          }
+                        },
+                        {
+                          "key": {
+                            "name": "Task_Act3",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Act",
+                              "localName": "Task_Act3_DIRECT_Act_NULL"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Act",
+                              "localName": "Act_NULL"
+                            }
+                          }
+                        }
+                      ]
+                    }
+                  }
+                },
+                {
+                  "key": "Decide",
+                  "value": {
+                    "stateKey": {
+                      "parentKeyName": "Policy1",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Decide"
+                    },
+                    "trigger": {
+                      "name": "Event0102",
+                      "version": "0.0.1"
+                    },
+                    "stateOutputs": {
+                      "entry": [
+                        {
+                          "key": "Decide_Act",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Decide",
+                              "localName": "Decide_Act"
+                            },
+                            "outgoingEvent": {
+                              "name": "Event0103",
+                              "version": "0.0.1"
+                            },
+                            "nextState": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "Act"
+                            }
+                          }
+                        }
+                      ]
+                    },
+                    "contextAlbumReference": [
+                      {
+                        "name": "ExternalContextAlbum",
+                        "version": "0.0.1"
+                      },
+                      {
+                        "name": "GlobalContextAlbum",
+                        "version": "0.0.1"
+                      },
+                      {
+                        "name": "Policy1ContextAlbum",
+                        "version": "0.0.1"
+                      }
+                    ],
+                    "taskSelectionLogic": {
+                      "key": "TaskSelectionLigic",
+                      "logicFlavour": "JAVASCRIPT",
+                      "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.subject.defaultTaskKey.copyTo(executor.selectedTask)\n\nvar returnValue = executor.isTrue;"
+                    },
+                    "stateFinalizerLogicMap": {
+                      "entry": []
+                    },
+                    "defaultTask": {
+                      "name": "Task_Decide3",
+                      "version": "0.0.1"
+                    },
+                    "taskReferences": {
+                      "entry": [
+                        {
+                          "key": {
+                            "name": "Task_Decide0",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Decide",
+                              "localName": "Task_Decide0_DIRECT_Decide_Act"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Decide",
+                              "localName": "Decide_Act"
+                            }
+                          }
+                        },
+                        {
+                          "key": {
+                            "name": "Task_Decide1",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Decide",
+                              "localName": "Task_Decide1_DIRECT_Decide_Act"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Decide",
+                              "localName": "Decide_Act"
+                            }
+                          }
+                        },
+                        {
+                          "key": {
+                            "name": "Task_Decide2",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Decide",
+                              "localName": "Task_Decide2_DIRECT_Decide_Act"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Decide",
+                              "localName": "Decide_Act"
+                            }
+                          }
+                        },
+                        {
+                          "key": {
+                            "name": "Task_Decide3",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Decide",
+                              "localName": "Task_Decide3_DIRECT_Decide_Act"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Decide",
+                              "localName": "Decide_Act"
+                            }
+                          }
+                        }
+                      ]
+                    }
+                  }
+                },
+                {
+                  "key": "Establish",
+                  "value": {
+                    "stateKey": {
+                      "parentKeyName": "Policy1",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Establish"
+                    },
+                    "trigger": {
+                      "name": "Event0101",
+                      "version": "0.0.1"
+                    },
+                    "stateOutputs": {
+                      "entry": [
+                        {
+                          "key": "Establish_Decide",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Establish",
+                              "localName": "Establish_Decide"
+                            },
+                            "outgoingEvent": {
+                              "name": "Event0102",
+                              "version": "0.0.1"
+                            },
+                            "nextState": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "Decide"
+                            }
+                          }
+                        }
+                      ]
+                    },
+                    "contextAlbumReference": [
+                      {
+                        "name": "ExternalContextAlbum",
+                        "version": "0.0.1"
+                      },
+                      {
+                        "name": "GlobalContextAlbum",
+                        "version": "0.0.1"
+                      },
+                      {
+                        "name": "Policy1ContextAlbum",
+                        "version": "0.0.1"
+                      }
+                    ],
+                    "taskSelectionLogic": {
+                      "key": "TaskSelectionLigic",
+                      "logicFlavour": "JAVASCRIPT",
+                      "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.subject.defaultTaskKey.copyTo(executor.selectedTask)\n\nvar returnValue = executor.isTrue;"
+                    },
+                    "stateFinalizerLogicMap": {
+                      "entry": []
+                    },
+                    "defaultTask": {
+                      "name": "Task_Establish1",
+                      "version": "0.0.1"
+                    },
+                    "taskReferences": {
+                      "entry": [
+                        {
+                          "key": {
+                            "name": "Task_Establish0",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Establish",
+                              "localName": "Task_Establish0_DIRECT_Establish_Decide"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Establish",
+                              "localName": "Establish_Decide"
+                            }
+                          }
+                        },
+                        {
+                          "key": {
+                            "name": "Task_Establish1",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Establish",
+                              "localName": "Task_Establish1_DIRECT_Establish_Decide"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Establish",
+                              "localName": "Establish_Decide"
+                            }
+                          }
+                        },
+                        {
+                          "key": {
+                            "name": "Task_Establish2",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Establish",
+                              "localName": "Task_Establish2_DIRECT_Establish_Decide"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Establish",
+                              "localName": "Establish_Decide"
+                            }
+                          }
+                        },
+                        {
+                          "key": {
+                            "name": "Task_Establish3",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Establish",
+                              "localName": "Task_Establish3_DIRECT_Establish_Decide"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Establish",
+                              "localName": "Establish_Decide"
+                            }
+                          }
+                        }
+                      ]
+                    }
+                  }
+                },
+                {
+                  "key": "Match",
+                  "value": {
+                    "stateKey": {
+                      "parentKeyName": "Policy1",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Match"
+                    },
+                    "trigger": {
+                      "name": "Event0100",
+                      "version": "0.0.1"
+                    },
+                    "stateOutputs": {
+                      "entry": [
+                        {
+                          "key": "Match_Establish",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Match",
+                              "localName": "Match_Establish"
+                            },
+                            "outgoingEvent": {
+                              "name": "Event0101",
+                              "version": "0.0.1"
+                            },
+                            "nextState": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "Establish"
+                            }
+                          }
+                        }
+                      ]
+                    },
+                    "contextAlbumReference": [
+                      {
+                        "name": "ExternalContextAlbum",
+                        "version": "0.0.1"
+                      },
+                      {
+                        "name": "GlobalContextAlbum",
+                        "version": "0.0.1"
+                      },
+                      {
+                        "name": "Policy1ContextAlbum",
+                        "version": "0.0.1"
+                      }
+                    ],
+                    "taskSelectionLogic": {
+                      "key": "TaskSelectionLigic",
+                      "logicFlavour": "JAVASCRIPT",
+                      "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.subject.defaultTaskKey.copyTo(executor.selectedTask)\n\nvar returnValue = executor.isTrue;"
+                    },
+                    "stateFinalizerLogicMap": {
+                      "entry": []
+                    },
+                    "defaultTask": {
+                      "name": "Task_Match3",
+                      "version": "0.0.1"
+                    },
+                    "taskReferences": {
+                      "entry": [
+                        {
+                          "key": {
+                            "name": "Task_Match0",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Match",
+                              "localName": "Task_Match0_DIRECT_Match_Establish"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Match",
+                              "localName": "Match_Establish"
+                            }
+                          }
+                        },
+                        {
+                          "key": {
+                            "name": "Task_Match1",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Match",
+                              "localName": "Task_Match1_DIRECT_Match_Establish"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Match",
+                              "localName": "Match_Establish"
+                            }
+                          }
+                        },
+                        {
+                          "key": {
+                            "name": "Task_Match2",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Match",
+                              "localName": "Task_Match2_DIRECT_Match_Establish"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Match",
+                              "localName": "Match_Establish"
+                            }
+                          }
+                        },
+                        {
+                          "key": {
+                            "name": "Task_Match3",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Match",
+                              "localName": "Task_Match3_DIRECT_Match_Establish"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "Policy1",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Match",
+                              "localName": "Match_Establish"
+                            }
+                          }
+                        }
+                      ]
+                    }
+                  }
+                }
+              ]
+            },
+            "firstState": "Match"
+          }
+        }
+      ]
+    }
+  },
+  "tasks": {
+    "key": {
+      "name": "Tasks",
+      "version": "0.0.1"
+    },
+    "taskMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "Task_Act0",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Task_Act0",
+              "version": "0.0.1"
+            },
+            "inputFields": {
+              "entry": [
+                {
+                  "key": "TestDecideCaseSelected",
+                  "value": {
+                    "key": "TestDecideCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestDecideStateTime",
+                  "value": {
+                    "key": "TestDecideStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishCaseSelected",
+                  "value": {
+                    "key": "TestEstablishCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishStateTime",
+                  "value": {
+                    "key": "TestEstablishStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCaseSelected",
+                  "value": {
+                    "key": "TestMatchCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchStateTime",
+                  "value": {
+                    "key": "TestMatchStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "outputFields": {
+              "entry": [
+                {
+                  "key": "TestActCaseSelected",
+                  "value": {
+                    "key": "TestActCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestActStateTime",
+                  "value": {
+                    "key": "TestActStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestDecideCaseSelected",
+                  "value": {
+                    "key": "TestDecideCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestDecideStateTime",
+                  "value": {
+                    "key": "TestDecideStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishCaseSelected",
+                  "value": {
+                    "key": "TestEstablishCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishStateTime",
+                  "value": {
+                    "key": "TestEstablishStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCaseSelected",
+                  "value": {
+                    "key": "TestMatchCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchStateTime",
+                  "value": {
+                    "key": "TestMatchStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": [
+                {
+                  "key": "Parameter0",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "Task_Act0",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Parameter0"
+                    },
+                    "defaultValue": "DefaultValue0"
+                  }
+                },
+                {
+                  "key": "Parameter1",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "Task_Act0",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Parameter1"
+                    },
+                    "defaultValue": "DefaultValue1"
+                  }
+                },
+                {
+                  "key": "Parameter2",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "Task_Act0",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Parameter2"
+                    },
+                    "defaultValue": "DefaultValue2"
+                  }
+                }
+              ]
+            },
+            "contextAlbumReference": [
+              {
+                "name": "ExternalContextAlbum",
+                "version": "0.0.1"
+              },
+              {
+                "name": "GlobalContextAlbum",
+                "version": "0.0.1"
+              },
+              {
+                "name": "Policy0ContextAlbum",
+                "version": "0.0.1"
+              },
+              {
+                "name": "Policy1ContextAlbum",
+                "version": "0.0.1"
+              }
+            ],
+            "taskLogic": {
+              "key": "_TaskLogic",
+              "logicFlavour": "JAVASCRIPT",
+              "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nvar caseSelectedType = Java.type(\"java.lang.Byte\");\nexecutor.outFields.put(\"TestActCaseSelected\", new caseSelectedType(2));\n\nvar JavaDate = Java.type(\"java.util.Date\");\ntimeNow = new JavaDate();\nexecutor.outFields.put(\"TestActStateTime\", timeNow.getTime());\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "Task_Act1",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Task_Act1",
+              "version": "0.0.1"
+            },
+            "inputFields": {
+              "entry": [
+                {
+                  "key": "TestDecideCaseSelected",
+                  "value": {
+                    "key": "TestDecideCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestDecideStateTime",
+                  "value": {
+                    "key": "TestDecideStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishCaseSelected",
+                  "value": {
+                    "key": "TestEstablishCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishStateTime",
+                  "value": {
+                    "key": "TestEstablishStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCaseSelected",
+                  "value": {
+                    "key": "TestMatchCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchStateTime",
+                  "value": {
+                    "key": "TestMatchStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "outputFields": {
+              "entry": [
+                {
+                  "key": "TestActCaseSelected",
+                  "value": {
+                    "key": "TestActCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestActStateTime",
+                  "value": {
+                    "key": "TestActStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestDecideCaseSelected",
+                  "value": {
+                    "key": "TestDecideCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestDecideStateTime",
+                  "value": {
+                    "key": "TestDecideStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishCaseSelected",
+                  "value": {
+                    "key": "TestEstablishCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishStateTime",
+                  "value": {
+                    "key": "TestEstablishStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCaseSelected",
+                  "value": {
+                    "key": "TestMatchCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchStateTime",
+                  "value": {
+                    "key": "TestMatchStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": [
+                {
+                  "key": "Parameter0",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "Task_Act1",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Parameter0"
+                    },
+                    "defaultValue": "DefaultValue0"
+                  }
+                },
+                {
+                  "key": "Parameter1",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "Task_Act1",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Parameter1"
+                    },
+                    "defaultValue": "DefaultValue1"
+                  }
+                }
+              ]
+            },
+            "contextAlbumReference": [
+              {
+                "name": "GlobalContextAlbum",
+                "version": "0.0.1"
+              },
+              {
+                "name": "Policy0ContextAlbum",
+                "version": "0.0.1"
+              }
+            ],
+            "taskLogic": {
+              "key": "_TaskLogic",
+              "logicFlavour": "JAVASCRIPT",
+              "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nvar caseSelectedType = Java.type(\"java.lang.Byte\");\nexecutor.outFields.put(\"TestActCaseSelected\", new caseSelectedType(3));\n\nvar JavaDate = Java.type(\"java.util.Date\");\ntimeNow = new JavaDate();\nexecutor.outFields.put(\"TestActStateTime\", timeNow.getTime());\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "Task_Act2",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Task_Act2",
+              "version": "0.0.1"
+            },
+            "inputFields": {
+              "entry": [
+                {
+                  "key": "TestDecideCaseSelected",
+                  "value": {
+                    "key": "TestDecideCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestDecideStateTime",
+                  "value": {
+                    "key": "TestDecideStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishCaseSelected",
+                  "value": {
+                    "key": "TestEstablishCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishStateTime",
+                  "value": {
+                    "key": "TestEstablishStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCaseSelected",
+                  "value": {
+                    "key": "TestMatchCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchStateTime",
+                  "value": {
+                    "key": "TestMatchStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "outputFields": {
+              "entry": [
+                {
+                  "key": "TestActCaseSelected",
+                  "value": {
+                    "key": "TestActCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestActStateTime",
+                  "value": {
+                    "key": "TestActStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestDecideCaseSelected",
+                  "value": {
+                    "key": "TestDecideCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestDecideStateTime",
+                  "value": {
+                    "key": "TestDecideStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishCaseSelected",
+                  "value": {
+                    "key": "TestEstablishCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishStateTime",
+                  "value": {
+                    "key": "TestEstablishStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCaseSelected",
+                  "value": {
+                    "key": "TestMatchCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchStateTime",
+                  "value": {
+                    "key": "TestMatchStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": [
+                {
+                  "key": "Parameter0",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "Task_Act2",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Parameter0"
+                    },
+                    "defaultValue": "DefaultValue0"
+                  }
+                }
+              ]
+            },
+            "contextAlbumReference": [
+              {
+                "name": "GlobalContextAlbum",
+                "version": "0.0.1"
+              },
+              {
+                "name": "Policy1ContextAlbum",
+                "version": "0.0.1"
+              }
+            ],
+            "taskLogic": {
+              "key": "_TaskLogic",
+              "logicFlavour": "JAVASCRIPT",
+              "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nvar caseSelectedType = Java.type(\"java.lang.Byte\");\nexecutor.outFields.put(\"TestActCaseSelected\", new caseSelectedType(0));\n\nvar JavaDate = Java.type(\"java.util.Date\");\ntimeNow = new JavaDate();\nexecutor.outFields.put(\"TestActStateTime\", timeNow.getTime());\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "Task_Act3",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Task_Act3",
+              "version": "0.0.1"
+            },
+            "inputFields": {
+              "entry": [
+                {
+                  "key": "TestDecideCaseSelected",
+                  "value": {
+                    "key": "TestDecideCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestDecideStateTime",
+                  "value": {
+                    "key": "TestDecideStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishCaseSelected",
+                  "value": {
+                    "key": "TestEstablishCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishStateTime",
+                  "value": {
+                    "key": "TestEstablishStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCaseSelected",
+                  "value": {
+                    "key": "TestMatchCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchStateTime",
+                  "value": {
+                    "key": "TestMatchStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "outputFields": {
+              "entry": [
+                {
+                  "key": "TestActCaseSelected",
+                  "value": {
+                    "key": "TestActCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestActStateTime",
+                  "value": {
+                    "key": "TestActStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestDecideCaseSelected",
+                  "value": {
+                    "key": "TestDecideCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestDecideStateTime",
+                  "value": {
+                    "key": "TestDecideStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishCaseSelected",
+                  "value": {
+                    "key": "TestEstablishCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishStateTime",
+                  "value": {
+                    "key": "TestEstablishStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCaseSelected",
+                  "value": {
+                    "key": "TestMatchCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchStateTime",
+                  "value": {
+                    "key": "TestMatchStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": [
+                {
+                  "key": "Parameter0",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "Task_Act3",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Parameter0"
+                    },
+                    "defaultValue": "DefaultValue0"
+                  }
+                }
+              ]
+            },
+            "contextAlbumReference": [
+              {
+                "name": "ExternalContextAlbum",
+                "version": "0.0.1"
+              },
+              {
+                "name": "GlobalContextAlbum",
+                "version": "0.0.1"
+              }
+            ],
+            "taskLogic": {
+              "key": "_TaskLogic",
+              "logicFlavour": "JAVASCRIPT",
+              "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nvar caseSelectedType = Java.type(\"java.lang.Byte\");\nexecutor.outFields.put(\"TestActCaseSelected\", new caseSelectedType(1));\n\nvar JavaDate = Java.type(\"java.util.Date\");\ntimeNow = new JavaDate();\nexecutor.outFields.put(\"TestActStateTime\", timeNow.getTime());\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "Task_Decide0",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Task_Decide0",
+              "version": "0.0.1"
+            },
+            "inputFields": {
+              "entry": [
+                {
+                  "key": "TestEstablishCaseSelected",
+                  "value": {
+                    "key": "TestEstablishCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishStateTime",
+                  "value": {
+                    "key": "TestEstablishStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCaseSelected",
+                  "value": {
+                    "key": "TestMatchCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchStateTime",
+                  "value": {
+                    "key": "TestMatchStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "outputFields": {
+              "entry": [
+                {
+                  "key": "TestDecideCaseSelected",
+                  "value": {
+                    "key": "TestDecideCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestDecideStateTime",
+                  "value": {
+                    "key": "TestDecideStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishCaseSelected",
+                  "value": {
+                    "key": "TestEstablishCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishStateTime",
+                  "value": {
+                    "key": "TestEstablishStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCaseSelected",
+                  "value": {
+                    "key": "TestMatchCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchStateTime",
+                  "value": {
+                    "key": "TestMatchStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": [
+                {
+                  "key": "Parameter0",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "Task_Decide0",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Parameter0"
+                    },
+                    "defaultValue": "DefaultValue0"
+                  }
+                },
+                {
+                  "key": "Parameter1",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "Task_Decide0",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Parameter1"
+                    },
+                    "defaultValue": "DefaultValue1"
+                  }
+                },
+                {
+                  "key": "Parameter2",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "Task_Decide0",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Parameter2"
+                    },
+                    "defaultValue": "DefaultValue2"
+                  }
+                }
+              ]
+            },
+            "contextAlbumReference": [
+              {
+                "name": "ExternalContextAlbum",
+                "version": "0.0.1"
+              },
+              {
+                "name": "GlobalContextAlbum",
+                "version": "0.0.1"
+              },
+              {
+                "name": "Policy0ContextAlbum",
+                "version": "0.0.1"
+              },
+              {
+                "name": "Policy1ContextAlbum",
+                "version": "0.0.1"
+              }
+            ],
+            "taskLogic": {
+              "key": "_TaskLogic",
+              "logicFlavour": "JAVASCRIPT",
+              "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nvar caseSelectedType = Java.type(\"java.lang.Byte\");\nexecutor.outFields.put(\"TestDecideCaseSelected\", new caseSelectedType(2));\n\nvar JavaDate = Java.type(\"java.util.Date\");\ntimeNow = new JavaDate();\nexecutor.outFields.put(\"TestDecideStateTime\", timeNow.getTime());\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "Task_Decide1",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Task_Decide1",
+              "version": "0.0.1"
+            },
+            "inputFields": {
+              "entry": [
+                {
+                  "key": "TestEstablishCaseSelected",
+                  "value": {
+                    "key": "TestEstablishCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishStateTime",
+                  "value": {
+                    "key": "TestEstablishStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCaseSelected",
+                  "value": {
+                    "key": "TestMatchCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchStateTime",
+                  "value": {
+                    "key": "TestMatchStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "outputFields": {
+              "entry": [
+                {
+                  "key": "TestDecideCaseSelected",
+                  "value": {
+                    "key": "TestDecideCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestDecideStateTime",
+                  "value": {
+                    "key": "TestDecideStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishCaseSelected",
+                  "value": {
+                    "key": "TestEstablishCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishStateTime",
+                  "value": {
+                    "key": "TestEstablishStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCaseSelected",
+                  "value": {
+                    "key": "TestMatchCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchStateTime",
+                  "value": {
+                    "key": "TestMatchStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": [
+                {
+                  "key": "Parameter0",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "Task_Decide1",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Parameter0"
+                    },
+                    "defaultValue": "DefaultValue0"
+                  }
+                },
+                {
+                  "key": "Parameter1",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "Task_Decide1",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Parameter1"
+                    },
+                    "defaultValue": "DefaultValue1"
+                  }
+                }
+              ]
+            },
+            "contextAlbumReference": [
+              {
+                "name": "GlobalContextAlbum",
+                "version": "0.0.1"
+              },
+              {
+                "name": "Policy0ContextAlbum",
+                "version": "0.0.1"
+              }
+            ],
+            "taskLogic": {
+              "key": "_TaskLogic",
+              "logicFlavour": "JAVASCRIPT",
+              "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nvar caseSelectedType = Java.type(\"java.lang.Byte\");\nexecutor.outFields.put(\"TestDecideCaseSelected\", new caseSelectedType(3));\n\nvar JavaDate = Java.type(\"java.util.Date\");\ntimeNow = new JavaDate();\nexecutor.outFields.put(\"TestDecideStateTime\", timeNow.getTime());\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "Task_Decide2",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Task_Decide2",
+              "version": "0.0.1"
+            },
+            "inputFields": {
+              "entry": [
+                {
+                  "key": "TestEstablishCaseSelected",
+                  "value": {
+                    "key": "TestEstablishCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishStateTime",
+                  "value": {
+                    "key": "TestEstablishStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCaseSelected",
+                  "value": {
+                    "key": "TestMatchCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchStateTime",
+                  "value": {
+                    "key": "TestMatchStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "outputFields": {
+              "entry": [
+                {
+                  "key": "TestDecideCaseSelected",
+                  "value": {
+                    "key": "TestDecideCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestDecideStateTime",
+                  "value": {
+                    "key": "TestDecideStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishCaseSelected",
+                  "value": {
+                    "key": "TestEstablishCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishStateTime",
+                  "value": {
+                    "key": "TestEstablishStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCaseSelected",
+                  "value": {
+                    "key": "TestMatchCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchStateTime",
+                  "value": {
+                    "key": "TestMatchStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": [
+                {
+                  "key": "Parameter0",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "Task_Decide2",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Parameter0"
+                    },
+                    "defaultValue": "DefaultValue0"
+                  }
+                }
+              ]
+            },
+            "contextAlbumReference": [
+              {
+                "name": "GlobalContextAlbum",
+                "version": "0.0.1"
+              },
+              {
+                "name": "Policy1ContextAlbum",
+                "version": "0.0.1"
+              }
+            ],
+            "taskLogic": {
+              "key": "_TaskLogic",
+              "logicFlavour": "JAVASCRIPT",
+              "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nvar caseSelectedType = Java.type(\"java.lang.Byte\");\nexecutor.outFields.put(\"TestDecideCaseSelected\", new caseSelectedType(0));\n\nvar JavaDate = Java.type(\"java.util.Date\");\ntimeNow = new JavaDate();\nexecutor.outFields.put(\"TestDecideStateTime\", timeNow.getTime());\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "Task_Decide3",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Task_Decide3",
+              "version": "0.0.1"
+            },
+            "inputFields": {
+              "entry": [
+                {
+                  "key": "TestEstablishCaseSelected",
+                  "value": {
+                    "key": "TestEstablishCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishStateTime",
+                  "value": {
+                    "key": "TestEstablishStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCaseSelected",
+                  "value": {
+                    "key": "TestMatchCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchStateTime",
+                  "value": {
+                    "key": "TestMatchStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "outputFields": {
+              "entry": [
+                {
+                  "key": "TestDecideCaseSelected",
+                  "value": {
+                    "key": "TestDecideCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestDecideStateTime",
+                  "value": {
+                    "key": "TestDecideStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishCaseSelected",
+                  "value": {
+                    "key": "TestEstablishCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishStateTime",
+                  "value": {
+                    "key": "TestEstablishStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCaseSelected",
+                  "value": {
+                    "key": "TestMatchCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchStateTime",
+                  "value": {
+                    "key": "TestMatchStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": [
+                {
+                  "key": "Parameter0",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "Task_Decide3",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Parameter0"
+                    },
+                    "defaultValue": "DefaultValue0"
+                  }
+                }
+              ]
+            },
+            "contextAlbumReference": [
+              {
+                "name": "ExternalContextAlbum",
+                "version": "0.0.1"
+              },
+              {
+                "name": "GlobalContextAlbum",
+                "version": "0.0.1"
+              }
+            ],
+            "taskLogic": {
+              "key": "_TaskLogic",
+              "logicFlavour": "JAVASCRIPT",
+              "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nvar caseSelectedType = Java.type(\"java.lang.Byte\");\nexecutor.outFields.put(\"TestDecideCaseSelected\", new caseSelectedType(1));\n\nvar JavaDate = Java.type(\"java.util.Date\");\ntimeNow = new JavaDate();\nexecutor.outFields.put(\"TestDecideStateTime\", timeNow.getTime());\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "Task_Establish0",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Task_Establish0",
+              "version": "0.0.1"
+            },
+            "inputFields": {
+              "entry": [
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCaseSelected",
+                  "value": {
+                    "key": "TestMatchCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchStateTime",
+                  "value": {
+                    "key": "TestMatchStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "outputFields": {
+              "entry": [
+                {
+                  "key": "TestEstablishCaseSelected",
+                  "value": {
+                    "key": "TestEstablishCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishStateTime",
+                  "value": {
+                    "key": "TestEstablishStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCaseSelected",
+                  "value": {
+                    "key": "TestMatchCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchStateTime",
+                  "value": {
+                    "key": "TestMatchStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": [
+                {
+                  "key": "Parameter0",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "Task_Establish0",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Parameter0"
+                    },
+                    "defaultValue": "DefaultValue0"
+                  }
+                },
+                {
+                  "key": "Parameter1",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "Task_Establish0",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Parameter1"
+                    },
+                    "defaultValue": "DefaultValue1"
+                  }
+                },
+                {
+                  "key": "Parameter2",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "Task_Establish0",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Parameter2"
+                    },
+                    "defaultValue": "DefaultValue2"
+                  }
+                }
+              ]
+            },
+            "contextAlbumReference": [
+              {
+                "name": "ExternalContextAlbum",
+                "version": "0.0.1"
+              },
+              {
+                "name": "GlobalContextAlbum",
+                "version": "0.0.1"
+              },
+              {
+                "name": "Policy0ContextAlbum",
+                "version": "0.0.1"
+              },
+              {
+                "name": "Policy1ContextAlbum",
+                "version": "0.0.1"
+              }
+            ],
+            "taskLogic": {
+              "key": "_TaskLogic",
+              "logicFlavour": "JAVASCRIPT",
+              "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nvar caseSelectedType = Java.type(\"java.lang.Byte\");\nexecutor.outFields.put(\"TestEstablishCaseSelected\", new caseSelectedType(2));\n\nvar JavaDate = Java.type(\"java.util.Date\");\ntimeNow = new JavaDate();\nexecutor.outFields.put(\"TestEstablishStateTime\", timeNow.getTime());\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "Task_Establish1",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Task_Establish1",
+              "version": "0.0.1"
+            },
+            "inputFields": {
+              "entry": [
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCaseSelected",
+                  "value": {
+                    "key": "TestMatchCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchStateTime",
+                  "value": {
+                    "key": "TestMatchStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "outputFields": {
+              "entry": [
+                {
+                  "key": "TestEstablishCaseSelected",
+                  "value": {
+                    "key": "TestEstablishCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishStateTime",
+                  "value": {
+                    "key": "TestEstablishStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCaseSelected",
+                  "value": {
+                    "key": "TestMatchCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchStateTime",
+                  "value": {
+                    "key": "TestMatchStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": [
+                {
+                  "key": "Parameter0",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "Task_Establish1",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Parameter0"
+                    },
+                    "defaultValue": "DefaultValue0"
+                  }
+                },
+                {
+                  "key": "Parameter1",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "Task_Establish1",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Parameter1"
+                    },
+                    "defaultValue": "DefaultValue1"
+                  }
+                }
+              ]
+            },
+            "contextAlbumReference": [
+              {
+                "name": "GlobalContextAlbum",
+                "version": "0.0.1"
+              },
+              {
+                "name": "Policy0ContextAlbum",
+                "version": "0.0.1"
+              }
+            ],
+            "taskLogic": {
+              "key": "_TaskLogic",
+              "logicFlavour": "JAVASCRIPT",
+              "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nvar caseSelectedType = Java.type(\"java.lang.Byte\");\nexecutor.outFields.put(\"TestEstablishCaseSelected\", new caseSelectedType(3));\n\nvar JavaDate = Java.type(\"java.util.Date\");\ntimeNow = new JavaDate();\nexecutor.outFields.put(\"TestEstablishStateTime\", timeNow.getTime());\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "Task_Establish2",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Task_Establish2",
+              "version": "0.0.1"
+            },
+            "inputFields": {
+              "entry": [
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCaseSelected",
+                  "value": {
+                    "key": "TestMatchCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchStateTime",
+                  "value": {
+                    "key": "TestMatchStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "outputFields": {
+              "entry": [
+                {
+                  "key": "TestEstablishCaseSelected",
+                  "value": {
+                    "key": "TestEstablishCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishStateTime",
+                  "value": {
+                    "key": "TestEstablishStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCaseSelected",
+                  "value": {
+                    "key": "TestMatchCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchStateTime",
+                  "value": {
+                    "key": "TestMatchStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": [
+                {
+                  "key": "Parameter0",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "Task_Establish2",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Parameter0"
+                    },
+                    "defaultValue": "DefaultValue0"
+                  }
+                }
+              ]
+            },
+            "contextAlbumReference": [
+              {
+                "name": "GlobalContextAlbum",
+                "version": "0.0.1"
+              },
+              {
+                "name": "Policy1ContextAlbum",
+                "version": "0.0.1"
+              }
+            ],
+            "taskLogic": {
+              "key": "_TaskLogic",
+              "logicFlavour": "JAVASCRIPT",
+              "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nvar caseSelectedType = Java.type(\"java.lang.Byte\");\nexecutor.outFields.put(\"TestEstablishCaseSelected\", new caseSelectedType(0));\n\nvar JavaDate = Java.type(\"java.util.Date\");\ntimeNow = new JavaDate();\nexecutor.outFields.put(\"TestEstablishStateTime\", timeNow.getTime());\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "Task_Establish3",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Task_Establish3",
+              "version": "0.0.1"
+            },
+            "inputFields": {
+              "entry": [
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCaseSelected",
+                  "value": {
+                    "key": "TestMatchCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchStateTime",
+                  "value": {
+                    "key": "TestMatchStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "outputFields": {
+              "entry": [
+                {
+                  "key": "TestEstablishCaseSelected",
+                  "value": {
+                    "key": "TestEstablishCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishStateTime",
+                  "value": {
+                    "key": "TestEstablishStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCaseSelected",
+                  "value": {
+                    "key": "TestMatchCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchStateTime",
+                  "value": {
+                    "key": "TestMatchStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": [
+                {
+                  "key": "Parameter0",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "Task_Establish3",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Parameter0"
+                    },
+                    "defaultValue": "DefaultValue0"
+                  }
+                }
+              ]
+            },
+            "contextAlbumReference": [
+              {
+                "name": "ExternalContextAlbum",
+                "version": "0.0.1"
+              },
+              {
+                "name": "GlobalContextAlbum",
+                "version": "0.0.1"
+              }
+            ],
+            "taskLogic": {
+              "key": "_TaskLogic",
+              "logicFlavour": "JAVASCRIPT",
+              "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nvar caseSelectedType = Java.type(\"java.lang.Byte\");\nexecutor.outFields.put(\"TestEstablishCaseSelected\", new caseSelectedType(1));\n\nvar JavaDate = Java.type(\"java.util.Date\");\ntimeNow = new JavaDate();\nexecutor.outFields.put(\"TestEstablishStateTime\", timeNow.getTime());\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "Task_Match0",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Task_Match0",
+              "version": "0.0.1"
+            },
+            "inputFields": {
+              "entry": [
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "outputFields": {
+              "entry": [
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCaseSelected",
+                  "value": {
+                    "key": "TestMatchCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchStateTime",
+                  "value": {
+                    "key": "TestMatchStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": [
+                {
+                  "key": "Parameter0",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "Task_Match0",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Parameter0"
+                    },
+                    "defaultValue": "DefaultValue0"
+                  }
+                },
+                {
+                  "key": "Parameter1",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "Task_Match0",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Parameter1"
+                    },
+                    "defaultValue": "DefaultValue1"
+                  }
+                },
+                {
+                  "key": "Parameter2",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "Task_Match0",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Parameter2"
+                    },
+                    "defaultValue": "DefaultValue2"
+                  }
+                }
+              ]
+            },
+            "contextAlbumReference": [
+              {
+                "name": "ExternalContextAlbum",
+                "version": "0.0.1"
+              },
+              {
+                "name": "GlobalContextAlbum",
+                "version": "0.0.1"
+              },
+              {
+                "name": "Policy0ContextAlbum",
+                "version": "0.0.1"
+              },
+              {
+                "name": "Policy1ContextAlbum",
+                "version": "0.0.1"
+              }
+            ],
+            "taskLogic": {
+              "key": "_TaskLogic",
+              "logicFlavour": "JAVASCRIPT",
+              "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nvar caseSelectedType = Java.type(\"java.lang.Byte\");\nexecutor.outFields.put(\"TestMatchCaseSelected\", new caseSelectedType(2));\n\nvar JavaDate = Java.type(\"java.util.Date\");\ntimeNow = new JavaDate();\nexecutor.outFields.put(\"TestMatchStateTime\", timeNow.getTime());\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "Task_Match1",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Task_Match1",
+              "version": "0.0.1"
+            },
+            "inputFields": {
+              "entry": [
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "outputFields": {
+              "entry": [
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCaseSelected",
+                  "value": {
+                    "key": "TestMatchCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchStateTime",
+                  "value": {
+                    "key": "TestMatchStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": [
+                {
+                  "key": "Parameter0",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "Task_Match1",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Parameter0"
+                    },
+                    "defaultValue": "DefaultValue0"
+                  }
+                },
+                {
+                  "key": "Parameter1",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "Task_Match1",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Parameter1"
+                    },
+                    "defaultValue": "DefaultValue1"
+                  }
+                }
+              ]
+            },
+            "contextAlbumReference": [
+              {
+                "name": "GlobalContextAlbum",
+                "version": "0.0.1"
+              },
+              {
+                "name": "Policy0ContextAlbum",
+                "version": "0.0.1"
+              }
+            ],
+            "taskLogic": {
+              "key": "_TaskLogic",
+              "logicFlavour": "JAVASCRIPT",
+              "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nvar caseSelectedType = Java.type(\"java.lang.Byte\");\nexecutor.outFields.put(\"TestMatchCaseSelected\", new caseSelectedType(3));\n\nvar JavaDate = Java.type(\"java.util.Date\");\ntimeNow = new JavaDate();\nexecutor.outFields.put(\"TestMatchStateTime\", timeNow.getTime());\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "Task_Match2",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Task_Match2",
+              "version": "0.0.1"
+            },
+            "inputFields": {
+              "entry": [
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "outputFields": {
+              "entry": [
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCaseSelected",
+                  "value": {
+                    "key": "TestMatchCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchStateTime",
+                  "value": {
+                    "key": "TestMatchStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": [
+                {
+                  "key": "Parameter0",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "Task_Match2",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Parameter0"
+                    },
+                    "defaultValue": "DefaultValue0"
+                  }
+                }
+              ]
+            },
+            "contextAlbumReference": [
+              {
+                "name": "GlobalContextAlbum",
+                "version": "0.0.1"
+              },
+              {
+                "name": "Policy1ContextAlbum",
+                "version": "0.0.1"
+              }
+            ],
+            "taskLogic": {
+              "key": "_TaskLogic",
+              "logicFlavour": "JAVASCRIPT",
+              "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nvar caseSelectedType = Java.type(\"java.lang.Byte\");\nexecutor.outFields.put(\"TestMatchCaseSelected\", new caseSelectedType(0));\n\nvar JavaDate = Java.type(\"java.util.Date\");\ntimeNow = new JavaDate();\nexecutor.outFields.put(\"TestMatchStateTime\", timeNow.getTime());\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "Task_Match3",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Task_Match3",
+              "version": "0.0.1"
+            },
+            "inputFields": {
+              "entry": [
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "outputFields": {
+              "entry": [
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCaseSelected",
+                  "value": {
+                    "key": "TestMatchCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchStateTime",
+                  "value": {
+                    "key": "TestMatchStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": [
+                {
+                  "key": "Parameter0",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "Task_Match3",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Parameter0"
+                    },
+                    "defaultValue": "DefaultValue0"
+                  }
+                }
+              ]
+            },
+            "contextAlbumReference": [
+              {
+                "name": "ExternalContextAlbum",
+                "version": "0.0.1"
+              },
+              {
+                "name": "GlobalContextAlbum",
+                "version": "0.0.1"
+              }
+            ],
+            "taskLogic": {
+              "key": "_TaskLogic",
+              "logicFlavour": "JAVASCRIPT",
+              "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n *      http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * \n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"GlobalContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nvar caseSelectedType = Java.type(\"java.lang.Byte\");\nexecutor.outFields.put(\"TestMatchCaseSelected\", new caseSelectedType(1));\n\nvar JavaDate = Java.type(\"java.util.Date\");\ntimeNow = new JavaDate();\nexecutor.outFields.put(\"TestMatchStateTime\", timeNow.getTime());\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
+            }
+          }
+        }
+      ]
+    }
+  },
+  "events": {
+    "key": {
+      "name": "Events",
+      "version": "0.0.1"
+    },
+    "eventMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "Event0000",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Event0000",
+              "version": "0.0.1"
+            },
+            "nameSpace": "org.onap.policy.apex.sample.events",
+            "source": "Outside",
+            "target": "Match",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "Event0001",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Event0001",
+              "version": "0.0.1"
+            },
+            "nameSpace": "org.onap.policy.apex.sample.events",
+            "source": "Match",
+            "target": "Establish",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCaseSelected",
+                  "value": {
+                    "key": "TestMatchCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchStateTime",
+                  "value": {
+                    "key": "TestMatchStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "Event0002",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Event0002",
+              "version": "0.0.1"
+            },
+            "nameSpace": "org.onap.policy.apex.sample.events",
+            "source": "Establish",
+            "target": "Decide",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "TestEstablishCaseSelected",
+                  "value": {
+                    "key": "TestEstablishCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishStateTime",
+                  "value": {
+                    "key": "TestEstablishStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCaseSelected",
+                  "value": {
+                    "key": "TestMatchCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchStateTime",
+                  "value": {
+                    "key": "TestMatchStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "Event0003",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Event0003",
+              "version": "0.0.1"
+            },
+            "nameSpace": "org.onap.policy.apex.sample.events",
+            "source": "Decide",
+            "target": "Act",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "TestDecideCaseSelected",
+                  "value": {
+                    "key": "TestDecideCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestDecideStateTime",
+                  "value": {
+                    "key": "TestDecideStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishCaseSelected",
+                  "value": {
+                    "key": "TestEstablishCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishStateTime",
+                  "value": {
+                    "key": "TestEstablishStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCaseSelected",
+                  "value": {
+                    "key": "TestMatchCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchStateTime",
+                  "value": {
+                    "key": "TestMatchStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "Event0004",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Event0004",
+              "version": "0.0.1"
+            },
+            "nameSpace": "org.onap.policy.apex.sample.events",
+            "source": "Act",
+            "target": "Outside",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "TestActCaseSelected",
+                  "value": {
+                    "key": "TestActCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestActStateTime",
+                  "value": {
+                    "key": "TestActStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestDecideCaseSelected",
+                  "value": {
+                    "key": "TestDecideCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestDecideStateTime",
+                  "value": {
+                    "key": "TestDecideStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishCaseSelected",
+                  "value": {
+                    "key": "TestEstablishCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishStateTime",
+                  "value": {
+                    "key": "TestEstablishStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCaseSelected",
+                  "value": {
+                    "key": "TestMatchCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchStateTime",
+                  "value": {
+                    "key": "TestMatchStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "Event0100",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Event0100",
+              "version": "0.0.1"
+            },
+            "nameSpace": "org.onap.policy.apex.sample.events",
+            "source": "Outside",
+            "target": "Match",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "Event0101",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Event0101",
+              "version": "0.0.1"
+            },
+            "nameSpace": "org.onap.policy.apex.sample.events",
+            "source": "Match",
+            "target": "Establish",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCaseSelected",
+                  "value": {
+                    "key": "TestMatchCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchStateTime",
+                  "value": {
+                    "key": "TestMatchStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "Event0102",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Event0102",
+              "version": "0.0.1"
+            },
+            "nameSpace": "org.onap.policy.apex.sample.events",
+            "source": "Establish",
+            "target": "Decide",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "TestEstablishCaseSelected",
+                  "value": {
+                    "key": "TestEstablishCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishStateTime",
+                  "value": {
+                    "key": "TestEstablishStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCaseSelected",
+                  "value": {
+                    "key": "TestMatchCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchStateTime",
+                  "value": {
+                    "key": "TestMatchStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "Event0103",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Event0103",
+              "version": "0.0.1"
+            },
+            "nameSpace": "org.onap.policy.apex.sample.events",
+            "source": "Decide",
+            "target": "Act",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "TestDecideCaseSelected",
+                  "value": {
+                    "key": "TestDecideCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestDecideStateTime",
+                  "value": {
+                    "key": "TestDecideStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishCaseSelected",
+                  "value": {
+                    "key": "TestEstablishCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishStateTime",
+                  "value": {
+                    "key": "TestEstablishStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCaseSelected",
+                  "value": {
+                    "key": "TestMatchCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchStateTime",
+                  "value": {
+                    "key": "TestMatchStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "Event0104",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Event0104",
+              "version": "0.0.1"
+            },
+            "nameSpace": "org.onap.policy.apex.sample.events",
+            "source": "Act",
+            "target": "Outside",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "TestActCaseSelected",
+                  "value": {
+                    "key": "TestActCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestActStateTime",
+                  "value": {
+                    "key": "TestActStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestDecideCaseSelected",
+                  "value": {
+                    "key": "TestDecideCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestDecideStateTime",
+                  "value": {
+                    "key": "TestDecideStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishCaseSelected",
+                  "value": {
+                    "key": "TestEstablishCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestEstablishStateTime",
+                  "value": {
+                    "key": "TestEstablishStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCase",
+                  "value": {
+                    "key": "TestMatchCase",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchCaseSelected",
+                  "value": {
+                    "key": "TestMatchCaseSelected",
+                    "fieldSchemaKey": {
+                      "name": "TestCase",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestMatchStateTime",
+                  "value": {
+                    "key": "TestMatchStateTime",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestSlogan",
+                  "value": {
+                    "key": "TestSlogan",
+                    "fieldSchemaKey": {
+                      "name": "TestSlogan",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTemperature",
+                  "value": {
+                    "key": "TestTemperature",
+                    "fieldSchemaKey": {
+                      "name": "TestTemperature",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TestTimestamp",
+                  "value": {
+                    "key": "TestTimestamp",
+                    "fieldSchemaKey": {
+                      "name": "TestTimestamp",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            }
+          }
+        }
+      ]
+    }
+  },
+  "albums": {
+    "key": {
+      "name": "Context",
+      "version": "0.0.1"
+    },
+    "albums": {
+      "entry": [
+        {
+          "key": {
+            "name": "ExternalContextAlbum",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "ExternalContextAlbum",
+              "version": "0.0.1"
+            },
+            "scope": "EXTERNAL",
+            "isWritable": false,
+            "itemSchema": {
+              "name": "TestExternalContextItem",
+              "version": "0.0.1"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "GlobalContextAlbum",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "GlobalContextAlbum",
+              "version": "0.0.1"
+            },
+            "scope": "GLOBAL",
+            "isWritable": true,
+            "itemSchema": {
+              "name": "TestGlobalContextItem",
+              "version": "0.0.1"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "Policy0ContextAlbum",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Policy0ContextAlbum",
+              "version": "0.0.1"
+            },
+            "scope": "APPLICATION",
+            "isWritable": true,
+            "itemSchema": {
+              "name": "TestPolicyContextItem",
+              "version": "0.0.1"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "Policy1ContextAlbum",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Policy1ContextAlbum",
+              "version": "0.0.1"
+            },
+            "scope": "APPLICATION",
+            "isWritable": true,
+            "itemSchema": {
+              "name": "TestPolicyContextItem",
+              "version": "0.0.1"
+            }
+          }
+        }
+      ]
+    }
+  },
+  "schemas": {
+    "key": {
+      "name": "TestDatatypes",
+      "version": "0.0.1"
+    },
+    "schemas": {
+      "entry": [
+        {
+          "key": {
+            "name": "TestCase",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestCase",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Byte"
+          }
+        },
+        {
+          "key": {
+            "name": "TestContextItem000",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestContextItem000",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "org.onap.policy.apex.context.test.concepts.TestContextItem000"
+          }
+        },
+        {
+          "key": {
+            "name": "TestContextItem001",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestContextItem001",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "org.onap.policy.apex.context.test.concepts.TestContextItem001"
+          }
+        },
+        {
+          "key": {
+            "name": "TestContextItem002",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestContextItem002",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "org.onap.policy.apex.context.test.concepts.TestContextItem002"
+          }
+        },
+        {
+          "key": {
+            "name": "TestContextItem003",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestContextItem003",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "org.onap.policy.apex.context.test.concepts.TestContextItem003"
+          }
+        },
+        {
+          "key": {
+            "name": "TestContextItem004",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestContextItem004",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "org.onap.policy.apex.context.test.concepts.TestContextItem004"
+          }
+        },
+        {
+          "key": {
+            "name": "TestContextItem005",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestContextItem005",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "org.onap.policy.apex.context.test.concepts.TestContextItem005"
+          }
+        },
+        {
+          "key": {
+            "name": "TestContextItem006",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestContextItem006",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "org.onap.policy.apex.context.test.concepts.TestContextItem006"
+          }
+        },
+        {
+          "key": {
+            "name": "TestContextItem007",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestContextItem007",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "org.onap.policy.apex.context.test.concepts.TestContextItem007"
+          }
+        },
+        {
+          "key": {
+            "name": "TestContextItem008",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestContextItem008",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "org.onap.policy.apex.context.test.concepts.TestContextItem008"
+          }
+        },
+        {
+          "key": {
+            "name": "TestContextItem009",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestContextItem009",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "org.onap.policy.apex.context.test.concepts.TestContextItem009"
+          }
+        },
+        {
+          "key": {
+            "name": "TestContextItem00A",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestContextItem00A",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "org.onap.policy.apex.context.test.concepts.TestContextItem00A"
+          }
+        },
+        {
+          "key": {
+            "name": "TestContextItem00B",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestContextItem00B",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "org.onap.policy.apex.context.test.concepts.TestContextItem00B"
+          }
+        },
+        {
+          "key": {
+            "name": "TestContextItem00C",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestContextItem00C",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "org.onap.policy.apex.context.test.concepts.TestContextItem00C"
+          }
+        },
+        {
+          "key": {
+            "name": "TestExternalContextItem",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestExternalContextItem",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "org.onap.policy.apex.context.test.concepts.TestExternalContextItem"
+          }
+        },
+        {
+          "key": {
+            "name": "TestGlobalContextItem",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestGlobalContextItem",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "org.onap.policy.apex.context.test.concepts.TestGlobalContextItem"
+          }
+        },
+        {
+          "key": {
+            "name": "TestPolicyContextItem",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestPolicyContextItem",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "org.onap.policy.apex.context.test.concepts.TestPolicyContextItem"
+          }
+        },
+        {
+          "key": {
+            "name": "TestSlogan",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestSlogan",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.String"
+          }
+        },
+        {
+          "key": {
+            "name": "TestTemperature",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestTemperature",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Double"
+          }
+        },
+        {
+          "key": {
+            "name": "TestTimestamp",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestTimestamp",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Long"
+          }
+        }
+      ]
+    }
+  }
+}
index 896448b..dfb3a38 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2021 Nordix Foundation.
+ *  Modifications Copyright (C) 2021-2022 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -47,7 +47,7 @@ public class ApexModelHandler {
      * @param properties The properties of the Apex model
      */
     public ApexModelHandler(final Properties properties) {
-        apexModel = new ApexModelFactory().createApexModel(properties, true);
+        apexModel = new ApexModelFactory().createApexModel(properties);
     }
 
     /**
index 509a57c..e494229 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2019-2020 Nordix Foundation.
+ *  Modifications Copyright (C) 2019-2020,2022 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -67,7 +67,7 @@ public class CommandLineEditorOptionsTest {
         final int modelCharCount = modelString.replaceAll("\\s+", "").length();
 
         assertEquals(1204, logCharCount);
-        assertEquals(2561, modelCharCount);
+        assertEquals(2904, modelCharCount);
 
         tempLogFile.delete();
         tempModelFile.delete();
@@ -126,7 +126,6 @@ public class CommandLineEditorOptionsTest {
         final String logString = TextFileUtils.getTextFileAsString(tempLogFile.getCanonicalPath());
         final String modelString = TextFileUtils.getTextFileAsString(tempModelFile.getCanonicalPath());
 
-        System.err.println(modelString);
         // As a sanity check, count the number of non white space characters in log and model files
         final int logCharCount = logString.replaceAll("\\s+", "").length();
         final int modelCharCount = modelString.replaceAll("\\s+", "").length();
@@ -164,7 +163,7 @@ public class CommandLineEditorOptionsTest {
         final int modelCharCount = modelString.replaceAll("\\s+", "").length();
 
         assertEquals(0, logCharCount);
-        assertEquals(2561, modelCharCount);
+        assertEquals(2904, modelCharCount);
 
         tempLogFile.delete();
         tempModelFile.delete();
@@ -249,7 +248,7 @@ public class CommandLineEditorOptionsTest {
         final int tempModelFileInCharCount = tempModelFileInString.replaceAll("\\s+", "").length();
 
         assertEquals(1204, tempLogFileInCharCount);
-        assertEquals(2561, tempModelFileInCharCount);
+        assertEquals(2904, tempModelFileInCharCount);
 
         final String[] cliArgsOut = new String[] {"-i", tempModelFileIn.getAbsolutePath(), "-c",
             "src/main/resources/examples/scripts/ShellPolicyModelAddSchema.apex", "-l",
@@ -267,7 +266,7 @@ public class CommandLineEditorOptionsTest {
         final int tempModelFileOutCharCount = tempModelFileOutString.replaceAll("\\s+", "").length();
 
         assertEquals(1154, tempLogFileOutCharCount);
-        assertEquals(2993, tempModelFileOutCharCount);
+        assertEquals(3336, tempModelFileOutCharCount);
 
         tempLogFileIn.delete();
         tempModelFileIn.delete();
index b41cd49..75a880a 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2019-2020 Nordix Foundation.
+ *  Modifications Copyright (C) 2019-2020,2022 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -30,9 +30,11 @@ import java.net.URL;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
+import org.onap.policy.apex.model.basicmodel.concepts.ApexException;
 import org.onap.policy.apex.model.basicmodel.concepts.AxValidationResult;
 import org.onap.policy.apex.model.basicmodel.handling.ApexModelException;
 import org.onap.policy.apex.model.basicmodel.handling.ApexModelReader;
+import org.onap.policy.apex.model.basicmodel.handling.ApexModelStringWriter;
 import org.onap.policy.apex.model.policymodel.concepts.AxPolicyModel;
 import org.onap.policy.common.utils.resources.ResourceUtils;
 
@@ -61,10 +63,10 @@ public class CommandLineEditorScriptingTest {
         tempLogFile = File.createTempFile("SampleLBPolicyMap", ".log");
 
         samplePolicyArgs = new String[] {"-c", "src/test/resources/scripts/SampleLBPolicy.apex", "-o",
-                tempModelFile.getAbsolutePath(), "-l", tempLogFile.getAbsolutePath()};
+            tempModelFile.getAbsolutePath(), "-l", tempLogFile.getAbsolutePath()};
 
         samplePolicyMapArgs = new String[] {"-c", "src/test/resources/scripts/SampleLBPolicy_WithMap.apex", "-o",
-                tempModelFile.getAbsolutePath(), "-l", tempLogFile.getAbsolutePath()};
+            tempModelFile.getAbsolutePath(), "-l", tempLogFile.getAbsolutePath()};
     }
 
     /**
@@ -79,7 +81,7 @@ public class CommandLineEditorScriptingTest {
     /**
      * Test sample FLB policy script.
      *
-     * @throws IOException Signals that an I/O exception has occurred.
+     * @throws IOException        Signals that an I/O exception has occurred.
      * @throws ApexModelException if there is an Apex error
      */
     @Test
@@ -94,7 +96,7 @@ public class CommandLineEditorScriptingTest {
         final AxPolicyModel writtenModel = modelReader.read(writtenModelUrl.openStream());
 
         final URL compareModelUrl =
-                ResourceUtils.getLocalFile("src/test/resources/compare/FLBPolicyModel_Compare.json");
+            ResourceUtils.getLocalFile("src/test/resources/compare/FLBPolicyModel_Compare.json");
         final AxPolicyModel compareModel = modelReader.read(compareModelUrl.openStream());
 
         final URL compareModelNoAlbumsUrl =
@@ -114,7 +116,7 @@ public class CommandLineEditorScriptingTest {
     /**
      * Test sample FLB map policy script.
      *
-     * @throws IOException Signals that an I/O exception has occurred.
+     * @throws IOException        Signals that an I/O exception has occurred.
      * @throws ApexModelException if there is an Apex error
      */
     @Test
index db44bbb..ab9b900 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2020 Nordix Foundation.
+ *  Modifications Copyright (C) 2020,2022 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -77,7 +77,7 @@ public class ContextAlbumsTest {
 
         // Read the file from disk
         final ApexModelReader<AxPolicyModel> modelReader = new ApexModelReader<>(AxPolicyModel.class);
-        modelReader.setValidateFlag(false);
+        modelReader.setValidate(false);
 
         final URL writtenModelUrl = ResourceUtils.getLocalFile(tempModelFile.getCanonicalPath());
         final AxPolicyModel writtenModel = modelReader.read(writtenModelUrl.openStream());
index 7acf2ab..9896ab9 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2020 Nordix Foundation.
+ *  Modifications Copyright (C) 2020,2022 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -81,7 +81,7 @@ public class FileMacroTest {
 
         // Read the file from disk
         final ApexModelReader<AxPolicyModel> modelReader = new ApexModelReader<>(AxPolicyModel.class);
-        modelReader.setValidateFlag(false);
+        modelReader.setValidate(false);
 
         final URL writtenModelUrl = ResourceUtils.getLocalFile(tempModelFile.getCanonicalPath());
         final AxPolicyModel writtenModel = modelReader.read(writtenModelUrl.openStream());
index 7020139..31e75e5 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2020 Nordix Foundation.
+ *  Modifications Copyright (C) 2020,2022 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -31,6 +31,7 @@ import org.junit.Before;
 import org.junit.Test;
 import org.onap.policy.apex.model.basicmodel.handling.ApexModelException;
 import org.onap.policy.apex.model.basicmodel.handling.ApexModelReader;
+import org.onap.policy.apex.model.basicmodel.handling.ApexModelStringWriter;
 import org.onap.policy.apex.model.policymodel.concepts.AxPolicyModel;
 import org.onap.policy.common.utils.resources.ResourceUtils;
 
@@ -83,7 +84,7 @@ public class LogicBlockTest {
 
         // Read the file from disk
         final ApexModelReader<AxPolicyModel> modelReader = new ApexModelReader<>(AxPolicyModel.class);
-        modelReader.setValidateFlag(false);
+        modelReader.setValidate(false);
 
         final URL writtenModelUrl = ResourceUtils.getLocalFile(tempLogicModelFile.getCanonicalPath());
         final AxPolicyModel writtenModel = modelReader.read(writtenModelUrl.openStream());
@@ -111,7 +112,7 @@ public class LogicBlockTest {
 
         // Read the file from disk
         final ApexModelReader<AxPolicyModel> modelReader = new ApexModelReader<>(AxPolicyModel.class);
-        modelReader.setValidateFlag(false);
+        modelReader.setValidate(false);
 
         final URL writtenModelUrl = ResourceUtils.getLocalFile(tempAvroModelFile.getCanonicalPath());
         final AxPolicyModel writtenModel = modelReader.read(writtenModelUrl.openStream());
index 9ac0463..b75199a 100644 (file)
@@ -1,6 +1,6 @@
 /*-
  * ============LICENSE_START=======================================================
- *  Copyright (C) 2019 Nordix Foundation.
+ *  Copyright (C) 2019,2022 Nordix Foundation.
  *  Modifications Copyright (C) 2021 Bell Canada. All rights reserved.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
@@ -84,9 +84,12 @@ public class ApexCliToscaEditorTest {
     @Test
     public void testApexCliTosca_success() throws IOException {
         final ApexCliToscaEditorMain cliEditor = new ApexCliToscaEditorMain(sampleArgs);
+
+
         String outputTosca = TextFileUtils.getTextFileAsString(tempOutputToscaFile.getAbsolutePath());
         String outputToscaCompare =
-            TextFileUtils.getTextFileAsString("src/test/resources/tosca/ToscaPolicyOutput_compare.json").trim();
+            TextFileUtils.getTextFileAsString("src/test/resources/tosca/ToscaPolicyOutput_compare_2.json").trim();
+
         assertEquals(outputToscaCompare, outputTosca);
         assertFalse(cliEditor.isFailure());
     }
index 371efd7..2ce34e1 100644 (file)
@@ -1,6 +1,6 @@
 /*-
  * ============LICENSE_START=======================================================
- *  Copyright (C) 2019 Nordix Foundation.
+ *  Copyright (C) 2019,2022 Nordix Foundation.
  *  Modifications Copyright (C) 2021 Bell Canada. All rights reserved.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
@@ -82,7 +82,7 @@ public class CliUtilsTest {
         CliUtils.createToscaServiceTemplate(params, policyModelFilePath);
         String outputTosca = TextFileUtils.getTextFileAsString(tempOutputToscaFile.getAbsolutePath());
         String outputToscaCompare =
-            TextFileUtils.getTextFileAsString("src/test/resources/tosca/ToscaPolicyOutput_compare.json").trim();
+            TextFileUtils.getTextFileAsString("src/test/resources/tosca/ToscaPolicyOutput_compare_1.json").trim();
         assertEquals(outputToscaCompare, outputTosca);
     }
 
index bea9ff9..c10bdca 100644 (file)
 {
-   "apexPolicyModel" : {
-      "key" : {
-         "name" : "AvroSchemaPolicy",
-         "version" : "0.0.1"
-      },
-      "keyInformation" : {
-         "key" : {
-            "name" : "AvroSchemaPolicy_KeyInfo",
-            "version" : "0.0.1"
-         },
-         "keyInfoMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "AvroSchemaPolicy",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "AvroSchemaPolicy",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "9964f7a9-06fb-4a35-96d3-316bf625414b",
-                  "description" : "Generated description for concept referred to by key \"AvroSchemaPolicy:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "AvroSchemaPolicy_Albums",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "AvroSchemaPolicy_Albums",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "d67c4a9f-f307-472c-b4a7-21f0d3db1563",
-                  "description" : "Generated description for concept referred to by key \"AvroSchemaPolicy_Albums:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "AvroSchemaPolicy_Events",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "AvroSchemaPolicy_Events",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "b7bf6461-f656-48d8-9f4f-fd252f842021",
-                  "description" : "Generated description for concept referred to by key \"AvroSchemaPolicy_Events:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "AvroSchemaPolicy_KeyInfo",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "AvroSchemaPolicy_KeyInfo",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "3f8c3400-40cd-4450-b0bc-01bcdeacfbe2",
-                  "description" : "Generated description for concept referred to by key \"AvroSchemaPolicy_KeyInfo:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "AvroSchemaPolicy_Policies",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "AvroSchemaPolicy_Policies",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "f321d8e8-d8d6-43fc-adf3-c22d25668068",
-                  "description" : "Generated description for concept referred to by key \"AvroSchemaPolicy_Policies:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "AvroSchemaPolicy_Schemas",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "AvroSchemaPolicy_Schemas",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "804587e0-ae28-476b-83c1-db1fbd948465",
-                  "description" : "Generated description for concept referred to by key \"AvroSchemaPolicy_Schemas:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "AvroSchemaPolicy_Tasks",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "AvroSchemaPolicy_Tasks",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "d7bc0088-20a0-46dc-b7fd-d1bd06a1115e",
-                  "description" : "Generated description for concept referred to by key \"AvroSchemaPolicy_Tasks:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "SchemaLogicTest",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SchemaLogicTest",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "a5dd9412-1b95-4a13-91e6-823d7b8806e8",
-                  "description" : "Generated description for concept referred to by key \"SchemaLogicTest:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Test_InputEvent",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Test_InputEvent",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "c2f49864-bd50-42c2-9d20-8af67c59a073",
-                  "description" : "Generated description for concept referred to by key \"Test_InputEvent:0.0.1\""
-               }
-            } ]
-         }
-      },
-      "policies" : {
-         "key" : {
-            "name" : "AvroSchemaPolicy_Policies",
-            "version" : "0.0.1"
-         },
-         "policyMap" : {
-            "entry" : [ ]
-         }
-      },
-      "tasks" : {
-         "key" : {
-            "name" : "AvroSchemaPolicy_Tasks",
-            "version" : "0.0.1"
-         },
-         "taskMap" : {
-            "entry" : [ ]
-         }
-      },
-      "events" : {
-         "key" : {
-            "name" : "AvroSchemaPolicy_Events",
-            "version" : "0.0.1"
-         },
-         "eventMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "Test_InputEvent",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Test_InputEvent",
-                     "version" : "0.0.1"
-                  },
-                  "nameSpace" : "org.onap.policy.apex.test",
-                  "source" : "External",
-                  "target" : "Apex",
-                  "parameter" : {
-                     "entry" : [ {
-                        "key" : "AAA",
-                        "value" : {
-                           "key" : "AAA",
-                           "fieldSchemaKey" : {
-                              "name" : "SchemaLogicTest",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "BBB",
-                        "value" : {
-                           "key" : "BBB",
-                           "fieldSchemaKey" : {
-                              "name" : "SchemaLogicTest",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : true
-                        }
-                     }, {
-                        "key" : "CCC",
-                        "value" : {
-                           "key" : "CCC",
-                           "fieldSchemaKey" : {
-                              "name" : "SchemaLogicTest",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
+  "key": {
+    "name": "AvroSchemaPolicy",
+    "version": "0.0.1"
+  },
+  "keyInformation": {
+    "key": {
+      "name": "AvroSchemaPolicy_KeyInfo",
+      "version": "0.0.1"
+    },
+    "keyInfoMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "AvroSchemaPolicy",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "AvroSchemaPolicy",
+              "version": "0.0.1"
+            },
+            "UUID": "9964f7a9-06fb-4a35-96d3-316bf625414b",
+            "description": "Generated description for concept referred to by key \"AvroSchemaPolicy:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "AvroSchemaPolicy_Albums",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "AvroSchemaPolicy_Albums",
+              "version": "0.0.1"
+            },
+            "UUID": "d67c4a9f-f307-472c-b4a7-21f0d3db1563",
+            "description": "Generated description for concept referred to by key \"AvroSchemaPolicy_Albums:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "AvroSchemaPolicy_Events",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "AvroSchemaPolicy_Events",
+              "version": "0.0.1"
+            },
+            "UUID": "b7bf6461-f656-48d8-9f4f-fd252f842021",
+            "description": "Generated description for concept referred to by key \"AvroSchemaPolicy_Events:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "AvroSchemaPolicy_KeyInfo",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "AvroSchemaPolicy_KeyInfo",
+              "version": "0.0.1"
+            },
+            "UUID": "3f8c3400-40cd-4450-b0bc-01bcdeacfbe2",
+            "description": "Generated description for concept referred to by key \"AvroSchemaPolicy_KeyInfo:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "AvroSchemaPolicy_Policies",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "AvroSchemaPolicy_Policies",
+              "version": "0.0.1"
+            },
+            "UUID": "f321d8e8-d8d6-43fc-adf3-c22d25668068",
+            "description": "Generated description for concept referred to by key \"AvroSchemaPolicy_Policies:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "AvroSchemaPolicy_Schemas",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "AvroSchemaPolicy_Schemas",
+              "version": "0.0.1"
+            },
+            "UUID": "804587e0-ae28-476b-83c1-db1fbd948465",
+            "description": "Generated description for concept referred to by key \"AvroSchemaPolicy_Schemas:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "AvroSchemaPolicy_Tasks",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "AvroSchemaPolicy_Tasks",
+              "version": "0.0.1"
+            },
+            "UUID": "d7bc0088-20a0-46dc-b7fd-d1bd06a1115e",
+            "description": "Generated description for concept referred to by key \"AvroSchemaPolicy_Tasks:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "SchemaLogicTest",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SchemaLogicTest",
+              "version": "0.0.1"
+            },
+            "UUID": "a5dd9412-1b95-4a13-91e6-823d7b8806e8",
+            "description": "Generated description for concept referred to by key \"SchemaLogicTest:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Test_InputEvent",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Test_InputEvent",
+              "version": "0.0.1"
+            },
+            "UUID": "c2f49864-bd50-42c2-9d20-8af67c59a073",
+            "description": "Generated description for concept referred to by key \"Test_InputEvent:0.0.1\""
+          }
+        }
+      ]
+    }
+  },
+  "policies": {
+    "key": {
+      "name": "AvroSchemaPolicy_Policies",
+      "version": "0.0.1"
+    },
+    "policyMap": {
+      "entry": []
+    }
+  },
+  "tasks": {
+    "key": {
+      "name": "AvroSchemaPolicy_Tasks",
+      "version": "0.0.1"
+    },
+    "taskMap": {
+      "entry": []
+    }
+  },
+  "events": {
+    "key": {
+      "name": "AvroSchemaPolicy_Events",
+      "version": "0.0.1"
+    },
+    "eventMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "Test_InputEvent",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Test_InputEvent",
+              "version": "0.0.1"
+            },
+            "nameSpace": "org.onap.policy.apex.test",
+            "source": "External",
+            "target": "Apex",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "AAA",
+                  "value": {
+                    "key": "AAA",
+                    "fieldSchemaKey": {
+                      "name": "SchemaLogicTest",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
                   }
-               }
-            } ]
-         }
-      },
-      "albums" : {
-         "key" : {
-            "name" : "AvroSchemaPolicy_Albums",
-            "version" : "0.0.1"
-         },
-         "albums" : {
-            "entry" : [ ]
-         }
-      },
-      "schemas" : {
-         "key" : {
-            "name" : "AvroSchemaPolicy_Schemas",
-            "version" : "0.0.1"
-         },
-         "schemas" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "SchemaLogicTest",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SchemaLogicTest",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Avro",
-                  "schemaDefinition" : "{\n  \"type\"      : \"record\",\n  \"name\"      : \"VPNActEvent\",\n  \"namespace\" : \"org.onap.policy.apex.domains.vpn.events\",\n  \"fields\"    : [\n    {\"name\": \"nameSpace\", \"type\": \"string\"},\n    {\"name\": \"name\",      \"type\": \"string\"},\n    {\"name\": \"version\",   \"type\": \"string\"},\n    {\"name\": \"source\",    \"type\": \"string\"},\n    {\"name\": \"target\",    \"type\": \"string\"},\n    {\"name\": \"LinkMap\", \"type\": {\n        \"type\" : \"record\",\n        \"name\" : \"LinkMap\",\n        \"namespace\" : \"org.onap.policy.apex.domains.vpn\",\n        \"fields\" : [ ]\n      }\n    },\n    {\"name\": \"CustomerMap\", \"type\": {\n        \"type\" : \"record\",\n        \"name\" : \"CustomerMap\",\n        \"namespace\" : \"org.onap.policy.apex.domains.vpn\",\n        \"fields\" : [ ]\n      }\n    }\n  ]\n}"
-               }
-            } ]
-         }
-      }
-   }
-}
\ No newline at end of file
+                },
+                {
+                  "key": "BBB",
+                  "value": {
+                    "key": "BBB",
+                    "fieldSchemaKey": {
+                      "name": "SchemaLogicTest",
+                      "version": "0.0.1"
+                    },
+                    "optional": true
+                  }
+                },
+                {
+                  "key": "CCC",
+                  "value": {
+                    "key": "CCC",
+                    "fieldSchemaKey": {
+                      "name": "SchemaLogicTest",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            }
+          }
+        }
+      ]
+    }
+  },
+  "albums": {
+    "key": {
+      "name": "AvroSchemaPolicy_Albums",
+      "version": "0.0.1"
+    },
+    "albums": {
+      "entry": []
+    }
+  },
+  "schemas": {
+    "key": {
+      "name": "AvroSchemaPolicy_Schemas",
+      "version": "0.0.1"
+    },
+    "schemas": {
+      "entry": [
+        {
+          "key": {
+            "name": "SchemaLogicTest",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SchemaLogicTest",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Avro",
+            "schemaDefinition": "{\n  \"type\"      : \"record\",\n  \"name\"      : \"VPNActEvent\",\n  \"namespace\" : \"org.onap.policy.apex.domains.vpn.events\",\n  \"fields\"    : [\n    {\"name\": \"nameSpace\", \"type\": \"string\"},\n    {\"name\": \"name\",      \"type\": \"string\"},\n    {\"name\": \"version\",   \"type\": \"string\"},\n    {\"name\": \"source\",    \"type\": \"string\"},\n    {\"name\": \"target\",    \"type\": \"string\"},\n    {\"name\": \"LinkMap\", \"type\": {\n        \"type\" : \"record\",\n        \"name\" : \"LinkMap\",\n        \"namespace\" : \"org.onap.policy.apex.domains.vpn\",\n        \"fields\" : [ ]\n      }\n    },\n    {\"name\": \"CustomerMap\", \"type\": {\n        \"type\" : \"record\",\n        \"name\" : \"CustomerMap\",\n        \"namespace\" : \"org.onap.policy.apex.domains.vpn\",\n        \"fields\" : [ ]\n      }\n    }\n  ]\n}"
+          }
+        }
+      ]
+    }
+  }
+}
index e51fde6..7b72b4b 100644 (file)
 {
-   "apexPolicyModel" : {
-      "key" : {
-         "name" : "FLBPolicy_PolicyModel",
-         "version" : "0.0.1"
-      },
-      "keyInformation" : {
-         "key" : {
-            "name" : "FLBPolicy_PolicyModel_KeyInfo",
-            "version" : "0.0.1"
-         },
-         "keyInfoMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "Adj_CM_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Adj_CM_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "079f22b3-ae0f-4021-b3b2-4c30d30a62b2",
-                  "description" : "Generated description for concept referred to by key \"Adj_CM_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Adj_KPI_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Adj_KPI_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "b30510dc-980b-4425-8629-d564602245bb",
-                  "description" : "Generated description for concept referred to by key \"Adj_KPI_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Adjacency_4G_Name_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Adjacency_4G_Name_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0e1c57df-6e40-4610-9e47-c481615c2b4b",
-                  "description" : "Generated description for concept referred to by key \"Adjacency_4G_Name_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "CellA_CM_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "CellA_CM_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "cc342ac1-6e79-420f-afe1-7968fc0dc2b6",
-                  "description" : "Generated description for concept referred to by key \"CellA_CM_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "CellA_KPI_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "CellA_KPI_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "879f7be0-07ff-4511-9016-2b80021cf10f",
-                  "description" : "Generated description for concept referred to by key \"CellA_KPI_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "CellA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "CellA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "a06af82c-d298-4531-b1eb-68795573c82a",
-                  "description" : "Generated description for concept referred to by key \"CellA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "CellB_CM_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "CellB_CM_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "b357ec78-e469-43aa-9bc9-29097108c10b",
-                  "description" : "Generated description for concept referred to by key \"CellB_CM_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "CellB_KPI_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "CellB_KPI_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "b89da6a0-1e86-4393-a5e0-7f1a24b34f62",
-                  "description" : "Generated description for concept referred to by key \"CellB_KPI_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "CellB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "CellB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "fc1922ed-b8a3-4544-9cd9-4f0400b92af8",
-                  "description" : "Generated description for concept referred to by key \"CellB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "ENABLE_CONGESTION_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "ENABLE_CONGESTION_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "f437e1ad-27d9-4b55-b961-46ca6750288b",
-                  "description" : "Generated description for concept referred to by key \"ENABLE_CONGESTION_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "ExternalBag0",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "ExternalBag0",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "938c0553-51ec-4846-bae1-972ed3c4d552",
-                  "description" : "Generated description for concept referred to by key \"ExternalBag0:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "ExternalBag1",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "ExternalBag1",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "a631e868-7da5-4378-9cbd-a3d06dee3c81",
-                  "description" : "Generated description for concept referred to by key \"ExternalBag1:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "ExternalBag2",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "ExternalBag2",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "ee693749-0d79-49ac-9027-19056b44d5ce",
-                  "description" : "Generated description for concept referred to by key \"ExternalBag2:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "ExternalBag3",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "ExternalBag3",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "ef711a31-c366-4184-8178-f3fa95f8d2cb",
-                  "description" : "Generated description for concept referred to by key \"ExternalBag3:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FREQ_REL_TYPE_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FREQ_REL_TYPE_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "300185af-a93a-4e90-ae7d-44d9241d2760",
-                  "description" : "Generated description for concept referred to by key \"FREQ_REL_TYPE_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FooBar_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FooBar_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "bc32c94f-d2d0-4dfb-b5bb-6dac8aa19618",
-                  "description" : "Generated description for concept referred to by key \"FooBar_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "HO_EXEC_FAIL_RATE_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "HO_EXEC_FAIL_RATE_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "3649128f-db51-47fd-9d6c-e78e8ca0f26b",
-                  "description" : "Generated description for concept referred to by key \"HO_EXEC_FAIL_RATE_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "HO_EXEC_FAIL_RATE_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "HO_EXEC_FAIL_RATE_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "a089892e-5914-4375-879d-05cdad521c94",
-                  "description" : "Generated description for concept referred to by key \"HO_EXEC_FAIL_RATE_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "LOW_CQI_SAMPLES_RATE_HO_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LOW_CQI_SAMPLES_RATE_HO_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "567f0726-593f-4093-bab4-cf9a0eb4541f",
-                  "description" : "Generated description for concept referred to by key \"LOW_CQI_SAMPLES_RATE_HO_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "LOW_CQI_SAMPLES_RATE_HO_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LOW_CQI_SAMPLES_RATE_HO_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "75f08508-b4f3-40bd-a171-224da6e6f132",
-                  "description" : "Generated description for concept referred to by key \"LOW_CQI_SAMPLES_RATE_HO_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0a1fef5c-14f3-4357-a128-339e2515bd0a",
-                  "description" : "Generated description for concept referred to by key \"LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "06227743-177e-49fe-9ed7-587e878b57f9",
-                  "description" : "Generated description for concept referred to by key \"LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_PolicyModel",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_PolicyModel",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "5cc28437-d07a-4cd1-a223-38360763ac77",
-                  "description" : "Generated description for concept referred to by key \"FLBPolicy_PolicyModel:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_PolicyModel_Albums",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_PolicyModel_Albums",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "cad40903-a798-42a1-94f6-84d290c646de",
-                  "description" : "Generated description for concept referred to by key \"FLBPolicy_PolicyModel_Albums:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_PolicyModel_Events",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_PolicyModel_Events",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0f44b5c9-22a4-4873-aaa1-f1b80de5aa4b",
-                  "description" : "Generated description for concept referred to by key \"FLBPolicy_PolicyModel_Events:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_PolicyModel_KeyInfo",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_PolicyModel_KeyInfo",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "5db641cb-d898-4f67-9f64-7dde5ecb12ae",
-                  "description" : "Generated description for concept referred to by key \"FLBPolicy_PolicyModel_KeyInfo:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_PolicyModel_Policies",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_PolicyModel_Policies",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "f12f6531-bf2f-4c70-b4fe-346d945e52f1",
-                  "description" : "Generated description for concept referred to by key \"FLBPolicy_PolicyModel_Policies:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_PolicyModel_Schemas",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_PolicyModel_Schemas",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "f0e76392-4541-4fdf-910b-bbf4ee19ff2c",
-                  "description" : "Generated description for concept referred to by key \"FLBPolicy_PolicyModel_Schemas:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_PolicyModel_Tasks",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_PolicyModel_Tasks",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "c65233c8-634a-4729-8d74-69061cd62c51",
-                  "description" : "Generated description for concept referred to by key \"FLBPolicy_PolicyModel_Tasks:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "OCN_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "OCN_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "a6444cc9-b507-4567-981b-c80cf7a4f438",
-                  "description" : "Generated description for concept referred to by key \"OCN_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "OCN_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "OCN_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "d7a7d62a-d374-4ec4-a6e5-9a272470b161",
-                  "description" : "Generated description for concept referred to by key \"OCN_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "PDCCH_CCE_HIGH_LOAD_DELTA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "PDCCH_CCE_HIGH_LOAD_DELTA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "9ba290d5-c39d-45f0-b18e-0747829eec29",
-                  "description" : "Generated description for concept referred to by key \"PDCCH_CCE_HIGH_LOAD_DELTA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_HO_EXEC_FAIL_RATE_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_HO_EXEC_FAIL_RATE_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "97f57551-7173-4ac7-9d1a-1582d2fc74a2",
-                  "description" : "Generated description for concept referred to by key \"REL_HO_EXEC_FAIL_RATE_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_HO_EXEC_FAIL_RATE_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_HO_EXEC_FAIL_RATE_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "ab468764-2672-4b6c-b25e-3f65ee92871e",
-                  "description" : "Generated description for concept referred to by key \"REL_HO_EXEC_FAIL_RATE_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "eb6d0c05-df8c-4b4c-83b3-5807cf7a0a8d",
-                  "description" : "Generated description for concept referred to by key \"REL_HO_EXEC_FAIL_RATE_HIGH_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "8476c5a3-612a-4dc0-aad1-ed136322eea7",
-                  "description" : "Generated description for concept referred to by key \"REL_HO_EXEC_FAIL_RATE_HIGH_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "22564698-5c73-442c-8c44-c7bf9a124bbb",
-                  "description" : "Generated description for concept referred to by key \"REL_HO_EXEC_FAIL_RATE_LOW_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "09c76386-9d9c-42ce-b969-c85d8e60fd6b",
-                  "description" : "Generated description for concept referred to by key \"REL_HO_EXEC_FAIL_RATE_LOW_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "ca221793-e153-49d2-8c14-6fec2c294159",
-                  "description" : "Generated description for concept referred to by key \"REL_NUM_HO_WITH_EVENTS_AB_IN_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_NUM_HO_WITH_EVENTS_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_NUM_HO_WITH_EVENTS_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "93d6d2c2-b98e-4c9a-9841-22858ced9ca9",
-                  "description" : "Generated description for concept referred to by key \"REL_NUM_HO_WITH_EVENTS_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "9fb35bc3-cf7d-4516-b643-4d90315f4aac",
-                  "description" : "Generated description for concept referred to by key \"REL_NUM_HO_WITH_EVENTS_BA_IN_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_NUM_HO_WITH_EVENTS_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_NUM_HO_WITH_EVENTS_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "18975ab6-836c-4901-9ae2-e189e0277343",
-                  "description" : "Generated description for concept referred to by key \"REL_NUM_HO_WITH_EVENTS_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_EARLY_HO_RATE_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_EARLY_HO_RATE_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "1c28ffda-7661-4af7-a60d-e01a8d8bad4d",
-                  "description" : "Generated description for concept referred to by key \"REL_TOO_EARLY_HO_RATE_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_EARLY_HO_RATE_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_EARLY_HO_RATE_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "40bc34bb-9ef0-4763-9f73-1cb915bc316d",
-                  "description" : "Generated description for concept referred to by key \"REL_TOO_EARLY_HO_RATE_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "1603fb66-0c15-4ccb-9c1a-3d4c88fe0501",
-                  "description" : "Generated description for concept referred to by key \"REL_TOO_EARLY_HO_RATE_HIGH_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "dbc0cd42-4d58-4a1c-a41f-4b0e3c039fc0",
-                  "description" : "Generated description for concept referred to by key \"REL_TOO_EARLY_HO_RATE_HIGH_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "f22a8dbc-e6d7-4a9f-8702-a4cbe41f6e54",
-                  "description" : "Generated description for concept referred to by key \"REL_TOO_EARLY_HO_RATE_LOW_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "6445553b-73e6-43b5-b29d-b1bdf6df73cc",
-                  "description" : "Generated description for concept referred to by key \"REL_TOO_EARLY_HO_RATE_LOW_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_LATE_HO_RATE_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_LATE_HO_RATE_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "6f374a84-bafa-413f-a3ae-32e446646fe9",
-                  "description" : "Generated description for concept referred to by key \"REL_TOO_LATE_HO_RATE_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_LATE_HO_RATE_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_LATE_HO_RATE_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "521fb432-25b7-499f-80ff-1a0b7bad69a2",
-                  "description" : "Generated description for concept referred to by key \"REL_TOO_LATE_HO_RATE_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "32488185-fc0f-45e4-84e3-adcbfb9adf83",
-                  "description" : "Generated description for concept referred to by key \"REL_TOO_LATE_HO_RATE_HIGH_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "cbdfec23-6f95-4b92-8939-3a32603db654",
-                  "description" : "Generated description for concept referred to by key \"REL_TOO_LATE_HO_RATE_HIGH_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_LATE_HO_RATE_LOW_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_LATE_HO_RATE_LOW_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "b9089519-42a0-4564-9388-e841ec53033b",
-                  "description" : "Generated description for concept referred to by key \"REL_TOO_LATE_HO_RATE_LOW_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_LATE_HO_RATE_LOW_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_LATE_HO_RATE_LOW_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "6e8bc992-2a75-4121-8246-38995e9caf0c",
-                  "description" : "Generated description for concept referred to by key \"REL_TOO_LATE_HO_RATE_LOW_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "RRC_CONGESTION_DELTA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "RRC_CONGESTION_DELTA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "31107997-a363-4a69-a322-82e3e0fd5dd2",
-                  "description" : "Generated description for concept referred to by key \"RRC_CONGESTION_DELTA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "SB_OCN_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SB_OCN_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "30401bd4-108c-4a99-9446-6c6a4b226de7",
-                  "description" : "Generated description for concept referred to by key \"SB_OCN_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "SB_OCN_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SB_OCN_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "88647bbf-111b-4a17-8383-e437c7d45af4",
-                  "description" : "Generated description for concept referred to by key \"SB_OCN_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "SET_TYPE_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SET_TYPE_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0f772d7a-1386-438b-95c0-dbbc05b78183",
-                  "description" : "Generated description for concept referred to by key \"SET_TYPE_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TOO_EARLY_HO_RATE_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TOO_EARLY_HO_RATE_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0eb28504-3bcf-44a3-8ceb-2bbea3bfc93c",
-                  "description" : "Generated description for concept referred to by key \"TOO_EARLY_HO_RATE_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TOO_EARLY_HO_RATE_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TOO_EARLY_HO_RATE_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "d940ffd6-c000-4c28-b37b-658e432dbe11",
-                  "description" : "Generated description for concept referred to by key \"TOO_EARLY_HO_RATE_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TOO_LATE_HO_RATE_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TOO_LATE_HO_RATE_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "d01604b4-aeb4-49af-bde3-ad8ed9366e62",
-                  "description" : "Generated description for concept referred to by key \"TOO_LATE_HO_RATE_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TOO_LATE_HO_RATE_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TOO_LATE_HO_RATE_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0ce0d4a3-65ce-4b05-8aca-ddae63a2639b",
-                  "description" : "Generated description for concept referred to by key \"TOO_LATE_HO_RATE_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TimeStamp_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TimeStamp_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "2fbaea79-62fb-44ce-9810-8bd2d2fd77f9",
-                  "description" : "Generated description for concept referred to by key \"TimeStamp_type:0.0.1\""
-               }
-            } ]
-         }
-      },
-      "policies" : {
-         "key" : {
-            "name" : "FLBPolicy_PolicyModel_Policies",
-            "version" : "0.0.1"
-         },
-         "policyMap" : {
-            "entry" : [ ]
-         }
-      },
-      "tasks" : {
-         "key" : {
-            "name" : "FLBPolicy_PolicyModel_Tasks",
-            "version" : "0.0.1"
-         },
-         "taskMap" : {
-            "entry" : [ ]
-         }
-      },
-      "events" : {
-         "key" : {
-            "name" : "FLBPolicy_PolicyModel_Events",
-            "version" : "0.0.1"
-         },
-         "eventMap" : {
-            "entry" : [ ]
-         }
-      },
-      "albums" : {
-         "key" : {
-            "name" : "FLBPolicy_PolicyModel_Albums",
-            "version" : "0.0.1"
-         },
-         "albums" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "ExternalBag0",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "ExternalBag0",
-                     "version" : "0.0.1"
-                  },
-                  "scope" : "EXTERNAL",
-                  "isWritable" : false,
-                  "itemSchema" : {
-                     "name" : "OCN_AB_type",
-                     "version" : "0.0.1"
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "ExternalBag1",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "ExternalBag1",
-                     "version" : "0.0.1"
-                  },
-                  "scope" : "EXTERNAL",
-                  "isWritable" : false,
-                  "itemSchema" : {
-                     "name" : "CellA_CM_type",
-                     "version" : "0.0.1"
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "ExternalBag2",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "ExternalBag2",
-                     "version" : "0.0.1"
-                  },
-                  "scope" : "EXTERNAL",
-                  "isWritable" : false,
-                  "itemSchema" : {
-                     "name" : "TOO_EARLY_HO_RATE_AB_type",
-                     "version" : "0.0.1"
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "ExternalBag3",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "ExternalBag3",
-                     "version" : "0.0.1"
-                  },
-                  "scope" : "EXTERNAL",
-                  "isWritable" : false,
-                  "itemSchema" : {
-                     "name" : "FooBar_type",
-                     "version" : "0.0.1"
-                  }
-               }
-            } ]
-         }
-      },
-      "schemas" : {
-         "key" : {
-            "name" : "FLBPolicy_PolicyModel_Schemas",
-            "version" : "0.0.1"
-         },
-         "schemas" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "Adj_CM_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Adj_CM_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.util.HashMap<String,String>"
-               }
-            }, {
-               "key" : {
-                  "name" : "Adj_KPI_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Adj_KPI_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.util.HashMap<String,String>"
-               }
-            }, {
-               "key" : {
-                  "name" : "Adjacency_4G_Name_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Adjacency_4G_Name_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.String"
-               }
-            }, {
-               "key" : {
-                  "name" : "CellA_CM_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "CellA_CM_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.util.HashMap<String,String>"
-               }
-            }, {
-               "key" : {
-                  "name" : "CellA_KPI_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "CellA_KPI_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.util.HashMap<String,String>"
-               }
-            }, {
-               "key" : {
-                  "name" : "CellA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "CellA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.String"
-               }
-            }, {
-               "key" : {
-                  "name" : "CellB_CM_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "CellB_CM_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.util.HashMap<String,String>"
-               }
-            }, {
-               "key" : {
-                  "name" : "CellB_KPI_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "CellB_KPI_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.util.HashMap<String,String>"
-               }
-            }, {
-               "key" : {
-                  "name" : "CellB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "CellB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.String"
-               }
-            }, {
-               "key" : {
-                  "name" : "ENABLE_CONGESTION_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "ENABLE_CONGESTION_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Boolean"
-               }
-            }, {
-               "key" : {
-                  "name" : "FREQ_REL_TYPE_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FREQ_REL_TYPE_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.String"
-               }
-            }, {
-               "key" : {
-                  "name" : "FooBar_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FooBar_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "org.onap.policy.apex.sample.sampletypes.sampletypes.Foo"
-               }
-            }, {
-               "key" : {
-                  "name" : "HO_EXEC_FAIL_RATE_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "HO_EXEC_FAIL_RATE_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "HO_EXEC_FAIL_RATE_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "HO_EXEC_FAIL_RATE_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "LOW_CQI_SAMPLES_RATE_HO_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LOW_CQI_SAMPLES_RATE_HO_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "LOW_CQI_SAMPLES_RATE_HO_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LOW_CQI_SAMPLES_RATE_HO_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "OCN_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "OCN_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Double"
-               }
-            }, {
-               "key" : {
-                  "name" : "OCN_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "OCN_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Double"
-               }
-            }, {
-               "key" : {
-                  "name" : "PDCCH_CCE_HIGH_LOAD_DELTA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "PDCCH_CCE_HIGH_LOAD_DELTA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_HO_EXEC_FAIL_RATE_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_HO_EXEC_FAIL_RATE_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Boolean"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_HO_EXEC_FAIL_RATE_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_HO_EXEC_FAIL_RATE_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Boolean"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_NUM_HO_WITH_EVENTS_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_NUM_HO_WITH_EVENTS_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Boolean"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_NUM_HO_WITH_EVENTS_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_NUM_HO_WITH_EVENTS_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Boolean"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_EARLY_HO_RATE_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_EARLY_HO_RATE_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Boolean"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_EARLY_HO_RATE_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_EARLY_HO_RATE_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Boolean"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_LATE_HO_RATE_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_LATE_HO_RATE_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Boolean"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_LATE_HO_RATE_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_LATE_HO_RATE_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Boolean"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_LATE_HO_RATE_LOW_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_LATE_HO_RATE_LOW_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_LATE_HO_RATE_LOW_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_LATE_HO_RATE_LOW_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "RRC_CONGESTION_DELTA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "RRC_CONGESTION_DELTA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "SB_OCN_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SB_OCN_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.String"
-               }
-            }, {
-               "key" : {
-                  "name" : "SB_OCN_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SB_OCN_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.String"
-               }
-            }, {
-               "key" : {
-                  "name" : "SET_TYPE_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SET_TYPE_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.String"
-               }
-            }, {
-               "key" : {
-                  "name" : "TOO_EARLY_HO_RATE_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TOO_EARLY_HO_RATE_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "TOO_EARLY_HO_RATE_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TOO_EARLY_HO_RATE_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "TOO_LATE_HO_RATE_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TOO_LATE_HO_RATE_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "TOO_LATE_HO_RATE_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TOO_LATE_HO_RATE_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "TimeStamp_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TimeStamp_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Long"
-               }
-            } ]
-         }
-      }
-   }
-}
\ No newline at end of file
+  "key": {
+    "name": "FLBPolicy_PolicyModel",
+    "version": "0.0.1"
+  },
+  "keyInformation": {
+    "key": {
+      "name": "FLBPolicy_PolicyModel_KeyInfo",
+      "version": "0.0.1"
+    },
+    "keyInfoMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "Adj_CM_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Adj_CM_type",
+              "version": "0.0.1"
+            },
+            "UUID": "079f22b3-ae0f-4021-b3b2-4c30d30a62b2",
+            "description": "Generated description for concept referred to by key \"Adj_CM_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Adj_KPI_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Adj_KPI_type",
+              "version": "0.0.1"
+            },
+            "UUID": "b30510dc-980b-4425-8629-d564602245bb",
+            "description": "Generated description for concept referred to by key \"Adj_KPI_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Adjacency_4G_Name_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Adjacency_4G_Name_type",
+              "version": "0.0.1"
+            },
+            "UUID": "0e1c57df-6e40-4610-9e47-c481615c2b4b",
+            "description": "Generated description for concept referred to by key \"Adjacency_4G_Name_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "CellA_CM_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "CellA_CM_type",
+              "version": "0.0.1"
+            },
+            "UUID": "cc342ac1-6e79-420f-afe1-7968fc0dc2b6",
+            "description": "Generated description for concept referred to by key \"CellA_CM_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "CellA_KPI_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "CellA_KPI_type",
+              "version": "0.0.1"
+            },
+            "UUID": "879f7be0-07ff-4511-9016-2b80021cf10f",
+            "description": "Generated description for concept referred to by key \"CellA_KPI_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "CellA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "CellA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "a06af82c-d298-4531-b1eb-68795573c82a",
+            "description": "Generated description for concept referred to by key \"CellA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "CellB_CM_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "CellB_CM_type",
+              "version": "0.0.1"
+            },
+            "UUID": "b357ec78-e469-43aa-9bc9-29097108c10b",
+            "description": "Generated description for concept referred to by key \"CellB_CM_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "CellB_KPI_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "CellB_KPI_type",
+              "version": "0.0.1"
+            },
+            "UUID": "b89da6a0-1e86-4393-a5e0-7f1a24b34f62",
+            "description": "Generated description for concept referred to by key \"CellB_KPI_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "CellB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "CellB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "fc1922ed-b8a3-4544-9cd9-4f0400b92af8",
+            "description": "Generated description for concept referred to by key \"CellB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "ENABLE_CONGESTION_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "ENABLE_CONGESTION_type",
+              "version": "0.0.1"
+            },
+            "UUID": "f437e1ad-27d9-4b55-b961-46ca6750288b",
+            "description": "Generated description for concept referred to by key \"ENABLE_CONGESTION_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "ExternalBag0",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "ExternalBag0",
+              "version": "0.0.1"
+            },
+            "UUID": "938c0553-51ec-4846-bae1-972ed3c4d552",
+            "description": "Generated description for concept referred to by key \"ExternalBag0:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "ExternalBag1",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "ExternalBag1",
+              "version": "0.0.1"
+            },
+            "UUID": "a631e868-7da5-4378-9cbd-a3d06dee3c81",
+            "description": "Generated description for concept referred to by key \"ExternalBag1:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "ExternalBag2",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "ExternalBag2",
+              "version": "0.0.1"
+            },
+            "UUID": "ee693749-0d79-49ac-9027-19056b44d5ce",
+            "description": "Generated description for concept referred to by key \"ExternalBag2:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "ExternalBag3",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "ExternalBag3",
+              "version": "0.0.1"
+            },
+            "UUID": "ef711a31-c366-4184-8178-f3fa95f8d2cb",
+            "description": "Generated description for concept referred to by key \"ExternalBag3:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FREQ_REL_TYPE_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FREQ_REL_TYPE_type",
+              "version": "0.0.1"
+            },
+            "UUID": "300185af-a93a-4e90-ae7d-44d9241d2760",
+            "description": "Generated description for concept referred to by key \"FREQ_REL_TYPE_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FooBar_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FooBar_type",
+              "version": "0.0.1"
+            },
+            "UUID": "bc32c94f-d2d0-4dfb-b5bb-6dac8aa19618",
+            "description": "Generated description for concept referred to by key \"FooBar_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "HO_EXEC_FAIL_RATE_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "HO_EXEC_FAIL_RATE_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "3649128f-db51-47fd-9d6c-e78e8ca0f26b",
+            "description": "Generated description for concept referred to by key \"HO_EXEC_FAIL_RATE_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "HO_EXEC_FAIL_RATE_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "HO_EXEC_FAIL_RATE_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "a089892e-5914-4375-879d-05cdad521c94",
+            "description": "Generated description for concept referred to by key \"HO_EXEC_FAIL_RATE_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "LOW_CQI_SAMPLES_RATE_HO_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LOW_CQI_SAMPLES_RATE_HO_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "567f0726-593f-4093-bab4-cf9a0eb4541f",
+            "description": "Generated description for concept referred to by key \"LOW_CQI_SAMPLES_RATE_HO_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "LOW_CQI_SAMPLES_RATE_HO_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LOW_CQI_SAMPLES_RATE_HO_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "75f08508-b4f3-40bd-a171-224da6e6f132",
+            "description": "Generated description for concept referred to by key \"LOW_CQI_SAMPLES_RATE_HO_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "0a1fef5c-14f3-4357-a128-339e2515bd0a",
+            "description": "Generated description for concept referred to by key \"LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "06227743-177e-49fe-9ed7-587e878b57f9",
+            "description": "Generated description for concept referred to by key \"LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_PolicyModel",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_PolicyModel",
+              "version": "0.0.1"
+            },
+            "UUID": "5cc28437-d07a-4cd1-a223-38360763ac77",
+            "description": "Generated description for concept referred to by key \"FLBPolicy_PolicyModel:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_PolicyModel_Albums",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_PolicyModel_Albums",
+              "version": "0.0.1"
+            },
+            "UUID": "cad40903-a798-42a1-94f6-84d290c646de",
+            "description": "Generated description for concept referred to by key \"FLBPolicy_PolicyModel_Albums:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_PolicyModel_Events",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_PolicyModel_Events",
+              "version": "0.0.1"
+            },
+            "UUID": "0f44b5c9-22a4-4873-aaa1-f1b80de5aa4b",
+            "description": "Generated description for concept referred to by key \"FLBPolicy_PolicyModel_Events:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_PolicyModel_KeyInfo",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_PolicyModel_KeyInfo",
+              "version": "0.0.1"
+            },
+            "UUID": "5db641cb-d898-4f67-9f64-7dde5ecb12ae",
+            "description": "Generated description for concept referred to by key \"FLBPolicy_PolicyModel_KeyInfo:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_PolicyModel_Policies",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_PolicyModel_Policies",
+              "version": "0.0.1"
+            },
+            "UUID": "f12f6531-bf2f-4c70-b4fe-346d945e52f1",
+            "description": "Generated description for concept referred to by key \"FLBPolicy_PolicyModel_Policies:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_PolicyModel_Schemas",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_PolicyModel_Schemas",
+              "version": "0.0.1"
+            },
+            "UUID": "f0e76392-4541-4fdf-910b-bbf4ee19ff2c",
+            "description": "Generated description for concept referred to by key \"FLBPolicy_PolicyModel_Schemas:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_PolicyModel_Tasks",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_PolicyModel_Tasks",
+              "version": "0.0.1"
+            },
+            "UUID": "c65233c8-634a-4729-8d74-69061cd62c51",
+            "description": "Generated description for concept referred to by key \"FLBPolicy_PolicyModel_Tasks:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "OCN_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "OCN_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "a6444cc9-b507-4567-981b-c80cf7a4f438",
+            "description": "Generated description for concept referred to by key \"OCN_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "OCN_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "OCN_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "d7a7d62a-d374-4ec4-a6e5-9a272470b161",
+            "description": "Generated description for concept referred to by key \"OCN_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "PDCCH_CCE_HIGH_LOAD_DELTA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "PDCCH_CCE_HIGH_LOAD_DELTA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "9ba290d5-c39d-45f0-b18e-0747829eec29",
+            "description": "Generated description for concept referred to by key \"PDCCH_CCE_HIGH_LOAD_DELTA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_HO_EXEC_FAIL_RATE_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_HO_EXEC_FAIL_RATE_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "97f57551-7173-4ac7-9d1a-1582d2fc74a2",
+            "description": "Generated description for concept referred to by key \"REL_HO_EXEC_FAIL_RATE_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_HO_EXEC_FAIL_RATE_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_HO_EXEC_FAIL_RATE_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "ab468764-2672-4b6c-b25e-3f65ee92871e",
+            "description": "Generated description for concept referred to by key \"REL_HO_EXEC_FAIL_RATE_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "eb6d0c05-df8c-4b4c-83b3-5807cf7a0a8d",
+            "description": "Generated description for concept referred to by key \"REL_HO_EXEC_FAIL_RATE_HIGH_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "8476c5a3-612a-4dc0-aad1-ed136322eea7",
+            "description": "Generated description for concept referred to by key \"REL_HO_EXEC_FAIL_RATE_HIGH_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "22564698-5c73-442c-8c44-c7bf9a124bbb",
+            "description": "Generated description for concept referred to by key \"REL_HO_EXEC_FAIL_RATE_LOW_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "09c76386-9d9c-42ce-b969-c85d8e60fd6b",
+            "description": "Generated description for concept referred to by key \"REL_HO_EXEC_FAIL_RATE_LOW_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
+              "version": "0.0.1"
+            },
+            "UUID": "ca221793-e153-49d2-8c14-6fec2c294159",
+            "description": "Generated description for concept referred to by key \"REL_NUM_HO_WITH_EVENTS_AB_IN_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_NUM_HO_WITH_EVENTS_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_NUM_HO_WITH_EVENTS_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "93d6d2c2-b98e-4c9a-9841-22858ced9ca9",
+            "description": "Generated description for concept referred to by key \"REL_NUM_HO_WITH_EVENTS_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
+              "version": "0.0.1"
+            },
+            "UUID": "9fb35bc3-cf7d-4516-b643-4d90315f4aac",
+            "description": "Generated description for concept referred to by key \"REL_NUM_HO_WITH_EVENTS_BA_IN_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_NUM_HO_WITH_EVENTS_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_NUM_HO_WITH_EVENTS_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "18975ab6-836c-4901-9ae2-e189e0277343",
+            "description": "Generated description for concept referred to by key \"REL_NUM_HO_WITH_EVENTS_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_EARLY_HO_RATE_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_EARLY_HO_RATE_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "1c28ffda-7661-4af7-a60d-e01a8d8bad4d",
+            "description": "Generated description for concept referred to by key \"REL_TOO_EARLY_HO_RATE_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_EARLY_HO_RATE_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_EARLY_HO_RATE_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "40bc34bb-9ef0-4763-9f73-1cb915bc316d",
+            "description": "Generated description for concept referred to by key \"REL_TOO_EARLY_HO_RATE_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "1603fb66-0c15-4ccb-9c1a-3d4c88fe0501",
+            "description": "Generated description for concept referred to by key \"REL_TOO_EARLY_HO_RATE_HIGH_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "dbc0cd42-4d58-4a1c-a41f-4b0e3c039fc0",
+            "description": "Generated description for concept referred to by key \"REL_TOO_EARLY_HO_RATE_HIGH_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "f22a8dbc-e6d7-4a9f-8702-a4cbe41f6e54",
+            "description": "Generated description for concept referred to by key \"REL_TOO_EARLY_HO_RATE_LOW_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "6445553b-73e6-43b5-b29d-b1bdf6df73cc",
+            "description": "Generated description for concept referred to by key \"REL_TOO_EARLY_HO_RATE_LOW_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_LATE_HO_RATE_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_LATE_HO_RATE_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "6f374a84-bafa-413f-a3ae-32e446646fe9",
+            "description": "Generated description for concept referred to by key \"REL_TOO_LATE_HO_RATE_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_LATE_HO_RATE_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_LATE_HO_RATE_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "521fb432-25b7-499f-80ff-1a0b7bad69a2",
+            "description": "Generated description for concept referred to by key \"REL_TOO_LATE_HO_RATE_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "32488185-fc0f-45e4-84e3-adcbfb9adf83",
+            "description": "Generated description for concept referred to by key \"REL_TOO_LATE_HO_RATE_HIGH_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "cbdfec23-6f95-4b92-8939-3a32603db654",
+            "description": "Generated description for concept referred to by key \"REL_TOO_LATE_HO_RATE_HIGH_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_LATE_HO_RATE_LOW_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_LATE_HO_RATE_LOW_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "b9089519-42a0-4564-9388-e841ec53033b",
+            "description": "Generated description for concept referred to by key \"REL_TOO_LATE_HO_RATE_LOW_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_LATE_HO_RATE_LOW_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_LATE_HO_RATE_LOW_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "6e8bc992-2a75-4121-8246-38995e9caf0c",
+            "description": "Generated description for concept referred to by key \"REL_TOO_LATE_HO_RATE_LOW_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "RRC_CONGESTION_DELTA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "RRC_CONGESTION_DELTA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "31107997-a363-4a69-a322-82e3e0fd5dd2",
+            "description": "Generated description for concept referred to by key \"RRC_CONGESTION_DELTA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "SB_OCN_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SB_OCN_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "30401bd4-108c-4a99-9446-6c6a4b226de7",
+            "description": "Generated description for concept referred to by key \"SB_OCN_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "SB_OCN_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SB_OCN_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "88647bbf-111b-4a17-8383-e437c7d45af4",
+            "description": "Generated description for concept referred to by key \"SB_OCN_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "SET_TYPE_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SET_TYPE_type",
+              "version": "0.0.1"
+            },
+            "UUID": "0f772d7a-1386-438b-95c0-dbbc05b78183",
+            "description": "Generated description for concept referred to by key \"SET_TYPE_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TOO_EARLY_HO_RATE_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TOO_EARLY_HO_RATE_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "0eb28504-3bcf-44a3-8ceb-2bbea3bfc93c",
+            "description": "Generated description for concept referred to by key \"TOO_EARLY_HO_RATE_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TOO_EARLY_HO_RATE_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TOO_EARLY_HO_RATE_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "d940ffd6-c000-4c28-b37b-658e432dbe11",
+            "description": "Generated description for concept referred to by key \"TOO_EARLY_HO_RATE_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TOO_LATE_HO_RATE_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TOO_LATE_HO_RATE_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "d01604b4-aeb4-49af-bde3-ad8ed9366e62",
+            "description": "Generated description for concept referred to by key \"TOO_LATE_HO_RATE_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TOO_LATE_HO_RATE_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TOO_LATE_HO_RATE_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "0ce0d4a3-65ce-4b05-8aca-ddae63a2639b",
+            "description": "Generated description for concept referred to by key \"TOO_LATE_HO_RATE_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TimeStamp_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TimeStamp_type",
+              "version": "0.0.1"
+            },
+            "UUID": "2fbaea79-62fb-44ce-9810-8bd2d2fd77f9",
+            "description": "Generated description for concept referred to by key \"TimeStamp_type:0.0.1\""
+          }
+        }
+      ]
+    }
+  },
+  "policies": {
+    "key": {
+      "name": "FLBPolicy_PolicyModel_Policies",
+      "version": "0.0.1"
+    },
+    "policyMap": {
+      "entry": []
+    }
+  },
+  "tasks": {
+    "key": {
+      "name": "FLBPolicy_PolicyModel_Tasks",
+      "version": "0.0.1"
+    },
+    "taskMap": {
+      "entry": []
+    }
+  },
+  "events": {
+    "key": {
+      "name": "FLBPolicy_PolicyModel_Events",
+      "version": "0.0.1"
+    },
+    "eventMap": {
+      "entry": []
+    }
+  },
+  "albums": {
+    "key": {
+      "name": "FLBPolicy_PolicyModel_Albums",
+      "version": "0.0.1"
+    },
+    "albums": {
+      "entry": [
+        {
+          "key": {
+            "name": "ExternalBag0",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "ExternalBag0",
+              "version": "0.0.1"
+            },
+            "scope": "EXTERNAL",
+            "isWritable": false,
+            "itemSchema": {
+              "name": "OCN_AB_type",
+              "version": "0.0.1"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "ExternalBag1",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "ExternalBag1",
+              "version": "0.0.1"
+            },
+            "scope": "EXTERNAL",
+            "isWritable": false,
+            "itemSchema": {
+              "name": "CellA_CM_type",
+              "version": "0.0.1"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "ExternalBag2",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "ExternalBag2",
+              "version": "0.0.1"
+            },
+            "scope": "EXTERNAL",
+            "isWritable": false,
+            "itemSchema": {
+              "name": "TOO_EARLY_HO_RATE_AB_type",
+              "version": "0.0.1"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "ExternalBag3",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "ExternalBag3",
+              "version": "0.0.1"
+            },
+            "scope": "EXTERNAL",
+            "isWritable": false,
+            "itemSchema": {
+              "name": "FooBar_type",
+              "version": "0.0.1"
+            }
+          }
+        }
+      ]
+    }
+  },
+  "schemas": {
+    "key": {
+      "name": "FLBPolicy_PolicyModel_Schemas",
+      "version": "0.0.1"
+    },
+    "schemas": {
+      "entry": [
+        {
+          "key": {
+            "name": "Adj_CM_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Adj_CM_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.util.HashMap<String,String>"
+          }
+        },
+        {
+          "key": {
+            "name": "Adj_KPI_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Adj_KPI_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.util.HashMap<String,String>"
+          }
+        },
+        {
+          "key": {
+            "name": "Adjacency_4G_Name_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Adjacency_4G_Name_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.String"
+          }
+        },
+        {
+          "key": {
+            "name": "CellA_CM_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "CellA_CM_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.util.HashMap<String,String>"
+          }
+        },
+        {
+          "key": {
+            "name": "CellA_KPI_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "CellA_KPI_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.util.HashMap<String,String>"
+          }
+        },
+        {
+          "key": {
+            "name": "CellA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "CellA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.String"
+          }
+        },
+        {
+          "key": {
+            "name": "CellB_CM_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "CellB_CM_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.util.HashMap<String,String>"
+          }
+        },
+        {
+          "key": {
+            "name": "CellB_KPI_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "CellB_KPI_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.util.HashMap<String,String>"
+          }
+        },
+        {
+          "key": {
+            "name": "CellB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "CellB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.String"
+          }
+        },
+        {
+          "key": {
+            "name": "ENABLE_CONGESTION_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "ENABLE_CONGESTION_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Boolean"
+          }
+        },
+        {
+          "key": {
+            "name": "FREQ_REL_TYPE_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FREQ_REL_TYPE_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.String"
+          }
+        },
+        {
+          "key": {
+            "name": "FooBar_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FooBar_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "org.onap.policy.apex.sample.sampletypes.sampletypes.Foo"
+          }
+        },
+        {
+          "key": {
+            "name": "HO_EXEC_FAIL_RATE_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "HO_EXEC_FAIL_RATE_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "HO_EXEC_FAIL_RATE_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "HO_EXEC_FAIL_RATE_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "LOW_CQI_SAMPLES_RATE_HO_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LOW_CQI_SAMPLES_RATE_HO_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "LOW_CQI_SAMPLES_RATE_HO_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LOW_CQI_SAMPLES_RATE_HO_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "OCN_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "OCN_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Double"
+          }
+        },
+        {
+          "key": {
+            "name": "OCN_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "OCN_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Double"
+          }
+        },
+        {
+          "key": {
+            "name": "PDCCH_CCE_HIGH_LOAD_DELTA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "PDCCH_CCE_HIGH_LOAD_DELTA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_HO_EXEC_FAIL_RATE_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_HO_EXEC_FAIL_RATE_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Boolean"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_HO_EXEC_FAIL_RATE_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_HO_EXEC_FAIL_RATE_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Boolean"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_NUM_HO_WITH_EVENTS_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_NUM_HO_WITH_EVENTS_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Boolean"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_NUM_HO_WITH_EVENTS_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_NUM_HO_WITH_EVENTS_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Boolean"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_EARLY_HO_RATE_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_EARLY_HO_RATE_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Boolean"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_EARLY_HO_RATE_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_EARLY_HO_RATE_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Boolean"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_LATE_HO_RATE_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_LATE_HO_RATE_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Boolean"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_LATE_HO_RATE_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_LATE_HO_RATE_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Boolean"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_LATE_HO_RATE_LOW_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_LATE_HO_RATE_LOW_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_LATE_HO_RATE_LOW_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_LATE_HO_RATE_LOW_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "RRC_CONGESTION_DELTA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "RRC_CONGESTION_DELTA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "SB_OCN_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SB_OCN_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.String"
+          }
+        },
+        {
+          "key": {
+            "name": "SB_OCN_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SB_OCN_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.String"
+          }
+        },
+        {
+          "key": {
+            "name": "SET_TYPE_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SET_TYPE_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.String"
+          }
+        },
+        {
+          "key": {
+            "name": "TOO_EARLY_HO_RATE_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TOO_EARLY_HO_RATE_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "TOO_EARLY_HO_RATE_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TOO_EARLY_HO_RATE_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "TOO_LATE_HO_RATE_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TOO_LATE_HO_RATE_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "TOO_LATE_HO_RATE_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TOO_LATE_HO_RATE_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "TimeStamp_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TimeStamp_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Long"
+          }
+        }
+      ]
+    }
+  }
+}
index b74e234..aa044dd 100644 (file)
 {
-   "apexPolicyModel" : {
-      "key" : {
-         "name" : "FLBPolicy_PolicyModel",
-         "version" : "0.0.1"
-      },
-      "keyInformation" : {
-         "key" : {
-            "name" : "FLBPolicy_PolicyModel_KeyInfo",
-            "version" : "0.0.1"
-         },
-         "keyInfoMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "Adjacency_4G_Name_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Adjacency_4G_Name_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "fa58e9cd-488e-4eec-9ccb-e156f6a43a35",
-                  "description" : "Generated description for concept referred to by key \"Adjacency_4G_Name_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "CellA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "CellA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "c41e1e24-ab71-4dbd-a2b7-7d349bade884",
-                  "description" : "Generated description for concept referred to by key \"CellA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "CellB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "CellB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "f2d43289-fcf7-4c9c-a186-ecd2d49fafa9",
-                  "description" : "Generated description for concept referred to by key \"CellB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "ENABLE_CONGESTION_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "ENABLE_CONGESTION_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "a2217f20-97fd-457e-8f28-30bf0c02068f",
-                  "description" : "Generated description for concept referred to by key \"ENABLE_CONGESTION_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FREQ_REL_TYPE_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FREQ_REL_TYPE_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "628be116-99bb-4c8f-a833-94a452f6a582",
-                  "description" : "Generated description for concept referred to by key \"FREQ_REL_TYPE_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "HO_EXEC_FAIL_RATE_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "HO_EXEC_FAIL_RATE_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "37c742ed-f039-48eb-a20d-2931940f4bf1",
-                  "description" : "Generated description for concept referred to by key \"HO_EXEC_FAIL_RATE_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "HO_EXEC_FAIL_RATE_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "HO_EXEC_FAIL_RATE_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "29c1077f-c382-4520-80b8-9d0ddad7547a",
-                  "description" : "Generated description for concept referred to by key \"HO_EXEC_FAIL_RATE_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "LOW_CQI_SAMPLES_RATE_HO_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LOW_CQI_SAMPLES_RATE_HO_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0de782d4-f6d7-42f1-b3e4-fbc3d917a68b",
-                  "description" : "Generated description for concept referred to by key \"LOW_CQI_SAMPLES_RATE_HO_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "LOW_CQI_SAMPLES_RATE_HO_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LOW_CQI_SAMPLES_RATE_HO_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "d81522cd-b143-4a0c-aedb-271725fc2506",
-                  "description" : "Generated description for concept referred to by key \"LOW_CQI_SAMPLES_RATE_HO_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "828e3584-d194-48d1-8a49-45afb8b0cd5d",
-                  "description" : "Generated description for concept referred to by key \"LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "88d9aaec-c2de-47d1-9264-4318e76ebdee",
-                  "description" : "Generated description for concept referred to by key \"LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_InputEvent",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_InputEvent",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "f99b46f4-42fa-4873-a3f0-663ef950e917",
-                  "description" : "Generated description for concept referred to by key \"FLBPolicy_InputEvent:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_OutputEvent",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_OutputEvent",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "90d481b5-d0df-4167-a14b-6c1fd9ee4a4c",
-                  "description" : "Generated description for concept referred to by key \"FLBPolicy_OutputEvent:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_Policy",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_Policy",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "26c27f19-c56f-4ddc-8561-bfa1a89dc9db",
-                  "description" : "Generated description for concept referred to by key \"FLBPolicy_Policy:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_PolicyModel",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_PolicyModel",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "aeb5ab2b-0b60-41ac-889d-787e3b59fd19",
-                  "description" : "Generated description for concept referred to by key \"FLBPolicy_PolicyModel:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_PolicyModel_Albums",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_PolicyModel_Albums",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "b72eb47e-6b70-419c-ba8d-1ed55a91aa2f",
-                  "description" : "Generated description for concept referred to by key \"FLBPolicy_PolicyModel_Albums:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_PolicyModel_Events",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_PolicyModel_Events",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "952468c2-386e-4984-9f46-8c84208ad9bc",
-                  "description" : "Generated description for concept referred to by key \"FLBPolicy_PolicyModel_Events:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_PolicyModel_KeyInfo",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_PolicyModel_KeyInfo",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0e7c3475-8fbc-446d-afbe-d54ae56fc0ee",
-                  "description" : "Generated description for concept referred to by key \"FLBPolicy_PolicyModel_KeyInfo:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_PolicyModel_Policies",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_PolicyModel_Policies",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "c2130341-3a43-41ae-a942-5aeba3f86724",
-                  "description" : "Generated description for concept referred to by key \"FLBPolicy_PolicyModel_Policies:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_PolicyModel_Schemas",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_PolicyModel_Schemas",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "09dd200b-9280-4f27-a85a-fab9fa276586",
-                  "description" : "Generated description for concept referred to by key \"FLBPolicy_PolicyModel_Schemas:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_PolicyModel_Tasks",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_PolicyModel_Tasks",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "4eb61362-ef5b-454e-b540-e1301df8108b",
-                  "description" : "Generated description for concept referred to by key \"FLBPolicy_PolicyModel_Tasks:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_Task",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_Task",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "76e762b7-8fdf-4d02-b4f3-60bf340997fd",
-                  "description" : "Generated description for concept referred to by key \"FLBPolicy_Task:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_Task_Post",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_Task_Post",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "3252ff86-02ee-4561-a818-4c7a12546045",
-                  "description" : "Generated description for concept referred to by key \"FLBPolicy_Task_Post:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_Task_Pre",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_Task_Pre",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "c4fde272-52f0-4ac0-a37b-a25aa043e122",
-                  "description" : "Generated description for concept referred to by key \"FLBPolicy_Task_Pre:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_fromFuzzy",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_fromFuzzy",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "54b771b4-11af-43eb-94a2-d97e8b585515",
-                  "description" : "Generated description for concept referred to by key \"FLBPolicy_fromFuzzy:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_toFuzzy",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_toFuzzy",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "960205cd-3cf1-4e90-a456-a0ac59bb06d5",
-                  "description" : "Generated description for concept referred to by key \"FLBPolicy_toFuzzy:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "OCN_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "OCN_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0cb3cebd-9f7e-40b6-be2b-83da8a3bb249",
-                  "description" : "Generated description for concept referred to by key \"OCN_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "OCN_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "OCN_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "db41babb-500e-4369-acea-26b312de47c3",
-                  "description" : "Generated description for concept referred to by key \"OCN_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "PDCCH_CCE_HIGH_LOAD_DELTA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "PDCCH_CCE_HIGH_LOAD_DELTA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "c1374266-f148-4c6e-9aa0-eb4ad4e812a0",
-                  "description" : "Generated description for concept referred to by key \"PDCCH_CCE_HIGH_LOAD_DELTA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_HO_EXEC_FAIL_RATE_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_HO_EXEC_FAIL_RATE_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "285b0913-0d66-4546-8893-95bf0d267911",
-                  "description" : "Generated description for concept referred to by key \"REL_HO_EXEC_FAIL_RATE_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_HO_EXEC_FAIL_RATE_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_HO_EXEC_FAIL_RATE_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "1e5556fe-bdff-4520-b8ae-606c4275b4b3",
-                  "description" : "Generated description for concept referred to by key \"REL_HO_EXEC_FAIL_RATE_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "857cd994-c1ce-43b2-94f0-215e824cab75",
-                  "description" : "Generated description for concept referred to by key \"REL_HO_EXEC_FAIL_RATE_HIGH_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "6a9fa224-1568-4da7-be8a-5fc897373f57",
-                  "description" : "Generated description for concept referred to by key \"REL_HO_EXEC_FAIL_RATE_HIGH_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "cec3b03a-7c12-4b37-b60f-79c95a3adb97",
-                  "description" : "Generated description for concept referred to by key \"REL_HO_EXEC_FAIL_RATE_LOW_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "2e0caf46-5081-4a67-bb64-6a4ff2721b6b",
-                  "description" : "Generated description for concept referred to by key \"REL_HO_EXEC_FAIL_RATE_LOW_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "4b96864a-8922-4698-8dba-ba6d1ecc042c",
-                  "description" : "Generated description for concept referred to by key \"REL_NUM_HO_WITH_EVENTS_AB_IN_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_NUM_HO_WITH_EVENTS_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_NUM_HO_WITH_EVENTS_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "670708b1-5bf4-4f0c-b6f1-47affe918580",
-                  "description" : "Generated description for concept referred to by key \"REL_NUM_HO_WITH_EVENTS_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "eacfe8b0-dd88-44b0-8f7d-89bd0fc8cd8a",
-                  "description" : "Generated description for concept referred to by key \"REL_NUM_HO_WITH_EVENTS_BA_IN_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_NUM_HO_WITH_EVENTS_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_NUM_HO_WITH_EVENTS_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "44129948-e185-4a0d-ac60-2851d84384c4",
-                  "description" : "Generated description for concept referred to by key \"REL_NUM_HO_WITH_EVENTS_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_EARLY_HO_RATE_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_EARLY_HO_RATE_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "c76dfe42-a395-4977-b3c7-b9777f2873b3",
-                  "description" : "Generated description for concept referred to by key \"REL_TOO_EARLY_HO_RATE_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_EARLY_HO_RATE_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_EARLY_HO_RATE_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "ec904666-3e58-4d70-badc-aef1212a9b99",
-                  "description" : "Generated description for concept referred to by key \"REL_TOO_EARLY_HO_RATE_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "16f74164-13fe-4964-9ca3-76bf2448d31e",
-                  "description" : "Generated description for concept referred to by key \"REL_TOO_EARLY_HO_RATE_HIGH_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "9ee26f19-efc8-4df2-afef-6f0fb5b7fd41",
-                  "description" : "Generated description for concept referred to by key \"REL_TOO_EARLY_HO_RATE_HIGH_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "18553ab2-fe2b-4068-97eb-084f22e159b9",
-                  "description" : "Generated description for concept referred to by key \"REL_TOO_EARLY_HO_RATE_LOW_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "d91c982c-1e31-499f-9c9f-a98407e24ef3",
-                  "description" : "Generated description for concept referred to by key \"REL_TOO_EARLY_HO_RATE_LOW_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_LATE_HO_RATE_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_LATE_HO_RATE_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "f27118e0-202f-4405-b5fa-98d429ff8f27",
-                  "description" : "Generated description for concept referred to by key \"REL_TOO_LATE_HO_RATE_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_LATE_HO_RATE_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_LATE_HO_RATE_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "11a5c54a-2ce6-4fbc-bc6e-ce4dd7af0a6a",
-                  "description" : "Generated description for concept referred to by key \"REL_TOO_LATE_HO_RATE_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "43e67457-2c69-48ff-90f6-bc5373e45b8d",
-                  "description" : "Generated description for concept referred to by key \"REL_TOO_LATE_HO_RATE_HIGH_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "66664526-6223-41de-af3d-991f415a84ae",
-                  "description" : "Generated description for concept referred to by key \"REL_TOO_LATE_HO_RATE_HIGH_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_LATE_HO_RATE_LOW_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_LATE_HO_RATE_LOW_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "b5d23339-ea3a-414a-a981-b6581dfe7503",
-                  "description" : "Generated description for concept referred to by key \"REL_TOO_LATE_HO_RATE_LOW_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_LATE_HO_RATE_LOW_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_LATE_HO_RATE_LOW_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "a2043cac-1a9b-4e8a-beb9-858eb6fe025f",
-                  "description" : "Generated description for concept referred to by key \"REL_TOO_LATE_HO_RATE_LOW_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "RRC_CONGESTION_DELTA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "RRC_CONGESTION_DELTA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "354b79b0-aebd-4bee-a69b-41f833e71b4d",
-                  "description" : "Generated description for concept referred to by key \"RRC_CONGESTION_DELTA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "SB_OCN_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SB_OCN_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "e9d87f24-c9ec-4e80-8b22-b598b4db11bb",
-                  "description" : "Generated description for concept referred to by key \"SB_OCN_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "SB_OCN_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SB_OCN_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "c53ff327-62dd-4615-ab9f-bafa5977e0ce",
-                  "description" : "Generated description for concept referred to by key \"SB_OCN_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "SET_TYPE_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SET_TYPE_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "452d1d58-6290-42c7-b78e-088cc4f2280b",
-                  "description" : "Generated description for concept referred to by key \"SET_TYPE_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TOO_EARLY_HO_RATE_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TOO_EARLY_HO_RATE_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "f4ef6fe9-93a6-4558-b16b-006d2280c0e1",
-                  "description" : "Generated description for concept referred to by key \"TOO_EARLY_HO_RATE_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TOO_EARLY_HO_RATE_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TOO_EARLY_HO_RATE_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0d2b78ee-8e18-4145-9ddb-23b122a7144f",
-                  "description" : "Generated description for concept referred to by key \"TOO_EARLY_HO_RATE_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TOO_LATE_HO_RATE_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TOO_LATE_HO_RATE_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "d672e9e4-7136-4aa8-aa90-1b724e244f3e",
-                  "description" : "Generated description for concept referred to by key \"TOO_LATE_HO_RATE_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TOO_LATE_HO_RATE_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TOO_LATE_HO_RATE_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "58ccdd5c-69c1-4c1d-9075-1953b5f5b39c",
-                  "description" : "Generated description for concept referred to by key \"TOO_LATE_HO_RATE_BA_type:0.0.1\""
-               }
-            } ]
-         }
-      },
-      "policies" : {
-         "key" : {
-            "name" : "FLBPolicy_PolicyModel_Policies",
-            "version" : "0.0.1"
-         },
-         "policyMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "FLBPolicy_Policy",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "policyKey" : {
-                     "name" : "FLBPolicy_Policy",
-                     "version" : "0.0.1"
-                  },
-                  "template" : "FREEFORM",
-                  "state" : {
-                     "entry" : [ {
-                        "key" : "FuzzyExecute",
-                        "value" : {
-                           "stateKey" : {
-                              "parentKeyName" : "FLBPolicy_Policy",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "FuzzyExecute"
-                           },
-                           "trigger" : {
-                              "name" : "FLBPolicy_toFuzzy",
-                              "version" : "0.0.1"
-                           },
-                           "stateOutputs" : {
-                              "entry" : [ {
-                                 "key" : "Fuzzy2Post",
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "FLBPolicy_Policy",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "FuzzyExecute",
-                                       "localName" : "Fuzzy2Post"
-                                    },
-                                    "outgoingEvent" : {
-                                       "name" : "FLBPolicy_fromFuzzy",
-                                       "version" : "0.0.1"
-                                    },
-                                    "nextState" : {
-                                       "parentKeyName" : "FLBPolicy_Policy",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "NULL",
-                                       "localName" : "PostExecute"
-                                    }
-                                 }
-                              } ]
-                           },
-                           "contextAlbumReference" : [ ],
-                           "taskSelectionLogic" : {
-                              "key" : "NULL",
-                              "logicFlavour" : "UNDEFINED",
-                              "logic" : ""
-                           },
-                           "stateFinalizerLogicMap" : {
-                              "entry" : [ ]
-                           },
-                           "defaultTask" : {
-                              "name" : "FLBPolicy_Task",
-                              "version" : "0.0.1"
-                           },
-                           "taskReferences" : {
-                              "entry" : [ {
-                                 "key" : {
-                                    "name" : "FLBPolicy_Task",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "FLBPolicy_Policy",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "FuzzyExecute",
-                                       "localName" : "FLBPolicy_Policy"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "FLBPolicy_Policy",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "FuzzyExecute",
-                                       "localName" : "Fuzzy2Post"
-                                    }
-                                 }
-                              } ]
-                           }
-                        }
-                     }, {
-                        "key" : "PostExecute",
-                        "value" : {
-                           "stateKey" : {
-                              "parentKeyName" : "FLBPolicy_Policy",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "PostExecute"
-                           },
-                           "trigger" : {
-                              "name" : "FLBPolicy_fromFuzzy",
-                              "version" : "0.0.1"
-                           },
-                           "stateOutputs" : {
-                              "entry" : [ {
-                                 "key" : "Post2Out",
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "FLBPolicy_Policy",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "PostExecute",
-                                       "localName" : "Post2Out"
-                                    },
-                                    "outgoingEvent" : {
-                                       "name" : "FLBPolicy_OutputEvent",
-                                       "version" : "0.0.1"
-                                    },
-                                    "nextState" : {
-                                       "parentKeyName" : "NULL",
-                                       "parentKeyVersion" : "0.0.0",
-                                       "parentLocalName" : "NULL",
-                                       "localName" : "NULL"
-                                    }
-                                 }
-                              } ]
-                           },
-                           "contextAlbumReference" : [ ],
-                           "taskSelectionLogic" : {
-                              "key" : "NULL",
-                              "logicFlavour" : "UNDEFINED",
-                              "logic" : ""
-                           },
-                           "stateFinalizerLogicMap" : {
-                              "entry" : [ ]
-                           },
-                           "defaultTask" : {
-                              "name" : "FLBPolicy_Task_Post",
-                              "version" : "0.0.1"
-                           },
-                           "taskReferences" : {
-                              "entry" : [ {
-                                 "key" : {
-                                    "name" : "FLBPolicy_Task_Post",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "FLBPolicy_Policy",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "PostExecute",
-                                       "localName" : "FLBPolicy_Policy"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "FLBPolicy_Policy",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "PostExecute",
-                                       "localName" : "Post2Out"
-                                    }
-                                 }
-                              } ]
-                           }
-                        }
-                     }, {
-                        "key" : "PreExecute",
-                        "value" : {
-                           "stateKey" : {
-                              "parentKeyName" : "FLBPolicy_Policy",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "PreExecute"
-                           },
-                           "trigger" : {
-                              "name" : "FLBPolicy_InputEvent",
-                              "version" : "0.0.1"
-                           },
-                           "stateOutputs" : {
-                              "entry" : [ {
-                                 "key" : "Pre2Fuzzy",
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "FLBPolicy_Policy",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "PreExecute",
-                                       "localName" : "Pre2Fuzzy"
-                                    },
-                                    "outgoingEvent" : {
-                                       "name" : "FLBPolicy_toFuzzy",
-                                       "version" : "0.0.1"
-                                    },
-                                    "nextState" : {
-                                       "parentKeyName" : "FLBPolicy_Policy",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "NULL",
-                                       "localName" : "FuzzyExecute"
-                                    }
-                                 }
-                              } ]
-                           },
-                           "contextAlbumReference" : [ ],
-                           "taskSelectionLogic" : {
-                              "key" : "NULL",
-                              "logicFlavour" : "UNDEFINED",
-                              "logic" : ""
-                           },
-                           "stateFinalizerLogicMap" : {
-                              "entry" : [ ]
-                           },
-                           "defaultTask" : {
-                              "name" : "FLBPolicy_Task_Pre",
-                              "version" : "0.0.1"
-                           },
-                           "taskReferences" : {
-                              "entry" : [ {
-                                 "key" : {
-                                    "name" : "FLBPolicy_Task_Pre",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "FLBPolicy_Policy",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "PreExecute",
-                                       "localName" : "FLBPolicy_Policy"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "FLBPolicy_Policy",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "PreExecute",
-                                       "localName" : "Pre2Fuzzy"
-                                    }
-                                 }
-                              } ]
-                           }
-                        }
-                     } ]
-                  },
-                  "firstState" : "PreExecute"
-               }
-            } ]
-         }
-      },
-      "tasks" : {
-         "key" : {
-            "name" : "FLBPolicy_PolicyModel_Tasks",
-            "version" : "0.0.1"
-         },
-         "taskMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "FLBPolicy_Task",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_Task",
-                     "version" : "0.0.1"
-                  },
-                  "inputFields" : {
-                     "entry" : [ {
-                        "key" : "Adjacency_4G_Name",
-                        "value" : {
-                           "key" : "Adjacency_4G_Name",
-                           "fieldSchemaKey" : {
-                              "name" : "Adjacency_4G_Name_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellA",
-                        "value" : {
-                           "key" : "CellA",
-                           "fieldSchemaKey" : {
-                              "name" : "CellA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellB",
-                        "value" : {
-                           "key" : "CellB",
-                           "fieldSchemaKey" : {
-                              "name" : "CellB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "ENABLE_CONGESTION",
-                        "value" : {
-                           "key" : "ENABLE_CONGESTION",
-                           "fieldSchemaKey" : {
-                              "name" : "ENABLE_CONGESTION_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "FREQ_REL_TYPE",
-                        "value" : {
-                           "key" : "FREQ_REL_TYPE",
-                           "fieldSchemaKey" : {
-                              "name" : "FREQ_REL_TYPE_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "HO_EXEC_FAIL_RATE_AB",
-                        "value" : {
-                           "key" : "HO_EXEC_FAIL_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "HO_EXEC_FAIL_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "HO_EXEC_FAIL_RATE_BA",
-                        "value" : {
-                           "key" : "HO_EXEC_FAIL_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "HO_EXEC_FAIL_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_CQI_SAMPLES_RATE_HO_AB",
-                        "value" : {
-                           "key" : "LOW_CQI_SAMPLES_RATE_HO_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_CQI_SAMPLES_RATE_HO_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_CQI_SAMPLES_RATE_HO_BA",
-                        "value" : {
-                           "key" : "LOW_CQI_SAMPLES_RATE_HO_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_CQI_SAMPLES_RATE_HO_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB",
-                        "value" : {
-                           "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA",
-                        "value" : {
-                           "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "PDCCH_CCE_HIGH_LOAD_DELTA",
-                        "value" : {
-                           "key" : "PDCCH_CCE_HIGH_LOAD_DELTA",
-                           "fieldSchemaKey" : {
-                              "name" : "PDCCH_CCE_HIGH_LOAD_DELTA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_LOW_AB",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_LOW_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_LOW_BA",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_LOW_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_AB_IN",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_AB_IN",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_BA_IN",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_BA_IN",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_HIGH_AB",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_HIGH_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_HIGH_BA",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_HIGH_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_LOW_AB",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_LOW_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_LOW_BA",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_LOW_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_HIGH_AB",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_HIGH_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_HIGH_BA",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_HIGH_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_LOW_AB",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_LOW_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_LOW_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_LOW_BA",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_LOW_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_LOW_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "RRC_CONGESTION_DELTA",
-                        "value" : {
-                           "key" : "RRC_CONGESTION_DELTA",
-                           "fieldSchemaKey" : {
-                              "name" : "RRC_CONGESTION_DELTA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "SET_TYPE",
-                        "value" : {
-                           "key" : "SET_TYPE",
-                           "fieldSchemaKey" : {
-                              "name" : "SET_TYPE_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_EARLY_HO_RATE_AB",
-                        "value" : {
-                           "key" : "TOO_EARLY_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_EARLY_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_EARLY_HO_RATE_BA",
-                        "value" : {
-                           "key" : "TOO_EARLY_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_EARLY_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_LATE_HO_RATE_AB",
-                        "value" : {
-                           "key" : "TOO_LATE_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_LATE_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_LATE_HO_RATE_BA",
-                        "value" : {
-                           "key" : "TOO_LATE_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_LATE_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     } ]
-                  },
-                  "outputFields" : {
-                     "entry" : [ {
-                        "key" : "Adjacency_4G_Name",
-                        "value" : {
-                           "key" : "Adjacency_4G_Name",
-                           "fieldSchemaKey" : {
-                              "name" : "Adjacency_4G_Name_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellA",
-                        "value" : {
-                           "key" : "CellA",
-                           "fieldSchemaKey" : {
-                              "name" : "CellA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellB",
-                        "value" : {
-                           "key" : "CellB",
-                           "fieldSchemaKey" : {
-                              "name" : "CellB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "OCN_AB",
-                        "value" : {
-                           "key" : "OCN_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "OCN_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "OCN_BA",
-                        "value" : {
-                           "key" : "OCN_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "OCN_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_AB",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_BA",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_AB",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_BA",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_AB",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_BA",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_AB",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_BA",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "SB_OCN_AB",
-                        "value" : {
-                           "key" : "SB_OCN_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "SB_OCN_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "SB_OCN_BA",
-                        "value" : {
-                           "key" : "SB_OCN_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "SB_OCN_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     } ]
-                  },
-                  "taskParameters" : {
-                     "entry" : [ ]
-                  },
-                  "contextAlbumReference" : [ ],
-                  "taskLogic" : {
-                     "key" : "TaskLogic",
-                     "logicFlavour" : "FUZZY",
-                     "logic" : "somelogic goes here"
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_Task_Post",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_Task_Post",
-                     "version" : "0.0.1"
-                  },
-                  "inputFields" : {
-                     "entry" : [ {
-                        "key" : "Adjacency_4G_Name",
-                        "value" : {
-                           "key" : "Adjacency_4G_Name",
-                           "fieldSchemaKey" : {
-                              "name" : "Adjacency_4G_Name_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellA",
-                        "value" : {
-                           "key" : "CellA",
-                           "fieldSchemaKey" : {
-                              "name" : "CellA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellB",
-                        "value" : {
-                           "key" : "CellB",
-                           "fieldSchemaKey" : {
-                              "name" : "CellB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "OCN_AB",
-                        "value" : {
-                           "key" : "OCN_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "OCN_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "OCN_BA",
-                        "value" : {
-                           "key" : "OCN_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "OCN_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_AB",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_BA",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_AB",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_BA",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_AB",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_BA",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_AB",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_BA",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "SB_OCN_AB",
-                        "value" : {
-                           "key" : "SB_OCN_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "SB_OCN_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "SB_OCN_BA",
-                        "value" : {
-                           "key" : "SB_OCN_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "SB_OCN_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     } ]
-                  },
-                  "outputFields" : {
-                     "entry" : [ {
-                        "key" : "Adjacency_4G_Name",
-                        "value" : {
-                           "key" : "Adjacency_4G_Name",
-                           "fieldSchemaKey" : {
-                              "name" : "Adjacency_4G_Name_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellA",
-                        "value" : {
-                           "key" : "CellA",
-                           "fieldSchemaKey" : {
-                              "name" : "CellA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellB",
-                        "value" : {
-                           "key" : "CellB",
-                           "fieldSchemaKey" : {
-                              "name" : "CellB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "OCN_AB",
-                        "value" : {
-                           "key" : "OCN_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "OCN_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "OCN_BA",
-                        "value" : {
-                           "key" : "OCN_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "OCN_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_AB",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_BA",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_AB",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_BA",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_AB",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_BA",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_AB",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_BA",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "SB_OCN_AB",
-                        "value" : {
-                           "key" : "SB_OCN_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "SB_OCN_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "SB_OCN_BA",
-                        "value" : {
-                           "key" : "SB_OCN_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "SB_OCN_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     } ]
-                  },
-                  "taskParameters" : {
-                     "entry" : [ ]
-                  },
-                  "contextAlbumReference" : [ ],
-                  "taskLogic" : {
-                     "key" : "TaskLogic",
-                     "logicFlavour" : "MVEL",
-                     "logic" : "logger.debug(subject.id);logger.debug(inFields);outFields.putAll(inFields);logger.debug(outFields);return true;"
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_Task_Pre",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_Task_Pre",
-                     "version" : "0.0.1"
-                  },
-                  "inputFields" : {
-                     "entry" : [ {
-                        "key" : "Adjacency_4G_Name",
-                        "value" : {
-                           "key" : "Adjacency_4G_Name",
-                           "fieldSchemaKey" : {
-                              "name" : "Adjacency_4G_Name_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellA",
-                        "value" : {
-                           "key" : "CellA",
-                           "fieldSchemaKey" : {
-                              "name" : "CellA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellB",
-                        "value" : {
-                           "key" : "CellB",
-                           "fieldSchemaKey" : {
-                              "name" : "CellB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "ENABLE_CONGESTION",
-                        "value" : {
-                           "key" : "ENABLE_CONGESTION",
-                           "fieldSchemaKey" : {
-                              "name" : "ENABLE_CONGESTION_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "FREQ_REL_TYPE",
-                        "value" : {
-                           "key" : "FREQ_REL_TYPE",
-                           "fieldSchemaKey" : {
-                              "name" : "FREQ_REL_TYPE_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "HO_EXEC_FAIL_RATE_AB",
-                        "value" : {
-                           "key" : "HO_EXEC_FAIL_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "HO_EXEC_FAIL_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "HO_EXEC_FAIL_RATE_BA",
-                        "value" : {
-                           "key" : "HO_EXEC_FAIL_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "HO_EXEC_FAIL_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_CQI_SAMPLES_RATE_HO_AB",
-                        "value" : {
-                           "key" : "LOW_CQI_SAMPLES_RATE_HO_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_CQI_SAMPLES_RATE_HO_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_CQI_SAMPLES_RATE_HO_BA",
-                        "value" : {
-                           "key" : "LOW_CQI_SAMPLES_RATE_HO_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_CQI_SAMPLES_RATE_HO_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB",
-                        "value" : {
-                           "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA",
-                        "value" : {
-                           "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "PDCCH_CCE_HIGH_LOAD_DELTA",
-                        "value" : {
-                           "key" : "PDCCH_CCE_HIGH_LOAD_DELTA",
-                           "fieldSchemaKey" : {
-                              "name" : "PDCCH_CCE_HIGH_LOAD_DELTA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_LOW_AB",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_LOW_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_LOW_BA",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_LOW_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_AB_IN",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_AB_IN",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_BA_IN",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_BA_IN",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_HIGH_AB",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_HIGH_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_HIGH_BA",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_HIGH_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_LOW_AB",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_LOW_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_LOW_BA",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_LOW_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_HIGH_AB",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_HIGH_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_HIGH_BA",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_HIGH_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_LOW_AB",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_LOW_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_LOW_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_LOW_BA",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_LOW_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_LOW_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "RRC_CONGESTION_DELTA",
-                        "value" : {
-                           "key" : "RRC_CONGESTION_DELTA",
-                           "fieldSchemaKey" : {
-                              "name" : "RRC_CONGESTION_DELTA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "SET_TYPE",
-                        "value" : {
-                           "key" : "SET_TYPE",
-                           "fieldSchemaKey" : {
-                              "name" : "SET_TYPE_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_EARLY_HO_RATE_AB",
-                        "value" : {
-                           "key" : "TOO_EARLY_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_EARLY_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_EARLY_HO_RATE_BA",
-                        "value" : {
-                           "key" : "TOO_EARLY_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_EARLY_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_LATE_HO_RATE_AB",
-                        "value" : {
-                           "key" : "TOO_LATE_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_LATE_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_LATE_HO_RATE_BA",
-                        "value" : {
-                           "key" : "TOO_LATE_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_LATE_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     } ]
-                  },
-                  "outputFields" : {
-                     "entry" : [ {
-                        "key" : "Adjacency_4G_Name",
-                        "value" : {
-                           "key" : "Adjacency_4G_Name",
-                           "fieldSchemaKey" : {
-                              "name" : "Adjacency_4G_Name_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellA",
-                        "value" : {
-                           "key" : "CellA",
-                           "fieldSchemaKey" : {
-                              "name" : "CellA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellB",
-                        "value" : {
-                           "key" : "CellB",
-                           "fieldSchemaKey" : {
-                              "name" : "CellB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "ENABLE_CONGESTION",
-                        "value" : {
-                           "key" : "ENABLE_CONGESTION",
-                           "fieldSchemaKey" : {
-                              "name" : "ENABLE_CONGESTION_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "FREQ_REL_TYPE",
-                        "value" : {
-                           "key" : "FREQ_REL_TYPE",
-                           "fieldSchemaKey" : {
-                              "name" : "FREQ_REL_TYPE_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "HO_EXEC_FAIL_RATE_AB",
-                        "value" : {
-                           "key" : "HO_EXEC_FAIL_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "HO_EXEC_FAIL_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "HO_EXEC_FAIL_RATE_BA",
-                        "value" : {
-                           "key" : "HO_EXEC_FAIL_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "HO_EXEC_FAIL_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_CQI_SAMPLES_RATE_HO_AB",
-                        "value" : {
-                           "key" : "LOW_CQI_SAMPLES_RATE_HO_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_CQI_SAMPLES_RATE_HO_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_CQI_SAMPLES_RATE_HO_BA",
-                        "value" : {
-                           "key" : "LOW_CQI_SAMPLES_RATE_HO_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_CQI_SAMPLES_RATE_HO_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB",
-                        "value" : {
-                           "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA",
-                        "value" : {
-                           "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "PDCCH_CCE_HIGH_LOAD_DELTA",
-                        "value" : {
-                           "key" : "PDCCH_CCE_HIGH_LOAD_DELTA",
-                           "fieldSchemaKey" : {
-                              "name" : "PDCCH_CCE_HIGH_LOAD_DELTA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_LOW_AB",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_LOW_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_LOW_BA",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_LOW_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_AB_IN",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_AB_IN",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_BA_IN",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_BA_IN",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_HIGH_AB",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_HIGH_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_HIGH_BA",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_HIGH_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_LOW_AB",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_LOW_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_LOW_BA",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_LOW_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_HIGH_AB",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_HIGH_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_HIGH_BA",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_HIGH_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_LOW_AB",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_LOW_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_LOW_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_LOW_BA",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_LOW_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_LOW_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "RRC_CONGESTION_DELTA",
-                        "value" : {
-                           "key" : "RRC_CONGESTION_DELTA",
-                           "fieldSchemaKey" : {
-                              "name" : "RRC_CONGESTION_DELTA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "SET_TYPE",
-                        "value" : {
-                           "key" : "SET_TYPE",
-                           "fieldSchemaKey" : {
-                              "name" : "SET_TYPE_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_EARLY_HO_RATE_AB",
-                        "value" : {
-                           "key" : "TOO_EARLY_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_EARLY_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_EARLY_HO_RATE_BA",
-                        "value" : {
-                           "key" : "TOO_EARLY_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_EARLY_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_LATE_HO_RATE_AB",
-                        "value" : {
-                           "key" : "TOO_LATE_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_LATE_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_LATE_HO_RATE_BA",
-                        "value" : {
-                           "key" : "TOO_LATE_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_LATE_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     } ]
-                  },
-                  "taskParameters" : {
-                     "entry" : [ ]
-                  },
-                  "contextAlbumReference" : [ ],
-                  "taskLogic" : {
-                     "key" : "TaskLogic",
-                     "logicFlavour" : "MVEL",
-                     "logic" : "logger.debug(subject.id);logger.debug(inFields);outFields.putAll(inFields);logger.debug(outFields);return true;"
-                  }
-               }
-            } ]
-         }
-      },
-      "events" : {
-         "key" : {
-            "name" : "FLBPolicy_PolicyModel_Events",
-            "version" : "0.0.1"
-         },
-         "eventMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "FLBPolicy_InputEvent",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_InputEvent",
-                     "version" : "0.0.1"
-                  },
-                  "nameSpace" : "org.onap.policy.apexaiasonom",
-                  "source" : "external",
-                  "target" : "apex",
-                  "parameter" : {
-                     "entry" : [ {
-                        "key" : "Adjacency_4G_Name",
-                        "value" : {
-                           "key" : "Adjacency_4G_Name",
-                           "fieldSchemaKey" : {
-                              "name" : "Adjacency_4G_Name_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellA",
-                        "value" : {
-                           "key" : "CellA",
-                           "fieldSchemaKey" : {
-                              "name" : "CellA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellB",
-                        "value" : {
-                           "key" : "CellB",
-                           "fieldSchemaKey" : {
-                              "name" : "CellB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "ENABLE_CONGESTION",
-                        "value" : {
-                           "key" : "ENABLE_CONGESTION",
-                           "fieldSchemaKey" : {
-                              "name" : "ENABLE_CONGESTION_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "FREQ_REL_TYPE",
-                        "value" : {
-                           "key" : "FREQ_REL_TYPE",
-                           "fieldSchemaKey" : {
-                              "name" : "FREQ_REL_TYPE_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "HO_EXEC_FAIL_RATE_AB",
-                        "value" : {
-                           "key" : "HO_EXEC_FAIL_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "HO_EXEC_FAIL_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "HO_EXEC_FAIL_RATE_BA",
-                        "value" : {
-                           "key" : "HO_EXEC_FAIL_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "HO_EXEC_FAIL_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_CQI_SAMPLES_RATE_HO_AB",
-                        "value" : {
-                           "key" : "LOW_CQI_SAMPLES_RATE_HO_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_CQI_SAMPLES_RATE_HO_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_CQI_SAMPLES_RATE_HO_BA",
-                        "value" : {
-                           "key" : "LOW_CQI_SAMPLES_RATE_HO_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_CQI_SAMPLES_RATE_HO_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB",
-                        "value" : {
-                           "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA",
-                        "value" : {
-                           "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "PDCCH_CCE_HIGH_LOAD_DELTA",
-                        "value" : {
-                           "key" : "PDCCH_CCE_HIGH_LOAD_DELTA",
-                           "fieldSchemaKey" : {
-                              "name" : "PDCCH_CCE_HIGH_LOAD_DELTA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_LOW_AB",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_LOW_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_LOW_BA",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_LOW_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_AB_IN",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_AB_IN",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_BA_IN",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_BA_IN",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_HIGH_AB",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_HIGH_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_HIGH_BA",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_HIGH_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_LOW_AB",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_LOW_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_LOW_BA",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_LOW_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_HIGH_AB",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_HIGH_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_HIGH_BA",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_HIGH_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_LOW_AB",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_LOW_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_LOW_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_LOW_BA",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_LOW_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_LOW_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "RRC_CONGESTION_DELTA",
-                        "value" : {
-                           "key" : "RRC_CONGESTION_DELTA",
-                           "fieldSchemaKey" : {
-                              "name" : "RRC_CONGESTION_DELTA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "SET_TYPE",
-                        "value" : {
-                           "key" : "SET_TYPE",
-                           "fieldSchemaKey" : {
-                              "name" : "SET_TYPE_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_EARLY_HO_RATE_AB",
-                        "value" : {
-                           "key" : "TOO_EARLY_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_EARLY_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_EARLY_HO_RATE_BA",
-                        "value" : {
-                           "key" : "TOO_EARLY_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_EARLY_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_LATE_HO_RATE_AB",
-                        "value" : {
-                           "key" : "TOO_LATE_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_LATE_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_LATE_HO_RATE_BA",
-                        "value" : {
-                           "key" : "TOO_LATE_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_LATE_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     } ]
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_OutputEvent",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_OutputEvent",
-                     "version" : "0.0.1"
-                  },
-                  "nameSpace" : "org.onap.policy.apexaiasonom",
-                  "source" : "apex",
-                  "target" : "external",
-                  "parameter" : {
-                     "entry" : [ {
-                        "key" : "Adjacency_4G_Name",
-                        "value" : {
-                           "key" : "Adjacency_4G_Name",
-                           "fieldSchemaKey" : {
-                              "name" : "Adjacency_4G_Name_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellA",
-                        "value" : {
-                           "key" : "CellA",
-                           "fieldSchemaKey" : {
-                              "name" : "CellA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellB",
-                        "value" : {
-                           "key" : "CellB",
-                           "fieldSchemaKey" : {
-                              "name" : "CellB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "OCN_AB",
-                        "value" : {
-                           "key" : "OCN_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "OCN_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "OCN_BA",
-                        "value" : {
-                           "key" : "OCN_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "OCN_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_AB",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_BA",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_AB",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_BA",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_AB",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_BA",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_AB",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_BA",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "SB_OCN_AB",
-                        "value" : {
-                           "key" : "SB_OCN_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "SB_OCN_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "SB_OCN_BA",
-                        "value" : {
-                           "key" : "SB_OCN_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "SB_OCN_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     } ]
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_fromFuzzy",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_fromFuzzy",
-                     "version" : "0.0.1"
-                  },
-                  "nameSpace" : "org.onap.policy.apexaiasonom",
-                  "source" : "fuzzy",
-                  "target" : "apex",
-                  "parameter" : {
-                     "entry" : [ {
-                        "key" : "Adjacency_4G_Name",
-                        "value" : {
-                           "key" : "Adjacency_4G_Name",
-                           "fieldSchemaKey" : {
-                              "name" : "Adjacency_4G_Name_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellA",
-                        "value" : {
-                           "key" : "CellA",
-                           "fieldSchemaKey" : {
-                              "name" : "CellA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellB",
-                        "value" : {
-                           "key" : "CellB",
-                           "fieldSchemaKey" : {
-                              "name" : "CellB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "OCN_AB",
-                        "value" : {
-                           "key" : "OCN_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "OCN_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "OCN_BA",
-                        "value" : {
-                           "key" : "OCN_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "OCN_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_AB",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_BA",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_AB",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_BA",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_AB",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_BA",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_AB",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_BA",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "SB_OCN_AB",
-                        "value" : {
-                           "key" : "SB_OCN_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "SB_OCN_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "SB_OCN_BA",
-                        "value" : {
-                           "key" : "SB_OCN_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "SB_OCN_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     } ]
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_toFuzzy",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_toFuzzy",
-                     "version" : "0.0.1"
-                  },
-                  "nameSpace" : "org.onap.policy.apexaiasonom",
-                  "source" : "apex",
-                  "target" : "fuzzy",
-                  "parameter" : {
-                     "entry" : [ {
-                        "key" : "Adjacency_4G_Name",
-                        "value" : {
-                           "key" : "Adjacency_4G_Name",
-                           "fieldSchemaKey" : {
-                              "name" : "Adjacency_4G_Name_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellA",
-                        "value" : {
-                           "key" : "CellA",
-                           "fieldSchemaKey" : {
-                              "name" : "CellA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellB",
-                        "value" : {
-                           "key" : "CellB",
-                           "fieldSchemaKey" : {
-                              "name" : "CellB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "ENABLE_CONGESTION",
-                        "value" : {
-                           "key" : "ENABLE_CONGESTION",
-                           "fieldSchemaKey" : {
-                              "name" : "ENABLE_CONGESTION_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "FREQ_REL_TYPE",
-                        "value" : {
-                           "key" : "FREQ_REL_TYPE",
-                           "fieldSchemaKey" : {
-                              "name" : "FREQ_REL_TYPE_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "HO_EXEC_FAIL_RATE_AB",
-                        "value" : {
-                           "key" : "HO_EXEC_FAIL_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "HO_EXEC_FAIL_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "HO_EXEC_FAIL_RATE_BA",
-                        "value" : {
-                           "key" : "HO_EXEC_FAIL_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "HO_EXEC_FAIL_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_CQI_SAMPLES_RATE_HO_AB",
-                        "value" : {
-                           "key" : "LOW_CQI_SAMPLES_RATE_HO_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_CQI_SAMPLES_RATE_HO_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_CQI_SAMPLES_RATE_HO_BA",
-                        "value" : {
-                           "key" : "LOW_CQI_SAMPLES_RATE_HO_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_CQI_SAMPLES_RATE_HO_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB",
-                        "value" : {
-                           "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA",
-                        "value" : {
-                           "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "PDCCH_CCE_HIGH_LOAD_DELTA",
-                        "value" : {
-                           "key" : "PDCCH_CCE_HIGH_LOAD_DELTA",
-                           "fieldSchemaKey" : {
-                              "name" : "PDCCH_CCE_HIGH_LOAD_DELTA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_LOW_AB",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_LOW_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_LOW_BA",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_LOW_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_AB_IN",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_AB_IN",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_BA_IN",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_BA_IN",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_HIGH_AB",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_HIGH_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_HIGH_BA",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_HIGH_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_LOW_AB",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_LOW_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_LOW_BA",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_LOW_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_HIGH_AB",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_HIGH_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_HIGH_BA",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_HIGH_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_LOW_AB",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_LOW_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_LOW_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_LOW_BA",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_LOW_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_LOW_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "RRC_CONGESTION_DELTA",
-                        "value" : {
-                           "key" : "RRC_CONGESTION_DELTA",
-                           "fieldSchemaKey" : {
-                              "name" : "RRC_CONGESTION_DELTA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "SET_TYPE",
-                        "value" : {
-                           "key" : "SET_TYPE",
-                           "fieldSchemaKey" : {
-                              "name" : "SET_TYPE_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_EARLY_HO_RATE_AB",
-                        "value" : {
-                           "key" : "TOO_EARLY_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_EARLY_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_EARLY_HO_RATE_BA",
-                        "value" : {
-                           "key" : "TOO_EARLY_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_EARLY_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_LATE_HO_RATE_AB",
-                        "value" : {
-                           "key" : "TOO_LATE_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_LATE_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_LATE_HO_RATE_BA",
-                        "value" : {
-                           "key" : "TOO_LATE_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_LATE_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     } ]
-                  }
-               }
-            } ]
-         }
-      },
-      "albums" : {
-         "key" : {
-            "name" : "FLBPolicy_PolicyModel_Albums",
-            "version" : "0.0.1"
-         },
-         "albums" : {
-            "entry" : [ ]
-         }
-      },
-      "schemas" : {
-         "key" : {
-            "name" : "FLBPolicy_PolicyModel_Schemas",
-            "version" : "0.0.1"
-         },
-         "schemas" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "Adjacency_4G_Name_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Adjacency_4G_Name_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.String"
-               }
-            }, {
-               "key" : {
-                  "name" : "CellA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "CellA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.String"
-               }
-            }, {
-               "key" : {
-                  "name" : "CellB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "CellB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.String"
-               }
-            }, {
-               "key" : {
-                  "name" : "ENABLE_CONGESTION_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "ENABLE_CONGESTION_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Boolean"
-               }
-            }, {
-               "key" : {
-                  "name" : "FREQ_REL_TYPE_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FREQ_REL_TYPE_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.String"
-               }
-            }, {
-               "key" : {
-                  "name" : "HO_EXEC_FAIL_RATE_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "HO_EXEC_FAIL_RATE_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "HO_EXEC_FAIL_RATE_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "HO_EXEC_FAIL_RATE_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "LOW_CQI_SAMPLES_RATE_HO_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LOW_CQI_SAMPLES_RATE_HO_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "LOW_CQI_SAMPLES_RATE_HO_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LOW_CQI_SAMPLES_RATE_HO_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "OCN_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "OCN_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Double"
-               }
-            }, {
-               "key" : {
-                  "name" : "OCN_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "OCN_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Double"
-               }
-            }, {
-               "key" : {
-                  "name" : "PDCCH_CCE_HIGH_LOAD_DELTA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "PDCCH_CCE_HIGH_LOAD_DELTA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_HO_EXEC_FAIL_RATE_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_HO_EXEC_FAIL_RATE_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Boolean"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_HO_EXEC_FAIL_RATE_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_HO_EXEC_FAIL_RATE_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Boolean"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_NUM_HO_WITH_EVENTS_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_NUM_HO_WITH_EVENTS_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Boolean"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_NUM_HO_WITH_EVENTS_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_NUM_HO_WITH_EVENTS_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Boolean"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_EARLY_HO_RATE_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_EARLY_HO_RATE_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Boolean"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_EARLY_HO_RATE_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_EARLY_HO_RATE_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Boolean"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_LATE_HO_RATE_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_LATE_HO_RATE_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Boolean"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_LATE_HO_RATE_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_LATE_HO_RATE_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Boolean"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_LATE_HO_RATE_LOW_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_LATE_HO_RATE_LOW_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_LATE_HO_RATE_LOW_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_LATE_HO_RATE_LOW_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "RRC_CONGESTION_DELTA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "RRC_CONGESTION_DELTA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "SB_OCN_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SB_OCN_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.String"
-               }
-            }, {
-               "key" : {
-                  "name" : "SB_OCN_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SB_OCN_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.String"
-               }
-            }, {
-               "key" : {
-                  "name" : "SET_TYPE_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SET_TYPE_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.String"
-               }
-            }, {
-               "key" : {
-                  "name" : "TOO_EARLY_HO_RATE_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TOO_EARLY_HO_RATE_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "TOO_EARLY_HO_RATE_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TOO_EARLY_HO_RATE_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "TOO_LATE_HO_RATE_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TOO_LATE_HO_RATE_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "TOO_LATE_HO_RATE_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TOO_LATE_HO_RATE_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            } ]
-         }
-      }
-   }
-}
\ No newline at end of file
+  "policies": {
+    "key": {
+      "name": "FLBPolicy_PolicyModel_Policies",
+      "version": "0.0.1"
+    },
+    "policyMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "FLBPolicy_Policy",
+            "version": "0.0.1"
+          },
+          "value": {
+            "policyKey": {
+              "name": "FLBPolicy_Policy",
+              "version": "0.0.1"
+            },
+            "template": "FREEFORM",
+            "state": {
+              "entry": [
+                {
+                  "key": "FuzzyExecute",
+                  "value": {
+                    "stateKey": {
+                      "parentKeyName": "FLBPolicy_Policy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "FuzzyExecute"
+                    },
+                    "trigger": {
+                      "name": "FLBPolicy_toFuzzy",
+                      "version": "0.0.1"
+                    },
+                    "stateOutputs": {
+                      "entry": [
+                        {
+                          "key": "Fuzzy2Post",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_Policy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "FuzzyExecute",
+                              "localName": "Fuzzy2Post"
+                            },
+                            "outgoingEvent": {
+                              "name": "FLBPolicy_fromFuzzy",
+                              "version": "0.0.1"
+                            },
+                            "outgoingEventReference": [
+                              {
+                                "name": "FLBPolicy_fromFuzzy",
+                                "version": "0.0.1"
+                              }
+                            ],
+                            "nextState": {
+                              "parentKeyName": "FLBPolicy_Policy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "PostExecute"
+                            }
+                          }
+                        }
+                      ]
+                    },
+                    "contextAlbumReference": [],
+                    "taskSelectionLogic": {
+                      "key": {
+                        "parentKeyName": "NULL",
+                        "parentKeyVersion": "0.0.0",
+                        "parentLocalName": "NULL",
+                        "localName": "NULL"
+                      },
+                      "logicFlavour": "UNDEFINED",
+                      "logic": ""
+                    },
+                    "stateFinalizerLogicMap": {
+                      "entry": []
+                    },
+                    "defaultTask": {
+                      "name": "FLBPolicy_Task",
+                      "version": "0.0.1"
+                    },
+                    "taskReferences": {
+                      "entry": [
+                        {
+                          "key": {
+                            "name": "FLBPolicy_Task",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_Policy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "FuzzyExecute",
+                              "localName": "FLBPolicy_Policy"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "FLBPolicy_Policy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "FuzzyExecute",
+                              "localName": "Fuzzy2Post"
+                            }
+                          }
+                        }
+                      ]
+                    }
+                  }
+                },
+                {
+                  "key": "PostExecute",
+                  "value": {
+                    "stateKey": {
+                      "parentKeyName": "FLBPolicy_Policy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "PostExecute"
+                    },
+                    "trigger": {
+                      "name": "FLBPolicy_fromFuzzy",
+                      "version": "0.0.1"
+                    },
+                    "stateOutputs": {
+                      "entry": [
+                        {
+                          "key": "Post2Out",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_Policy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "PostExecute",
+                              "localName": "Post2Out"
+                            },
+                            "outgoingEvent": {
+                              "name": "FLBPolicy_OutputEvent",
+                              "version": "0.0.1"
+                            },
+                            "outgoingEventReference": [
+                              {
+                                "name": "FLBPolicy_OutputEvent",
+                                "version": "0.0.1"
+                              }
+                            ],
+                            "nextState": {
+                              "parentKeyName": "NULL",
+                              "parentKeyVersion": "0.0.0",
+                              "parentLocalName": "NULL",
+                              "localName": "NULL"
+                            }
+                          }
+                        }
+                      ]
+                    },
+                    "contextAlbumReference": [],
+                    "taskSelectionLogic": {
+                      "key": {
+                        "parentKeyName": "NULL",
+                        "parentKeyVersion": "0.0.0",
+                        "parentLocalName": "NULL",
+                        "localName": "NULL"
+                      },
+                      "logicFlavour": "UNDEFINED",
+                      "logic": ""
+                    },
+                    "stateFinalizerLogicMap": {
+                      "entry": []
+                    },
+                    "defaultTask": {
+                      "name": "FLBPolicy_Task_Post",
+                      "version": "0.0.1"
+                    },
+                    "taskReferences": {
+                      "entry": [
+                        {
+                          "key": {
+                            "name": "FLBPolicy_Task_Post",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_Policy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "PostExecute",
+                              "localName": "FLBPolicy_Policy"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "FLBPolicy_Policy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "PostExecute",
+                              "localName": "Post2Out"
+                            }
+                          }
+                        }
+                      ]
+                    }
+                  }
+                },
+                {
+                  "key": "PreExecute",
+                  "value": {
+                    "stateKey": {
+                      "parentKeyName": "FLBPolicy_Policy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "PreExecute"
+                    },
+                    "trigger": {
+                      "name": "FLBPolicy_InputEvent",
+                      "version": "0.0.1"
+                    },
+                    "stateOutputs": {
+                      "entry": [
+                        {
+                          "key": "Pre2Fuzzy",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_Policy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "PreExecute",
+                              "localName": "Pre2Fuzzy"
+                            },
+                            "outgoingEvent": {
+                              "name": "FLBPolicy_toFuzzy",
+                              "version": "0.0.1"
+                            },
+                            "outgoingEventReference": [
+                              {
+                                "name": "FLBPolicy_toFuzzy",
+                                "version": "0.0.1"
+                              }
+                            ],
+                            "nextState": {
+                              "parentKeyName": "FLBPolicy_Policy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "FuzzyExecute"
+                            }
+                          }
+                        }
+                      ]
+                    },
+                    "contextAlbumReference": [],
+                    "taskSelectionLogic": {
+                      "key": {
+                        "parentKeyName": "NULL",
+                        "parentKeyVersion": "0.0.0",
+                        "parentLocalName": "NULL",
+                        "localName": "NULL"
+                      },
+                      "logicFlavour": "UNDEFINED",
+                      "logic": ""
+                    },
+                    "stateFinalizerLogicMap": {
+                      "entry": []
+                    },
+                    "defaultTask": {
+                      "name": "FLBPolicy_Task_Pre",
+                      "version": "0.0.1"
+                    },
+                    "taskReferences": {
+                      "entry": [
+                        {
+                          "key": {
+                            "name": "FLBPolicy_Task_Pre",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_Policy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "PreExecute",
+                              "localName": "FLBPolicy_Policy"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "FLBPolicy_Policy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "PreExecute",
+                              "localName": "Pre2Fuzzy"
+                            }
+                          }
+                        }
+                      ]
+                    }
+                  }
+                }
+              ]
+            },
+            "firstState": "PreExecute"
+          }
+        }
+      ]
+    }
+  },
+  "tasks": {
+    "key": {
+      "name": "FLBPolicy_PolicyModel_Tasks",
+      "version": "0.0.1"
+    },
+    "taskMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "FLBPolicy_Task",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_Task",
+              "version": "0.0.1"
+            },
+            "inputEvent": {
+              "key": {
+                "name": "FLBPolicy_toFuzzy",
+                "version": "0.0.1"
+              },
+              "nameSpace": "org.onap.policy.apexaiasonom",
+              "source": "apex",
+              "target": "fuzzy",
+              "parameter": {
+                "entry": [
+                  {
+                    "key": "Adjacency_4G_Name",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_toFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "Adjacency_4G_Name"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "Adjacency_4G_Name_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "CellA",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_toFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "CellA"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "CellA_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "CellB",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_toFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "CellB"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "CellB_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "ENABLE_CONGESTION",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_toFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "ENABLE_CONGESTION"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "ENABLE_CONGESTION_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "FREQ_REL_TYPE",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_toFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "FREQ_REL_TYPE"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "FREQ_REL_TYPE_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "HO_EXEC_FAIL_RATE_AB",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_toFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "HO_EXEC_FAIL_RATE_AB"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "HO_EXEC_FAIL_RATE_AB_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "HO_EXEC_FAIL_RATE_BA",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_toFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "HO_EXEC_FAIL_RATE_BA"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "HO_EXEC_FAIL_RATE_BA_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "LOW_CQI_SAMPLES_RATE_HO_AB",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_toFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "LOW_CQI_SAMPLES_RATE_HO_AB"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "LOW_CQI_SAMPLES_RATE_HO_AB_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "LOW_CQI_SAMPLES_RATE_HO_BA",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_toFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "LOW_CQI_SAMPLES_RATE_HO_BA"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "LOW_CQI_SAMPLES_RATE_HO_BA_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_toFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_toFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "PDCCH_CCE_HIGH_LOAD_DELTA",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_toFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "PDCCH_CCE_HIGH_LOAD_DELTA"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "PDCCH_CCE_HIGH_LOAD_DELTA_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "REL_HO_EXEC_FAIL_RATE_HIGH_AB",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_toFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "REL_HO_EXEC_FAIL_RATE_HIGH_AB"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "REL_HO_EXEC_FAIL_RATE_HIGH_BA",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_toFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "REL_HO_EXEC_FAIL_RATE_HIGH_BA"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "REL_HO_EXEC_FAIL_RATE_LOW_AB",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_toFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "REL_HO_EXEC_FAIL_RATE_LOW_AB"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "REL_HO_EXEC_FAIL_RATE_LOW_BA",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_toFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "REL_HO_EXEC_FAIL_RATE_LOW_BA"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "REL_NUM_HO_WITH_EVENTS_AB_IN",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_toFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "REL_NUM_HO_WITH_EVENTS_AB_IN"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "REL_NUM_HO_WITH_EVENTS_BA_IN",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_toFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "REL_NUM_HO_WITH_EVENTS_BA_IN"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "REL_TOO_EARLY_HO_RATE_HIGH_AB",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_toFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "REL_TOO_EARLY_HO_RATE_HIGH_AB"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "REL_TOO_EARLY_HO_RATE_HIGH_BA",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_toFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "REL_TOO_EARLY_HO_RATE_HIGH_BA"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "REL_TOO_EARLY_HO_RATE_LOW_AB",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_toFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "REL_TOO_EARLY_HO_RATE_LOW_AB"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "REL_TOO_EARLY_HO_RATE_LOW_BA",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_toFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "REL_TOO_EARLY_HO_RATE_LOW_BA"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "REL_TOO_LATE_HO_RATE_HIGH_AB",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_toFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "REL_TOO_LATE_HO_RATE_HIGH_AB"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "REL_TOO_LATE_HO_RATE_HIGH_BA",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_toFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "REL_TOO_LATE_HO_RATE_HIGH_BA"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "REL_TOO_LATE_HO_RATE_LOW_AB",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_toFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "REL_TOO_LATE_HO_RATE_LOW_AB"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "REL_TOO_LATE_HO_RATE_LOW_AB_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "REL_TOO_LATE_HO_RATE_LOW_BA",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_toFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "REL_TOO_LATE_HO_RATE_LOW_BA"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "REL_TOO_LATE_HO_RATE_LOW_BA_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "RRC_CONGESTION_DELTA",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_toFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "RRC_CONGESTION_DELTA"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "RRC_CONGESTION_DELTA_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "SET_TYPE",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_toFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "SET_TYPE"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "SET_TYPE_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "TOO_EARLY_HO_RATE_AB",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_toFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "TOO_EARLY_HO_RATE_AB"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "TOO_EARLY_HO_RATE_AB_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "TOO_EARLY_HO_RATE_BA",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_toFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "TOO_EARLY_HO_RATE_BA"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "TOO_EARLY_HO_RATE_BA_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "TOO_LATE_HO_RATE_AB",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_toFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "TOO_LATE_HO_RATE_AB"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "TOO_LATE_HO_RATE_AB_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "TOO_LATE_HO_RATE_BA",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_toFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "TOO_LATE_HO_RATE_BA"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "TOO_LATE_HO_RATE_BA_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  }
+                ]
+              },
+              "toscaPolicyState": ""
+            },
+            "outputEvents": {
+              "entry": [
+                {
+                  "key": "FLBPolicy_fromFuzzy",
+                  "value": {
+                    "key": {
+                      "name": "FLBPolicy_fromFuzzy",
+                      "version": "0.0.1"
+                    },
+                    "nameSpace": "org.onap.policy.apexaiasonom",
+                    "source": "fuzzy",
+                    "target": "apex",
+                    "parameter": {
+                      "entry": [
+                        {
+                          "key": "Adjacency_4G_Name",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_fromFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "Adjacency_4G_Name"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "Adjacency_4G_Name_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "CellA",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_fromFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "CellA"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "CellA_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "CellB",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_fromFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "CellB"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "CellB_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "OCN_AB",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_fromFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "OCN_AB"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "OCN_AB_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "OCN_BA",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_fromFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "OCN_BA"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "OCN_BA_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "REL_HO_EXEC_FAIL_RATE_AB",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_fromFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "REL_HO_EXEC_FAIL_RATE_AB"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "REL_HO_EXEC_FAIL_RATE_AB_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "REL_HO_EXEC_FAIL_RATE_BA",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_fromFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "REL_HO_EXEC_FAIL_RATE_BA"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "REL_HO_EXEC_FAIL_RATE_BA_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "REL_NUM_HO_WITH_EVENTS_AB",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_fromFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "REL_NUM_HO_WITH_EVENTS_AB"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "REL_NUM_HO_WITH_EVENTS_AB_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "REL_NUM_HO_WITH_EVENTS_BA",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_fromFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "REL_NUM_HO_WITH_EVENTS_BA"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "REL_NUM_HO_WITH_EVENTS_BA_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "REL_TOO_EARLY_HO_RATE_AB",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_fromFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "REL_TOO_EARLY_HO_RATE_AB"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "REL_TOO_EARLY_HO_RATE_AB_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "REL_TOO_EARLY_HO_RATE_BA",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_fromFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "REL_TOO_EARLY_HO_RATE_BA"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "REL_TOO_EARLY_HO_RATE_BA_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "REL_TOO_LATE_HO_RATE_AB",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_fromFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "REL_TOO_LATE_HO_RATE_AB"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "REL_TOO_LATE_HO_RATE_AB_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "REL_TOO_LATE_HO_RATE_BA",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_fromFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "REL_TOO_LATE_HO_RATE_BA"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "REL_TOO_LATE_HO_RATE_BA_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "SB_OCN_AB",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_fromFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "SB_OCN_AB"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "SB_OCN_AB_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "SB_OCN_BA",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_fromFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "SB_OCN_BA"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "SB_OCN_BA_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        }
+                      ]
+                    },
+                    "toscaPolicyState": ""
+                  }
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": []
+            },
+            "contextAlbumReference": [],
+            "taskLogic": {
+              "key": {
+                "parentKeyName": "FLBPolicy_Task",
+                "parentKeyVersion": "0.0.1",
+                "parentLocalName": "NULL",
+                "localName": "TaskLogic"
+              },
+              "logicFlavour": "FUZZY",
+              "logic": "somelogic goes here"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_Task_Post",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_Task_Post",
+              "version": "0.0.1"
+            },
+            "inputEvent": {
+              "key": {
+                "name": "FLBPolicy_fromFuzzy",
+                "version": "0.0.1"
+              },
+              "nameSpace": "org.onap.policy.apexaiasonom",
+              "source": "fuzzy",
+              "target": "apex",
+              "parameter": {
+                "entry": [
+                  {
+                    "key": "Adjacency_4G_Name",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_fromFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "Adjacency_4G_Name"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "Adjacency_4G_Name_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "CellA",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_fromFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "CellA"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "CellA_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "CellB",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_fromFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "CellB"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "CellB_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "OCN_AB",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_fromFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "OCN_AB"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "OCN_AB_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "OCN_BA",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_fromFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "OCN_BA"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "OCN_BA_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "REL_HO_EXEC_FAIL_RATE_AB",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_fromFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "REL_HO_EXEC_FAIL_RATE_AB"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "REL_HO_EXEC_FAIL_RATE_AB_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "REL_HO_EXEC_FAIL_RATE_BA",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_fromFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "REL_HO_EXEC_FAIL_RATE_BA"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "REL_HO_EXEC_FAIL_RATE_BA_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "REL_NUM_HO_WITH_EVENTS_AB",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_fromFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "REL_NUM_HO_WITH_EVENTS_AB"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "REL_NUM_HO_WITH_EVENTS_AB_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "REL_NUM_HO_WITH_EVENTS_BA",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_fromFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "REL_NUM_HO_WITH_EVENTS_BA"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "REL_NUM_HO_WITH_EVENTS_BA_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "REL_TOO_EARLY_HO_RATE_AB",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_fromFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "REL_TOO_EARLY_HO_RATE_AB"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "REL_TOO_EARLY_HO_RATE_AB_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "REL_TOO_EARLY_HO_RATE_BA",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_fromFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "REL_TOO_EARLY_HO_RATE_BA"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "REL_TOO_EARLY_HO_RATE_BA_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "REL_TOO_LATE_HO_RATE_AB",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_fromFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "REL_TOO_LATE_HO_RATE_AB"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "REL_TOO_LATE_HO_RATE_AB_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "REL_TOO_LATE_HO_RATE_BA",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_fromFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "REL_TOO_LATE_HO_RATE_BA"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "REL_TOO_LATE_HO_RATE_BA_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "SB_OCN_AB",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_fromFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "SB_OCN_AB"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "SB_OCN_AB_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "SB_OCN_BA",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_fromFuzzy",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "SB_OCN_BA"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "SB_OCN_BA_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  }
+                ]
+              },
+              "toscaPolicyState": ""
+            },
+            "outputEvents": {
+              "entry": [
+                {
+                  "key": "FLBPolicy_OutputEvent",
+                  "value": {
+                    "key": {
+                      "name": "FLBPolicy_OutputEvent",
+                      "version": "0.0.1"
+                    },
+                    "nameSpace": "org.onap.policy.apexaiasonom",
+                    "source": "apex",
+                    "target": "external",
+                    "parameter": {
+                      "entry": [
+                        {
+                          "key": "Adjacency_4G_Name",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_OutputEvent",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "Adjacency_4G_Name"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "Adjacency_4G_Name_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "CellA",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_OutputEvent",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "CellA"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "CellA_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "CellB",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_OutputEvent",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "CellB"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "CellB_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "OCN_AB",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_OutputEvent",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "OCN_AB"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "OCN_AB_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "OCN_BA",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_OutputEvent",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "OCN_BA"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "OCN_BA_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "REL_HO_EXEC_FAIL_RATE_AB",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_OutputEvent",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "REL_HO_EXEC_FAIL_RATE_AB"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "REL_HO_EXEC_FAIL_RATE_AB_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "REL_HO_EXEC_FAIL_RATE_BA",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_OutputEvent",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "REL_HO_EXEC_FAIL_RATE_BA"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "REL_HO_EXEC_FAIL_RATE_BA_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "REL_NUM_HO_WITH_EVENTS_AB",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_OutputEvent",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "REL_NUM_HO_WITH_EVENTS_AB"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "REL_NUM_HO_WITH_EVENTS_AB_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "REL_NUM_HO_WITH_EVENTS_BA",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_OutputEvent",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "REL_NUM_HO_WITH_EVENTS_BA"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "REL_NUM_HO_WITH_EVENTS_BA_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "REL_TOO_EARLY_HO_RATE_AB",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_OutputEvent",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "REL_TOO_EARLY_HO_RATE_AB"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "REL_TOO_EARLY_HO_RATE_AB_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "REL_TOO_EARLY_HO_RATE_BA",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_OutputEvent",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "REL_TOO_EARLY_HO_RATE_BA"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "REL_TOO_EARLY_HO_RATE_BA_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "REL_TOO_LATE_HO_RATE_AB",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_OutputEvent",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "REL_TOO_LATE_HO_RATE_AB"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "REL_TOO_LATE_HO_RATE_AB_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "REL_TOO_LATE_HO_RATE_BA",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_OutputEvent",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "REL_TOO_LATE_HO_RATE_BA"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "REL_TOO_LATE_HO_RATE_BA_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "SB_OCN_AB",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_OutputEvent",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "SB_OCN_AB"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "SB_OCN_AB_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "SB_OCN_BA",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_OutputEvent",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "SB_OCN_BA"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "SB_OCN_BA_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        }
+                      ]
+                    },
+                    "toscaPolicyState": ""
+                  }
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": []
+            },
+            "contextAlbumReference": [],
+            "taskLogic": {
+              "key": {
+                "parentKeyName": "FLBPolicy_Task_Post",
+                "parentKeyVersion": "0.0.1",
+                "parentLocalName": "NULL",
+                "localName": "TaskLogic"
+              },
+              "logicFlavour": "MVEL",
+              "logic": "logger.debug(subject.id);logger.debug(inFields);outFields.putAll(inFields);logger.debug(outFields);return true;"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_Task_Pre",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_Task_Pre",
+              "version": "0.0.1"
+            },
+            "inputEvent": {
+              "key": {
+                "name": "FLBPolicy_InputEvent",
+                "version": "0.0.1"
+              },
+              "nameSpace": "org.onap.policy.apexaiasonom",
+              "source": "external",
+              "target": "apex",
+              "parameter": {
+                "entry": [
+                  {
+                    "key": "Adjacency_4G_Name",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_InputEvent",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "Adjacency_4G_Name"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "Adjacency_4G_Name_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "CellA",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_InputEvent",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "CellA"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "CellA_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "CellB",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_InputEvent",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "CellB"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "CellB_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "ENABLE_CONGESTION",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_InputEvent",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "ENABLE_CONGESTION"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "ENABLE_CONGESTION_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "FREQ_REL_TYPE",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_InputEvent",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "FREQ_REL_TYPE"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "FREQ_REL_TYPE_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "HO_EXEC_FAIL_RATE_AB",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_InputEvent",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "HO_EXEC_FAIL_RATE_AB"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "HO_EXEC_FAIL_RATE_AB_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "HO_EXEC_FAIL_RATE_BA",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_InputEvent",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "HO_EXEC_FAIL_RATE_BA"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "HO_EXEC_FAIL_RATE_BA_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "LOW_CQI_SAMPLES_RATE_HO_AB",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_InputEvent",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "LOW_CQI_SAMPLES_RATE_HO_AB"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "LOW_CQI_SAMPLES_RATE_HO_AB_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "LOW_CQI_SAMPLES_RATE_HO_BA",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_InputEvent",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "LOW_CQI_SAMPLES_RATE_HO_BA"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "LOW_CQI_SAMPLES_RATE_HO_BA_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_InputEvent",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_InputEvent",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "PDCCH_CCE_HIGH_LOAD_DELTA",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_InputEvent",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "PDCCH_CCE_HIGH_LOAD_DELTA"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "PDCCH_CCE_HIGH_LOAD_DELTA_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "REL_HO_EXEC_FAIL_RATE_HIGH_AB",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_InputEvent",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "REL_HO_EXEC_FAIL_RATE_HIGH_AB"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "REL_HO_EXEC_FAIL_RATE_HIGH_BA",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_InputEvent",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "REL_HO_EXEC_FAIL_RATE_HIGH_BA"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "REL_HO_EXEC_FAIL_RATE_LOW_AB",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_InputEvent",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "REL_HO_EXEC_FAIL_RATE_LOW_AB"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "REL_HO_EXEC_FAIL_RATE_LOW_BA",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_InputEvent",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "REL_HO_EXEC_FAIL_RATE_LOW_BA"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "REL_NUM_HO_WITH_EVENTS_AB_IN",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_InputEvent",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "REL_NUM_HO_WITH_EVENTS_AB_IN"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "REL_NUM_HO_WITH_EVENTS_BA_IN",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_InputEvent",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "REL_NUM_HO_WITH_EVENTS_BA_IN"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "REL_TOO_EARLY_HO_RATE_HIGH_AB",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_InputEvent",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "REL_TOO_EARLY_HO_RATE_HIGH_AB"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "REL_TOO_EARLY_HO_RATE_HIGH_BA",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_InputEvent",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "REL_TOO_EARLY_HO_RATE_HIGH_BA"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "REL_TOO_EARLY_HO_RATE_LOW_AB",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_InputEvent",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "REL_TOO_EARLY_HO_RATE_LOW_AB"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "REL_TOO_EARLY_HO_RATE_LOW_BA",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_InputEvent",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "REL_TOO_EARLY_HO_RATE_LOW_BA"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "REL_TOO_LATE_HO_RATE_HIGH_AB",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_InputEvent",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "REL_TOO_LATE_HO_RATE_HIGH_AB"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "REL_TOO_LATE_HO_RATE_HIGH_BA",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_InputEvent",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "REL_TOO_LATE_HO_RATE_HIGH_BA"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "REL_TOO_LATE_HO_RATE_LOW_AB",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_InputEvent",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "REL_TOO_LATE_HO_RATE_LOW_AB"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "REL_TOO_LATE_HO_RATE_LOW_AB_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "REL_TOO_LATE_HO_RATE_LOW_BA",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_InputEvent",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "REL_TOO_LATE_HO_RATE_LOW_BA"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "REL_TOO_LATE_HO_RATE_LOW_BA_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "RRC_CONGESTION_DELTA",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_InputEvent",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "RRC_CONGESTION_DELTA"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "RRC_CONGESTION_DELTA_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "SET_TYPE",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_InputEvent",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "SET_TYPE"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "SET_TYPE_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "TOO_EARLY_HO_RATE_AB",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_InputEvent",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "TOO_EARLY_HO_RATE_AB"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "TOO_EARLY_HO_RATE_AB_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "TOO_EARLY_HO_RATE_BA",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_InputEvent",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "TOO_EARLY_HO_RATE_BA"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "TOO_EARLY_HO_RATE_BA_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "TOO_LATE_HO_RATE_AB",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_InputEvent",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "TOO_LATE_HO_RATE_AB"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "TOO_LATE_HO_RATE_AB_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "TOO_LATE_HO_RATE_BA",
+                    "value": {
+                      "key": {
+                        "parentKeyName": "FLBPolicy_InputEvent",
+                        "parentKeyVersion": "0.0.1",
+                        "parentLocalName": "NULL",
+                        "localName": "TOO_LATE_HO_RATE_BA"
+                      },
+                      "fieldSchemaKey": {
+                        "name": "TOO_LATE_HO_RATE_BA_type",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  }
+                ]
+              },
+              "toscaPolicyState": ""
+            },
+            "outputEvents": {
+              "entry": [
+                {
+                  "key": "FLBPolicy_toFuzzy",
+                  "value": {
+                    "key": {
+                      "name": "FLBPolicy_toFuzzy",
+                      "version": "0.0.1"
+                    },
+                    "nameSpace": "org.onap.policy.apexaiasonom",
+                    "source": "apex",
+                    "target": "fuzzy",
+                    "parameter": {
+                      "entry": [
+                        {
+                          "key": "Adjacency_4G_Name",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_toFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "Adjacency_4G_Name"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "Adjacency_4G_Name_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "CellA",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_toFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "CellA"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "CellA_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "CellB",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_toFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "CellB"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "CellB_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "ENABLE_CONGESTION",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_toFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "ENABLE_CONGESTION"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "ENABLE_CONGESTION_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "FREQ_REL_TYPE",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_toFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "FREQ_REL_TYPE"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "FREQ_REL_TYPE_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "HO_EXEC_FAIL_RATE_AB",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_toFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "HO_EXEC_FAIL_RATE_AB"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "HO_EXEC_FAIL_RATE_AB_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "HO_EXEC_FAIL_RATE_BA",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_toFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "HO_EXEC_FAIL_RATE_BA"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "HO_EXEC_FAIL_RATE_BA_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "LOW_CQI_SAMPLES_RATE_HO_AB",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_toFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "LOW_CQI_SAMPLES_RATE_HO_AB"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "LOW_CQI_SAMPLES_RATE_HO_AB_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "LOW_CQI_SAMPLES_RATE_HO_BA",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_toFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "LOW_CQI_SAMPLES_RATE_HO_BA"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "LOW_CQI_SAMPLES_RATE_HO_BA_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_toFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_toFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "PDCCH_CCE_HIGH_LOAD_DELTA",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_toFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "PDCCH_CCE_HIGH_LOAD_DELTA"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "PDCCH_CCE_HIGH_LOAD_DELTA_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "REL_HO_EXEC_FAIL_RATE_HIGH_AB",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_toFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "REL_HO_EXEC_FAIL_RATE_HIGH_AB"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "REL_HO_EXEC_FAIL_RATE_HIGH_BA",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_toFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "REL_HO_EXEC_FAIL_RATE_HIGH_BA"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "REL_HO_EXEC_FAIL_RATE_LOW_AB",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_toFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "REL_HO_EXEC_FAIL_RATE_LOW_AB"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "REL_HO_EXEC_FAIL_RATE_LOW_BA",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_toFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "REL_HO_EXEC_FAIL_RATE_LOW_BA"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "REL_NUM_HO_WITH_EVENTS_AB_IN",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_toFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "REL_NUM_HO_WITH_EVENTS_AB_IN"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "REL_NUM_HO_WITH_EVENTS_BA_IN",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_toFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "REL_NUM_HO_WITH_EVENTS_BA_IN"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "REL_TOO_EARLY_HO_RATE_HIGH_AB",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_toFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "REL_TOO_EARLY_HO_RATE_HIGH_AB"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "REL_TOO_EARLY_HO_RATE_HIGH_BA",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_toFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "REL_TOO_EARLY_HO_RATE_HIGH_BA"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "REL_TOO_EARLY_HO_RATE_LOW_AB",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_toFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "REL_TOO_EARLY_HO_RATE_LOW_AB"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "REL_TOO_EARLY_HO_RATE_LOW_BA",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_toFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "REL_TOO_EARLY_HO_RATE_LOW_BA"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "REL_TOO_LATE_HO_RATE_HIGH_AB",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_toFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "REL_TOO_LATE_HO_RATE_HIGH_AB"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "REL_TOO_LATE_HO_RATE_HIGH_BA",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_toFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "REL_TOO_LATE_HO_RATE_HIGH_BA"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "REL_TOO_LATE_HO_RATE_LOW_AB",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_toFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "REL_TOO_LATE_HO_RATE_LOW_AB"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "REL_TOO_LATE_HO_RATE_LOW_AB_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "REL_TOO_LATE_HO_RATE_LOW_BA",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_toFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "REL_TOO_LATE_HO_RATE_LOW_BA"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "REL_TOO_LATE_HO_RATE_LOW_BA_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "RRC_CONGESTION_DELTA",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_toFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "RRC_CONGESTION_DELTA"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "RRC_CONGESTION_DELTA_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "SET_TYPE",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_toFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "SET_TYPE"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "SET_TYPE_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "TOO_EARLY_HO_RATE_AB",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_toFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "TOO_EARLY_HO_RATE_AB"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "TOO_EARLY_HO_RATE_AB_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "TOO_EARLY_HO_RATE_BA",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_toFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "TOO_EARLY_HO_RATE_BA"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "TOO_EARLY_HO_RATE_BA_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "TOO_LATE_HO_RATE_AB",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_toFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "TOO_LATE_HO_RATE_AB"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "TOO_LATE_HO_RATE_AB_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "TOO_LATE_HO_RATE_BA",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_toFuzzy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "TOO_LATE_HO_RATE_BA"
+                            },
+                            "fieldSchemaKey": {
+                              "name": "TOO_LATE_HO_RATE_BA_type",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        }
+                      ]
+                    },
+                    "toscaPolicyState": ""
+                  }
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": []
+            },
+            "contextAlbumReference": [],
+            "taskLogic": {
+              "key": {
+                "parentKeyName": "FLBPolicy_Task_Pre",
+                "parentKeyVersion": "0.0.1",
+                "parentLocalName": "NULL",
+                "localName": "TaskLogic"
+              },
+              "logicFlavour": "MVEL",
+              "logic": "logger.debug(subject.id);logger.debug(inFields);outFields.putAll(inFields);logger.debug(outFields);return true;"
+            }
+          }
+        }
+      ]
+    }
+  },
+  "events": {
+    "key": {
+      "name": "FLBPolicy_PolicyModel_Events",
+      "version": "0.0.1"
+    },
+    "eventMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "FLBPolicy_InputEvent",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_InputEvent",
+              "version": "0.0.1"
+            },
+            "nameSpace": "org.onap.policy.apexaiasonom",
+            "source": "external",
+            "target": "apex",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "Adjacency_4G_Name",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_InputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Adjacency_4G_Name"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "Adjacency_4G_Name_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "CellA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_InputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "CellA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "CellA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "CellB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_InputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "CellB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "CellB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "ENABLE_CONGESTION",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_InputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "ENABLE_CONGESTION"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "ENABLE_CONGESTION_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "FREQ_REL_TYPE",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_InputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "FREQ_REL_TYPE"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "FREQ_REL_TYPE_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "HO_EXEC_FAIL_RATE_AB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_InputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "HO_EXEC_FAIL_RATE_AB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "HO_EXEC_FAIL_RATE_AB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "HO_EXEC_FAIL_RATE_BA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_InputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "HO_EXEC_FAIL_RATE_BA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "HO_EXEC_FAIL_RATE_BA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "LOW_CQI_SAMPLES_RATE_HO_AB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_InputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "LOW_CQI_SAMPLES_RATE_HO_AB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "LOW_CQI_SAMPLES_RATE_HO_AB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "LOW_CQI_SAMPLES_RATE_HO_BA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_InputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "LOW_CQI_SAMPLES_RATE_HO_BA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "LOW_CQI_SAMPLES_RATE_HO_BA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_InputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_InputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "PDCCH_CCE_HIGH_LOAD_DELTA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_InputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "PDCCH_CCE_HIGH_LOAD_DELTA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "PDCCH_CCE_HIGH_LOAD_DELTA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_HIGH_AB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_InputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_HO_EXEC_FAIL_RATE_HIGH_AB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_HIGH_BA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_InputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_HO_EXEC_FAIL_RATE_HIGH_BA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_LOW_AB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_InputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_HO_EXEC_FAIL_RATE_LOW_AB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_LOW_BA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_InputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_HO_EXEC_FAIL_RATE_LOW_BA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_NUM_HO_WITH_EVENTS_AB_IN",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_InputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_NUM_HO_WITH_EVENTS_AB_IN"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_NUM_HO_WITH_EVENTS_BA_IN",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_InputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_NUM_HO_WITH_EVENTS_BA_IN"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_HIGH_AB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_InputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_TOO_EARLY_HO_RATE_HIGH_AB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_HIGH_BA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_InputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_TOO_EARLY_HO_RATE_HIGH_BA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_LOW_AB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_InputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_TOO_EARLY_HO_RATE_LOW_AB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_LOW_BA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_InputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_TOO_EARLY_HO_RATE_LOW_BA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_HIGH_AB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_InputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_TOO_LATE_HO_RATE_HIGH_AB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_HIGH_BA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_InputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_TOO_LATE_HO_RATE_HIGH_BA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_LOW_AB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_InputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_TOO_LATE_HO_RATE_LOW_AB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_LOW_AB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_LOW_BA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_InputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_TOO_LATE_HO_RATE_LOW_BA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_LOW_BA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "RRC_CONGESTION_DELTA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_InputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "RRC_CONGESTION_DELTA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "RRC_CONGESTION_DELTA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "SET_TYPE",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_InputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "SET_TYPE"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "SET_TYPE_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TOO_EARLY_HO_RATE_AB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_InputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "TOO_EARLY_HO_RATE_AB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "TOO_EARLY_HO_RATE_AB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TOO_EARLY_HO_RATE_BA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_InputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "TOO_EARLY_HO_RATE_BA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "TOO_EARLY_HO_RATE_BA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TOO_LATE_HO_RATE_AB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_InputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "TOO_LATE_HO_RATE_AB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "TOO_LATE_HO_RATE_AB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TOO_LATE_HO_RATE_BA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_InputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "TOO_LATE_HO_RATE_BA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "TOO_LATE_HO_RATE_BA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "toscaPolicyState": ""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_OutputEvent",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_OutputEvent",
+              "version": "0.0.1"
+            },
+            "nameSpace": "org.onap.policy.apexaiasonom",
+            "source": "apex",
+            "target": "external",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "Adjacency_4G_Name",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_OutputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Adjacency_4G_Name"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "Adjacency_4G_Name_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "CellA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_OutputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "CellA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "CellA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "CellB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_OutputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "CellB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "CellB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "OCN_AB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_OutputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "OCN_AB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "OCN_AB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "OCN_BA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_OutputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "OCN_BA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "OCN_BA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_AB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_OutputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_HO_EXEC_FAIL_RATE_AB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_AB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_BA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_OutputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_HO_EXEC_FAIL_RATE_BA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_BA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_NUM_HO_WITH_EVENTS_AB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_OutputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_NUM_HO_WITH_EVENTS_AB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_NUM_HO_WITH_EVENTS_AB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_NUM_HO_WITH_EVENTS_BA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_OutputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_NUM_HO_WITH_EVENTS_BA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_NUM_HO_WITH_EVENTS_BA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_AB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_OutputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_TOO_EARLY_HO_RATE_AB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_AB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_BA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_OutputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_TOO_EARLY_HO_RATE_BA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_BA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_AB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_OutputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_TOO_LATE_HO_RATE_AB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_AB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_BA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_OutputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_TOO_LATE_HO_RATE_BA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_BA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "SB_OCN_AB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_OutputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "SB_OCN_AB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "SB_OCN_AB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "SB_OCN_BA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_OutputEvent",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "SB_OCN_BA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "SB_OCN_BA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "toscaPolicyState": ""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_fromFuzzy",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_fromFuzzy",
+              "version": "0.0.1"
+            },
+            "nameSpace": "org.onap.policy.apexaiasonom",
+            "source": "fuzzy",
+            "target": "apex",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "Adjacency_4G_Name",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_fromFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Adjacency_4G_Name"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "Adjacency_4G_Name_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "CellA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_fromFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "CellA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "CellA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "CellB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_fromFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "CellB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "CellB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "OCN_AB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_fromFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "OCN_AB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "OCN_AB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "OCN_BA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_fromFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "OCN_BA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "OCN_BA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_AB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_fromFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_HO_EXEC_FAIL_RATE_AB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_AB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_BA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_fromFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_HO_EXEC_FAIL_RATE_BA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_BA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_NUM_HO_WITH_EVENTS_AB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_fromFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_NUM_HO_WITH_EVENTS_AB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_NUM_HO_WITH_EVENTS_AB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_NUM_HO_WITH_EVENTS_BA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_fromFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_NUM_HO_WITH_EVENTS_BA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_NUM_HO_WITH_EVENTS_BA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_AB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_fromFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_TOO_EARLY_HO_RATE_AB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_AB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_BA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_fromFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_TOO_EARLY_HO_RATE_BA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_BA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_AB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_fromFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_TOO_LATE_HO_RATE_AB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_AB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_BA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_fromFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_TOO_LATE_HO_RATE_BA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_BA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "SB_OCN_AB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_fromFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "SB_OCN_AB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "SB_OCN_AB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "SB_OCN_BA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_fromFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "SB_OCN_BA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "SB_OCN_BA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "toscaPolicyState": ""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_toFuzzy",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_toFuzzy",
+              "version": "0.0.1"
+            },
+            "nameSpace": "org.onap.policy.apexaiasonom",
+            "source": "apex",
+            "target": "fuzzy",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "Adjacency_4G_Name",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_toFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Adjacency_4G_Name"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "Adjacency_4G_Name_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "CellA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_toFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "CellA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "CellA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "CellB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_toFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "CellB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "CellB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "ENABLE_CONGESTION",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_toFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "ENABLE_CONGESTION"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "ENABLE_CONGESTION_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "FREQ_REL_TYPE",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_toFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "FREQ_REL_TYPE"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "FREQ_REL_TYPE_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "HO_EXEC_FAIL_RATE_AB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_toFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "HO_EXEC_FAIL_RATE_AB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "HO_EXEC_FAIL_RATE_AB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "HO_EXEC_FAIL_RATE_BA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_toFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "HO_EXEC_FAIL_RATE_BA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "HO_EXEC_FAIL_RATE_BA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "LOW_CQI_SAMPLES_RATE_HO_AB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_toFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "LOW_CQI_SAMPLES_RATE_HO_AB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "LOW_CQI_SAMPLES_RATE_HO_AB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "LOW_CQI_SAMPLES_RATE_HO_BA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_toFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "LOW_CQI_SAMPLES_RATE_HO_BA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "LOW_CQI_SAMPLES_RATE_HO_BA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_toFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_toFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "PDCCH_CCE_HIGH_LOAD_DELTA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_toFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "PDCCH_CCE_HIGH_LOAD_DELTA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "PDCCH_CCE_HIGH_LOAD_DELTA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_HIGH_AB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_toFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_HO_EXEC_FAIL_RATE_HIGH_AB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_HIGH_BA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_toFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_HO_EXEC_FAIL_RATE_HIGH_BA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_LOW_AB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_toFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_HO_EXEC_FAIL_RATE_LOW_AB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_LOW_BA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_toFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_HO_EXEC_FAIL_RATE_LOW_BA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_NUM_HO_WITH_EVENTS_AB_IN",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_toFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_NUM_HO_WITH_EVENTS_AB_IN"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_NUM_HO_WITH_EVENTS_BA_IN",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_toFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_NUM_HO_WITH_EVENTS_BA_IN"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_HIGH_AB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_toFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_TOO_EARLY_HO_RATE_HIGH_AB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_HIGH_BA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_toFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_TOO_EARLY_HO_RATE_HIGH_BA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_LOW_AB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_toFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_TOO_EARLY_HO_RATE_LOW_AB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_LOW_BA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_toFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_TOO_EARLY_HO_RATE_LOW_BA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_HIGH_AB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_toFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_TOO_LATE_HO_RATE_HIGH_AB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_HIGH_BA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_toFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_TOO_LATE_HO_RATE_HIGH_BA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_LOW_AB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_toFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_TOO_LATE_HO_RATE_LOW_AB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_LOW_AB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_LOW_BA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_toFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "REL_TOO_LATE_HO_RATE_LOW_BA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_LOW_BA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "RRC_CONGESTION_DELTA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_toFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "RRC_CONGESTION_DELTA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "RRC_CONGESTION_DELTA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "SET_TYPE",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_toFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "SET_TYPE"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "SET_TYPE_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TOO_EARLY_HO_RATE_AB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_toFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "TOO_EARLY_HO_RATE_AB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "TOO_EARLY_HO_RATE_AB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TOO_EARLY_HO_RATE_BA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_toFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "TOO_EARLY_HO_RATE_BA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "TOO_EARLY_HO_RATE_BA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TOO_LATE_HO_RATE_AB",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_toFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "TOO_LATE_HO_RATE_AB"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "TOO_LATE_HO_RATE_AB_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "TOO_LATE_HO_RATE_BA",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "FLBPolicy_toFuzzy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "TOO_LATE_HO_RATE_BA"
+                    },
+                    "fieldSchemaKey": {
+                      "name": "TOO_LATE_HO_RATE_BA_type",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "toscaPolicyState": ""
+          }
+        }
+      ]
+    }
+  },
+  "albums": {
+    "key": {
+      "name": "FLBPolicy_PolicyModel_Albums",
+      "version": "0.0.1"
+    },
+    "albums": {
+      "entry": []
+    }
+  },
+  "schemas": {
+    "key": {
+      "name": "FLBPolicy_PolicyModel_Schemas",
+      "version": "0.0.1"
+    },
+    "schemas": {
+      "entry": [
+        {
+          "key": {
+            "name": "Adjacency_4G_Name_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Adjacency_4G_Name_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.String"
+          }
+        },
+        {
+          "key": {
+            "name": "CellA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "CellA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.String"
+          }
+        },
+        {
+          "key": {
+            "name": "CellB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "CellB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.String"
+          }
+        },
+        {
+          "key": {
+            "name": "ENABLE_CONGESTION_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "ENABLE_CONGESTION_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Boolean"
+          }
+        },
+        {
+          "key": {
+            "name": "FREQ_REL_TYPE_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FREQ_REL_TYPE_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.String"
+          }
+        },
+        {
+          "key": {
+            "name": "HO_EXEC_FAIL_RATE_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "HO_EXEC_FAIL_RATE_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "HO_EXEC_FAIL_RATE_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "HO_EXEC_FAIL_RATE_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "LOW_CQI_SAMPLES_RATE_HO_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LOW_CQI_SAMPLES_RATE_HO_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "LOW_CQI_SAMPLES_RATE_HO_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LOW_CQI_SAMPLES_RATE_HO_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "OCN_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "OCN_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Double"
+          }
+        },
+        {
+          "key": {
+            "name": "OCN_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "OCN_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Double"
+          }
+        },
+        {
+          "key": {
+            "name": "PDCCH_CCE_HIGH_LOAD_DELTA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "PDCCH_CCE_HIGH_LOAD_DELTA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_HO_EXEC_FAIL_RATE_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_HO_EXEC_FAIL_RATE_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Boolean"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_HO_EXEC_FAIL_RATE_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_HO_EXEC_FAIL_RATE_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Boolean"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_NUM_HO_WITH_EVENTS_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_NUM_HO_WITH_EVENTS_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Boolean"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_NUM_HO_WITH_EVENTS_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_NUM_HO_WITH_EVENTS_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Boolean"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_EARLY_HO_RATE_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_EARLY_HO_RATE_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Boolean"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_EARLY_HO_RATE_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_EARLY_HO_RATE_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Boolean"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_LATE_HO_RATE_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_LATE_HO_RATE_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Boolean"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_LATE_HO_RATE_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_LATE_HO_RATE_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Boolean"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_LATE_HO_RATE_LOW_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_LATE_HO_RATE_LOW_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_LATE_HO_RATE_LOW_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_LATE_HO_RATE_LOW_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "RRC_CONGESTION_DELTA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "RRC_CONGESTION_DELTA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "SB_OCN_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SB_OCN_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.String"
+          }
+        },
+        {
+          "key": {
+            "name": "SB_OCN_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SB_OCN_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.String"
+          }
+        },
+        {
+          "key": {
+            "name": "SET_TYPE_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SET_TYPE_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.String"
+          }
+        },
+        {
+          "key": {
+            "name": "TOO_EARLY_HO_RATE_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TOO_EARLY_HO_RATE_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "TOO_EARLY_HO_RATE_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TOO_EARLY_HO_RATE_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "TOO_LATE_HO_RATE_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TOO_LATE_HO_RATE_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "TOO_LATE_HO_RATE_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TOO_LATE_HO_RATE_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        }
+      ]
+    }
+  },
+  "key": {
+    "name": "FLBPolicy_PolicyModel",
+    "version": "0.0.1"
+  },
+  "keyInformation": {
+    "key": {
+      "name": "FLBPolicy_PolicyModel_KeyInfo",
+      "version": "0.0.1"
+    },
+    "keyInfoMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "Adjacency_4G_Name_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Adjacency_4G_Name_type",
+              "version": "0.0.1"
+            },
+            "UUID": "d419f1eb-12a2-319e-b0aa-350088c91936",
+            "description": "Generated description for concept referred to by key \"Adjacency_4G_Name_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "CellA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "CellA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "2d81d4da-975d-30e0-b112-144c6f54b715",
+            "description": "Generated description for concept referred to by key \"CellA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "CellB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "CellB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "0ad50b7b-7a9a-355b-8d38-996e57b01b32",
+            "description": "Generated description for concept referred to by key \"CellB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "ENABLE_CONGESTION_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "ENABLE_CONGESTION_type",
+              "version": "0.0.1"
+            },
+            "UUID": "62f3d831-5a5e-31d3-ad90-4031b7a8be1f",
+            "description": "Generated description for concept referred to by key \"ENABLE_CONGESTION_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_InputEvent",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_InputEvent",
+              "version": "0.0.1"
+            },
+            "UUID": "517df51a-d782-363f-8c2f-58121fce8ee1",
+            "description": "Generated description for concept referred to by key \"FLBPolicy_InputEvent:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_OutputEvent",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_OutputEvent",
+              "version": "0.0.1"
+            },
+            "UUID": "669bae08-a3ce-3aa0-9ad4-1c8960d71e4c",
+            "description": "Generated description for concept referred to by key \"FLBPolicy_OutputEvent:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_Policy",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_Policy",
+              "version": "0.0.1"
+            },
+            "UUID": "c40a8aad-f526-3f72-9a46-1562de434ba9",
+            "description": "Generated description for concept referred to by key \"FLBPolicy_Policy:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_PolicyModel",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_PolicyModel",
+              "version": "0.0.1"
+            },
+            "UUID": "452bb7d5-7586-396f-9190-805cd0b6cfa2",
+            "description": "Generated description for concept referred to by key \"FLBPolicy_PolicyModel:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_PolicyModel_Albums",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_PolicyModel_Albums",
+              "version": "0.0.1"
+            },
+            "UUID": "9ec5632a-dda6-3190-81c0-b8f9e6a26165",
+            "description": "Generated description for concept referred to by key \"FLBPolicy_PolicyModel_Albums:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_PolicyModel_Events",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_PolicyModel_Events",
+              "version": "0.0.1"
+            },
+            "UUID": "39f5d0e7-0c11-3352-b3d3-4c2dac00df30",
+            "description": "Generated description for concept referred to by key \"FLBPolicy_PolicyModel_Events:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_PolicyModel_KeyInfo",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_PolicyModel_KeyInfo",
+              "version": "0.0.1"
+            },
+            "UUID": "41f57973-4b95-33f7-8791-f19c36ded99d",
+            "description": "Generated description for concept referred to by key \"FLBPolicy_PolicyModel_KeyInfo:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_PolicyModel_Policies",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_PolicyModel_Policies",
+              "version": "0.0.1"
+            },
+            "UUID": "8ac8e088-5b9c-3872-939e-1743f3a4ab55",
+            "description": "Generated description for concept referred to by key \"FLBPolicy_PolicyModel_Policies:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_PolicyModel_Schemas",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_PolicyModel_Schemas",
+              "version": "0.0.1"
+            },
+            "UUID": "e6a916aa-f9b3-33b8-8031-8350b9d61430",
+            "description": "Generated description for concept referred to by key \"FLBPolicy_PolicyModel_Schemas:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_PolicyModel_Tasks",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_PolicyModel_Tasks",
+              "version": "0.0.1"
+            },
+            "UUID": "038732da-b5e7-378e-8b74-f7b76b697522",
+            "description": "Generated description for concept referred to by key \"FLBPolicy_PolicyModel_Tasks:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_Task",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_Task",
+              "version": "0.0.1"
+            },
+            "UUID": "e548969f-172f-3628-80fa-d1510914cd5e",
+            "description": "Generated description for concept referred to by key \"FLBPolicy_Task:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_Task_Post",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_Task_Post",
+              "version": "0.0.1"
+            },
+            "UUID": "82731aaa-1fd8-3606-a76e-469f8ed689a6",
+            "description": "Generated description for concept referred to by key \"FLBPolicy_Task_Post:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_Task_Pre",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_Task_Pre",
+              "version": "0.0.1"
+            },
+            "UUID": "9ed6d783-bd34-30c2-ac60-796bc185c4cb",
+            "description": "Generated description for concept referred to by key \"FLBPolicy_Task_Pre:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_fromFuzzy",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_fromFuzzy",
+              "version": "0.0.1"
+            },
+            "UUID": "00843923-d5dd-395b-a35d-d6aacf698a75",
+            "description": "Generated description for concept referred to by key \"FLBPolicy_fromFuzzy:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_toFuzzy",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_toFuzzy",
+              "version": "0.0.1"
+            },
+            "UUID": "428baca8-ecc9-35d6-9744-cb4f79524987",
+            "description": "Generated description for concept referred to by key \"FLBPolicy_toFuzzy:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FREQ_REL_TYPE_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FREQ_REL_TYPE_type",
+              "version": "0.0.1"
+            },
+            "UUID": "52be9ebc-e68c-3d60-a9ed-8ac979a4e044",
+            "description": "Generated description for concept referred to by key \"FREQ_REL_TYPE_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "HO_EXEC_FAIL_RATE_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "HO_EXEC_FAIL_RATE_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "4befd7de-f7fd-3d87-9344-2eaf93b0cebf",
+            "description": "Generated description for concept referred to by key \"HO_EXEC_FAIL_RATE_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "HO_EXEC_FAIL_RATE_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "HO_EXEC_FAIL_RATE_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "4dcc20db-256f-321a-acbe-cb12d159f3c3",
+            "description": "Generated description for concept referred to by key \"HO_EXEC_FAIL_RATE_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "LOW_CQI_SAMPLES_RATE_HO_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LOW_CQI_SAMPLES_RATE_HO_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "2a882905-93bb-3c52-b184-560c6afef187",
+            "description": "Generated description for concept referred to by key \"LOW_CQI_SAMPLES_RATE_HO_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "LOW_CQI_SAMPLES_RATE_HO_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LOW_CQI_SAMPLES_RATE_HO_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "697441ca-9784-3a13-a9fc-428b34e64a9c",
+            "description": "Generated description for concept referred to by key \"LOW_CQI_SAMPLES_RATE_HO_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "00903a62-7936-3ac3-8715-c8cbaae5b983",
+            "description": "Generated description for concept referred to by key \"LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "fcda43fa-4acc-3810-b7f4-0b7350f0f46f",
+            "description": "Generated description for concept referred to by key \"LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "OCN_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "OCN_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "ded27457-8952-32bb-b5db-f76909ff7e07",
+            "description": "Generated description for concept referred to by key \"OCN_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "OCN_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "OCN_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "3a5ba07f-c6b8-3262-b6b9-0a01cafb7533",
+            "description": "Generated description for concept referred to by key \"OCN_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "PDCCH_CCE_HIGH_LOAD_DELTA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "PDCCH_CCE_HIGH_LOAD_DELTA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "3f123830-4663-36af-b2cd-b3c296cc7f85",
+            "description": "Generated description for concept referred to by key \"PDCCH_CCE_HIGH_LOAD_DELTA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_HO_EXEC_FAIL_RATE_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_HO_EXEC_FAIL_RATE_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "49b7a82b-aedb-389e-8775-5285f376e144",
+            "description": "Generated description for concept referred to by key \"REL_HO_EXEC_FAIL_RATE_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_HO_EXEC_FAIL_RATE_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_HO_EXEC_FAIL_RATE_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "81dbe802-54db-3063-97e1-e61197f4c9eb",
+            "description": "Generated description for concept referred to by key \"REL_HO_EXEC_FAIL_RATE_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "986894e4-e566-3c33-9b47-716ed552caa5",
+            "description": "Generated description for concept referred to by key \"REL_HO_EXEC_FAIL_RATE_HIGH_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "fa9fb3f4-234e-3f0a-82da-96bae64c71e3",
+            "description": "Generated description for concept referred to by key \"REL_HO_EXEC_FAIL_RATE_HIGH_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "150d7cae-55a3-3329-8030-de1ea3b60d8a",
+            "description": "Generated description for concept referred to by key \"REL_HO_EXEC_FAIL_RATE_LOW_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "10bb9e3a-feaa-32be-a3a7-6c9338d90713",
+            "description": "Generated description for concept referred to by key \"REL_HO_EXEC_FAIL_RATE_LOW_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
+              "version": "0.0.1"
+            },
+            "UUID": "ca72c58c-f6b6-31fa-bbf5-4c88bfc47242",
+            "description": "Generated description for concept referred to by key \"REL_NUM_HO_WITH_EVENTS_AB_IN_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_NUM_HO_WITH_EVENTS_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_NUM_HO_WITH_EVENTS_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "daa5dab4-6f5e-3e9f-a6e9-d99a4b69169e",
+            "description": "Generated description for concept referred to by key \"REL_NUM_HO_WITH_EVENTS_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
+              "version": "0.0.1"
+            },
+            "UUID": "de287299-4836-359c-93e2-1bdd549046da",
+            "description": "Generated description for concept referred to by key \"REL_NUM_HO_WITH_EVENTS_BA_IN_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_NUM_HO_WITH_EVENTS_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_NUM_HO_WITH_EVENTS_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "66d4d94c-d4e6-3895-b9b8-3c22aac98b8d",
+            "description": "Generated description for concept referred to by key \"REL_NUM_HO_WITH_EVENTS_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_EARLY_HO_RATE_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_EARLY_HO_RATE_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "66129c59-42bd-3353-9d5d-0da48702f65d",
+            "description": "Generated description for concept referred to by key \"REL_TOO_EARLY_HO_RATE_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_EARLY_HO_RATE_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_EARLY_HO_RATE_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "9d33b8d1-944e-36f8-91a8-bca7cad2c7e0",
+            "description": "Generated description for concept referred to by key \"REL_TOO_EARLY_HO_RATE_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "59fef8d9-69ea-3971-9219-9cc887f53998",
+            "description": "Generated description for concept referred to by key \"REL_TOO_EARLY_HO_RATE_HIGH_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "bc18030e-23e5-3a7d-bea2-03e8809b8aff",
+            "description": "Generated description for concept referred to by key \"REL_TOO_EARLY_HO_RATE_HIGH_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "dc299c5f-d14d-35be-a6c5-b29ac0624cd7",
+            "description": "Generated description for concept referred to by key \"REL_TOO_EARLY_HO_RATE_LOW_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "fea56a45-7ae7-35d5-87f6-5a0bca4abe41",
+            "description": "Generated description for concept referred to by key \"REL_TOO_EARLY_HO_RATE_LOW_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_LATE_HO_RATE_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_LATE_HO_RATE_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "fa30b0a2-9210-3d54-b065-f77da448be2c",
+            "description": "Generated description for concept referred to by key \"REL_TOO_LATE_HO_RATE_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_LATE_HO_RATE_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_LATE_HO_RATE_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "02094e57-576d-31e5-b3ac-d5460487dabe",
+            "description": "Generated description for concept referred to by key \"REL_TOO_LATE_HO_RATE_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "158e70a0-53a6-35e0-81b5-26a8d843a9a3",
+            "description": "Generated description for concept referred to by key \"REL_TOO_LATE_HO_RATE_HIGH_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "83114449-3786-3783-b853-716e19f2e15e",
+            "description": "Generated description for concept referred to by key \"REL_TOO_LATE_HO_RATE_HIGH_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_LATE_HO_RATE_LOW_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_LATE_HO_RATE_LOW_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "0570fe2b-3e78-35a4-b87c-ce753374794e",
+            "description": "Generated description for concept referred to by key \"REL_TOO_LATE_HO_RATE_LOW_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_LATE_HO_RATE_LOW_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_LATE_HO_RATE_LOW_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "6d54cc79-bf44-3177-9010-29ec432daff6",
+            "description": "Generated description for concept referred to by key \"REL_TOO_LATE_HO_RATE_LOW_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "RRC_CONGESTION_DELTA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "RRC_CONGESTION_DELTA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "a836c4b9-ca1d-3c2f-b70c-00616666bc51",
+            "description": "Generated description for concept referred to by key \"RRC_CONGESTION_DELTA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "SB_OCN_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SB_OCN_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "f408fca4-4959-371e-8e52-8824729c159f",
+            "description": "Generated description for concept referred to by key \"SB_OCN_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "SB_OCN_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SB_OCN_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "35d03a09-1710-3966-b539-11e0065d434c",
+            "description": "Generated description for concept referred to by key \"SB_OCN_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "SET_TYPE_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SET_TYPE_type",
+              "version": "0.0.1"
+            },
+            "UUID": "3a69329a-2d57-318e-a8bf-c3533f49fbb8",
+            "description": "Generated description for concept referred to by key \"SET_TYPE_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TOO_EARLY_HO_RATE_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TOO_EARLY_HO_RATE_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "11789718-a30a-3c5d-a2c2-30c29aadf8b0",
+            "description": "Generated description for concept referred to by key \"TOO_EARLY_HO_RATE_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TOO_EARLY_HO_RATE_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TOO_EARLY_HO_RATE_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "15e8862a-6bab-331c-bb1e-3ffc27f18812",
+            "description": "Generated description for concept referred to by key \"TOO_EARLY_HO_RATE_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TOO_LATE_HO_RATE_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TOO_LATE_HO_RATE_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "ab94b60a-8c34-3b21-9eee-10114fd3cddc",
+            "description": "Generated description for concept referred to by key \"TOO_LATE_HO_RATE_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TOO_LATE_HO_RATE_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TOO_LATE_HO_RATE_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "87fab8f7-160f-3f57-ba72-128acad888eb",
+            "description": "Generated description for concept referred to by key \"TOO_LATE_HO_RATE_BA_type:0.0.1\""
+          }
+        }
+      ]
+    }
+  }
+}
index 4951f85..7773513 100644 (file)
 {
-   "apexPolicyModel" : {
-      "key" : {
-         "name" : "FLBPolicy_PolicyModel",
-         "version" : "0.0.1"
-      },
-      "keyInformation" : {
-         "key" : {
-            "name" : "FLBPolicy_PolicyModel_KeyInfo",
-            "version" : "0.0.1"
-         },
-         "keyInfoMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "Adjacency_4G_Name_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Adjacency_4G_Name_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "fa58e9cd-488e-4eec-9ccb-e156f6a43a35",
-                  "description" : "Generated description for concept referred to by key \"Adjacency_4G_Name_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "CellA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "CellA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "c41e1e24-ab71-4dbd-a2b7-7d349bade884",
-                  "description" : "Generated description for concept referred to by key \"CellA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "CellB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "CellB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "f2d43289-fcf7-4c9c-a186-ecd2d49fafa9",
-                  "description" : "Generated description for concept referred to by key \"CellB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "ENABLE_CONGESTION_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "ENABLE_CONGESTION_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "a2217f20-97fd-457e-8f28-30bf0c02068f",
-                  "description" : "Generated description for concept referred to by key \"ENABLE_CONGESTION_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FREQ_REL_TYPE_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FREQ_REL_TYPE_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "628be116-99bb-4c8f-a833-94a452f6a582",
-                  "description" : "Generated description for concept referred to by key \"FREQ_REL_TYPE_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "HO_EXEC_FAIL_RATE_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "HO_EXEC_FAIL_RATE_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "37c742ed-f039-48eb-a20d-2931940f4bf1",
-                  "description" : "Generated description for concept referred to by key \"HO_EXEC_FAIL_RATE_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "HO_EXEC_FAIL_RATE_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "HO_EXEC_FAIL_RATE_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "29c1077f-c382-4520-80b8-9d0ddad7547a",
-                  "description" : "Generated description for concept referred to by key \"HO_EXEC_FAIL_RATE_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "LOW_CQI_SAMPLES_RATE_HO_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LOW_CQI_SAMPLES_RATE_HO_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0de782d4-f6d7-42f1-b3e4-fbc3d917a68b",
-                  "description" : "Generated description for concept referred to by key \"LOW_CQI_SAMPLES_RATE_HO_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "LOW_CQI_SAMPLES_RATE_HO_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LOW_CQI_SAMPLES_RATE_HO_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "d81522cd-b143-4a0c-aedb-271725fc2506",
-                  "description" : "Generated description for concept referred to by key \"LOW_CQI_SAMPLES_RATE_HO_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "828e3584-d194-48d1-8a49-45afb8b0cd5d",
-                  "description" : "Generated description for concept referred to by key \"LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "88d9aaec-c2de-47d1-9264-4318e76ebdee",
-                  "description" : "Generated description for concept referred to by key \"LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_InputEvent",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_InputEvent",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "f99b46f4-42fa-4873-a3f0-663ef950e917",
-                  "description" : "Generated description for concept referred to by key \"FLBPolicy_InputEvent:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_OutputEvent",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_OutputEvent",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "90d481b5-d0df-4167-a14b-6c1fd9ee4a4c",
-                  "description" : "Generated description for concept referred to by key \"FLBPolicy_OutputEvent:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_Policy",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_Policy",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "26c27f19-c56f-4ddc-8561-bfa1a89dc9db",
-                  "description" : "Generated description for concept referred to by key \"FLBPolicy_Policy:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_PolicyModel",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_PolicyModel",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "aeb5ab2b-0b60-41ac-889d-787e3b59fd19",
-                  "description" : "Generated description for concept referred to by key \"FLBPolicy_PolicyModel:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_PolicyModel_Events",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_PolicyModel_Events",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "952468c2-386e-4984-9f46-8c84208ad9bc",
-                  "description" : "Generated description for concept referred to by key \"FLBPolicy_PolicyModel_Events:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_PolicyModel_KeyInfo",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_PolicyModel_KeyInfo",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0e7c3475-8fbc-446d-afbe-d54ae56fc0ee",
-                  "description" : "Generated description for concept referred to by key \"FLBPolicy_PolicyModel_KeyInfo:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_PolicyModel_Policies",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_PolicyModel_Policies",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "c2130341-3a43-41ae-a942-5aeba3f86724",
-                  "description" : "Generated description for concept referred to by key \"FLBPolicy_PolicyModel_Policies:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_PolicyModel_Schemas",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_PolicyModel_Schemas",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "09dd200b-9280-4f27-a85a-fab9fa276586",
-                  "description" : "Generated description for concept referred to by key \"FLBPolicy_PolicyModel_Schemas:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_PolicyModel_Tasks",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_PolicyModel_Tasks",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "4eb61362-ef5b-454e-b540-e1301df8108b",
-                  "description" : "Generated description for concept referred to by key \"FLBPolicy_PolicyModel_Tasks:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_Task",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_Task",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "76e762b7-8fdf-4d02-b4f3-60bf340997fd",
-                  "description" : "Generated description for concept referred to by key \"FLBPolicy_Task:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_Task_Post",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_Task_Post",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "3252ff86-02ee-4561-a818-4c7a12546045",
-                  "description" : "Generated description for concept referred to by key \"FLBPolicy_Task_Post:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_Task_Pre",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_Task_Pre",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "c4fde272-52f0-4ac0-a37b-a25aa043e122",
-                  "description" : "Generated description for concept referred to by key \"FLBPolicy_Task_Pre:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_fromFuzzy",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_fromFuzzy",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "54b771b4-11af-43eb-94a2-d97e8b585515",
-                  "description" : "Generated description for concept referred to by key \"FLBPolicy_fromFuzzy:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_toFuzzy",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_toFuzzy",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "960205cd-3cf1-4e90-a456-a0ac59bb06d5",
-                  "description" : "Generated description for concept referred to by key \"FLBPolicy_toFuzzy:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "OCN_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "OCN_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0cb3cebd-9f7e-40b6-be2b-83da8a3bb249",
-                  "description" : "Generated description for concept referred to by key \"OCN_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "OCN_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "OCN_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "db41babb-500e-4369-acea-26b312de47c3",
-                  "description" : "Generated description for concept referred to by key \"OCN_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "PDCCH_CCE_HIGH_LOAD_DELTA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "PDCCH_CCE_HIGH_LOAD_DELTA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "c1374266-f148-4c6e-9aa0-eb4ad4e812a0",
-                  "description" : "Generated description for concept referred to by key \"PDCCH_CCE_HIGH_LOAD_DELTA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_HO_EXEC_FAIL_RATE_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_HO_EXEC_FAIL_RATE_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "285b0913-0d66-4546-8893-95bf0d267911",
-                  "description" : "Generated description for concept referred to by key \"REL_HO_EXEC_FAIL_RATE_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_HO_EXEC_FAIL_RATE_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_HO_EXEC_FAIL_RATE_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "1e5556fe-bdff-4520-b8ae-606c4275b4b3",
-                  "description" : "Generated description for concept referred to by key \"REL_HO_EXEC_FAIL_RATE_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "857cd994-c1ce-43b2-94f0-215e824cab75",
-                  "description" : "Generated description for concept referred to by key \"REL_HO_EXEC_FAIL_RATE_HIGH_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "6a9fa224-1568-4da7-be8a-5fc897373f57",
-                  "description" : "Generated description for concept referred to by key \"REL_HO_EXEC_FAIL_RATE_HIGH_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "cec3b03a-7c12-4b37-b60f-79c95a3adb97",
-                  "description" : "Generated description for concept referred to by key \"REL_HO_EXEC_FAIL_RATE_LOW_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "2e0caf46-5081-4a67-bb64-6a4ff2721b6b",
-                  "description" : "Generated description for concept referred to by key \"REL_HO_EXEC_FAIL_RATE_LOW_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "4b96864a-8922-4698-8dba-ba6d1ecc042c",
-                  "description" : "Generated description for concept referred to by key \"REL_NUM_HO_WITH_EVENTS_AB_IN_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_NUM_HO_WITH_EVENTS_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_NUM_HO_WITH_EVENTS_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "670708b1-5bf4-4f0c-b6f1-47affe918580",
-                  "description" : "Generated description for concept referred to by key \"REL_NUM_HO_WITH_EVENTS_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "eacfe8b0-dd88-44b0-8f7d-89bd0fc8cd8a",
-                  "description" : "Generated description for concept referred to by key \"REL_NUM_HO_WITH_EVENTS_BA_IN_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_NUM_HO_WITH_EVENTS_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_NUM_HO_WITH_EVENTS_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "44129948-e185-4a0d-ac60-2851d84384c4",
-                  "description" : "Generated description for concept referred to by key \"REL_NUM_HO_WITH_EVENTS_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_EARLY_HO_RATE_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_EARLY_HO_RATE_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "c76dfe42-a395-4977-b3c7-b9777f2873b3",
-                  "description" : "Generated description for concept referred to by key \"REL_TOO_EARLY_HO_RATE_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_EARLY_HO_RATE_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_EARLY_HO_RATE_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "ec904666-3e58-4d70-badc-aef1212a9b99",
-                  "description" : "Generated description for concept referred to by key \"REL_TOO_EARLY_HO_RATE_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "16f74164-13fe-4964-9ca3-76bf2448d31e",
-                  "description" : "Generated description for concept referred to by key \"REL_TOO_EARLY_HO_RATE_HIGH_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "9ee26f19-efc8-4df2-afef-6f0fb5b7fd41",
-                  "description" : "Generated description for concept referred to by key \"REL_TOO_EARLY_HO_RATE_HIGH_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "18553ab2-fe2b-4068-97eb-084f22e159b9",
-                  "description" : "Generated description for concept referred to by key \"REL_TOO_EARLY_HO_RATE_LOW_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "d91c982c-1e31-499f-9c9f-a98407e24ef3",
-                  "description" : "Generated description for concept referred to by key \"REL_TOO_EARLY_HO_RATE_LOW_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_LATE_HO_RATE_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_LATE_HO_RATE_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "f27118e0-202f-4405-b5fa-98d429ff8f27",
-                  "description" : "Generated description for concept referred to by key \"REL_TOO_LATE_HO_RATE_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_LATE_HO_RATE_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_LATE_HO_RATE_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "11a5c54a-2ce6-4fbc-bc6e-ce4dd7af0a6a",
-                  "description" : "Generated description for concept referred to by key \"REL_TOO_LATE_HO_RATE_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "43e67457-2c69-48ff-90f6-bc5373e45b8d",
-                  "description" : "Generated description for concept referred to by key \"REL_TOO_LATE_HO_RATE_HIGH_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "66664526-6223-41de-af3d-991f415a84ae",
-                  "description" : "Generated description for concept referred to by key \"REL_TOO_LATE_HO_RATE_HIGH_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_LATE_HO_RATE_LOW_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_LATE_HO_RATE_LOW_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "b5d23339-ea3a-414a-a981-b6581dfe7503",
-                  "description" : "Generated description for concept referred to by key \"REL_TOO_LATE_HO_RATE_LOW_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_LATE_HO_RATE_LOW_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_LATE_HO_RATE_LOW_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "a2043cac-1a9b-4e8a-beb9-858eb6fe025f",
-                  "description" : "Generated description for concept referred to by key \"REL_TOO_LATE_HO_RATE_LOW_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "RRC_CONGESTION_DELTA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "RRC_CONGESTION_DELTA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "354b79b0-aebd-4bee-a69b-41f833e71b4d",
-                  "description" : "Generated description for concept referred to by key \"RRC_CONGESTION_DELTA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "SB_OCN_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SB_OCN_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "e9d87f24-c9ec-4e80-8b22-b598b4db11bb",
-                  "description" : "Generated description for concept referred to by key \"SB_OCN_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "SB_OCN_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SB_OCN_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "c53ff327-62dd-4615-ab9f-bafa5977e0ce",
-                  "description" : "Generated description for concept referred to by key \"SB_OCN_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "SET_TYPE_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SET_TYPE_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "452d1d58-6290-42c7-b78e-088cc4f2280b",
-                  "description" : "Generated description for concept referred to by key \"SET_TYPE_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TOO_EARLY_HO_RATE_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TOO_EARLY_HO_RATE_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "f4ef6fe9-93a6-4558-b16b-006d2280c0e1",
-                  "description" : "Generated description for concept referred to by key \"TOO_EARLY_HO_RATE_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TOO_EARLY_HO_RATE_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TOO_EARLY_HO_RATE_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0d2b78ee-8e18-4145-9ddb-23b122a7144f",
-                  "description" : "Generated description for concept referred to by key \"TOO_EARLY_HO_RATE_BA_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TOO_LATE_HO_RATE_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TOO_LATE_HO_RATE_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "d672e9e4-7136-4aa8-aa90-1b724e244f3e",
-                  "description" : "Generated description for concept referred to by key \"TOO_LATE_HO_RATE_AB_type:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TOO_LATE_HO_RATE_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TOO_LATE_HO_RATE_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "58ccdd5c-69c1-4c1d-9075-1953b5f5b39c",
-                  "description" : "Generated description for concept referred to by key \"TOO_LATE_HO_RATE_BA_type:0.0.1\""
-               }
-            } ]
-         }
-      },
-      "policies" : {
-         "key" : {
-            "name" : "FLBPolicy_PolicyModel_Policies",
-            "version" : "0.0.1"
-         },
-         "policyMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "FLBPolicy_Policy",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "policyKey" : {
-                     "name" : "FLBPolicy_Policy",
-                     "version" : "0.0.1"
-                  },
-                  "template" : "FREEFORM",
-                  "state" : {
-                     "entry" : [ {
-                        "key" : "FuzzyExecute",
-                        "value" : {
-                           "stateKey" : {
-                              "parentKeyName" : "FLBPolicy_Policy",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "FuzzyExecute"
-                           },
-                           "trigger" : {
-                              "name" : "FLBPolicy_toFuzzy",
-                              "version" : "0.0.1"
-                           },
-                           "stateOutputs" : {
-                              "entry" : [ {
-                                 "key" : "Fuzzy2Post",
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "FLBPolicy_Policy",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "FuzzyExecute",
-                                       "localName" : "Fuzzy2Post"
-                                    },
-                                    "outgoingEvent" : {
-                                       "name" : "FLBPolicy_fromFuzzy",
-                                       "version" : "0.0.1"
-                                    },
-                                    "nextState" : {
-                                       "parentKeyName" : "FLBPolicy_Policy",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "NULL",
-                                       "localName" : "PostExecute"
-                                    }
-                                 }
-                              } ]
-                           },
-                           "contextAlbumReference" : [ ],
-                           "taskSelectionLogic" : {
-                              "key" : "NULL",
-                              "logicFlavour" : "UNDEFINED",
-                              "logic" : ""
-                           },
-                           "stateFinalizerLogicMap" : {
-                              "entry" : [ ]
-                           },
-                           "defaultTask" : {
-                              "name" : "FLBPolicy_Task",
-                              "version" : "0.0.1"
-                           },
-                           "taskReferences" : {
-                              "entry" : [ {
-                                 "key" : {
-                                    "name" : "FLBPolicy_Task",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "FLBPolicy_Policy",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "FuzzyExecute",
-                                       "localName" : "FLBPolicy_Policy"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "FLBPolicy_Policy",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "FuzzyExecute",
-                                       "localName" : "Fuzzy2Post"
-                                    }
-                                 }
-                              } ]
-                           }
-                        }
-                     }, {
-                        "key" : "PostExecute",
-                        "value" : {
-                           "stateKey" : {
-                              "parentKeyName" : "FLBPolicy_Policy",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "PostExecute"
-                           },
-                           "trigger" : {
-                              "name" : "FLBPolicy_fromFuzzy",
-                              "version" : "0.0.1"
-                           },
-                           "stateOutputs" : {
-                              "entry" : [ {
-                                 "key" : "Post2Out",
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "FLBPolicy_Policy",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "PostExecute",
-                                       "localName" : "Post2Out"
-                                    },
-                                    "outgoingEvent" : {
-                                       "name" : "FLBPolicy_OutputEvent",
-                                       "version" : "0.0.1"
-                                    },
-                                    "nextState" : {
-                                       "parentKeyName" : "NULL",
-                                       "parentKeyVersion" : "0.0.0",
-                                       "parentLocalName" : "NULL",
-                                       "localName" : "NULL"
-                                    }
-                                 }
-                              } ]
-                           },
-                           "contextAlbumReference" : [ ],
-                           "taskSelectionLogic" : {
-                              "key" : "NULL",
-                              "logicFlavour" : "UNDEFINED",
-                              "logic" : ""
-                           },
-                           "stateFinalizerLogicMap" : {
-                              "entry" : [ ]
-                           },
-                           "defaultTask" : {
-                              "name" : "FLBPolicy_Task_Post",
-                              "version" : "0.0.1"
-                           },
-                           "taskReferences" : {
-                              "entry" : [ {
-                                 "key" : {
-                                    "name" : "FLBPolicy_Task_Post",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "FLBPolicy_Policy",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "PostExecute",
-                                       "localName" : "FLBPolicy_Policy"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "FLBPolicy_Policy",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "PostExecute",
-                                       "localName" : "Post2Out"
-                                    }
-                                 }
-                              } ]
-                           }
-                        }
-                     }, {
-                        "key" : "PreExecute",
-                        "value" : {
-                           "stateKey" : {
-                              "parentKeyName" : "FLBPolicy_Policy",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "PreExecute"
-                           },
-                           "trigger" : {
-                              "name" : "FLBPolicy_InputEvent",
-                              "version" : "0.0.1"
-                           },
-                           "stateOutputs" : {
-                              "entry" : [ {
-                                 "key" : "Pre2Fuzzy",
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "FLBPolicy_Policy",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "PreExecute",
-                                       "localName" : "Pre2Fuzzy"
-                                    },
-                                    "outgoingEvent" : {
-                                       "name" : "FLBPolicy_toFuzzy",
-                                       "version" : "0.0.1"
-                                    },
-                                    "nextState" : {
-                                       "parentKeyName" : "FLBPolicy_Policy",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "NULL",
-                                       "localName" : "FuzzyExecute"
-                                    }
-                                 }
-                              } ]
-                           },
-                           "contextAlbumReference" : [ ],
-                           "taskSelectionLogic" : {
-                              "key" : "NULL",
-                              "logicFlavour" : "UNDEFINED",
-                              "logic" : ""
-                           },
-                           "stateFinalizerLogicMap" : {
-                              "entry" : [ ]
-                           },
-                           "defaultTask" : {
-                              "name" : "FLBPolicy_Task_Pre",
-                              "version" : "0.0.1"
-                           },
-                           "taskReferences" : {
-                              "entry" : [ {
-                                 "key" : {
-                                    "name" : "FLBPolicy_Task_Pre",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "FLBPolicy_Policy",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "PreExecute",
-                                       "localName" : "FLBPolicy_Policy"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "FLBPolicy_Policy",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "PreExecute",
-                                       "localName" : "Pre2Fuzzy"
-                                    }
-                                 }
-                              } ]
-                           }
-                        }
-                     } ]
-                  },
-                  "firstState" : "PreExecute"
-               }
-            } ]
-         }
-      },
-      "tasks" : {
-         "key" : {
-            "name" : "FLBPolicy_PolicyModel_Tasks",
-            "version" : "0.0.1"
-         },
-         "taskMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "FLBPolicy_Task",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_Task",
-                     "version" : "0.0.1"
-                  },
-                  "inputFields" : {
-                     "entry" : [ {
-                        "key" : "Adjacency_4G_Name",
-                        "value" : {
-                           "key" : "Adjacency_4G_Name",
-                           "fieldSchemaKey" : {
-                              "name" : "Adjacency_4G_Name_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellA",
-                        "value" : {
-                           "key" : "CellA",
-                           "fieldSchemaKey" : {
-                              "name" : "CellA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellB",
-                        "value" : {
-                           "key" : "CellB",
-                           "fieldSchemaKey" : {
-                              "name" : "CellB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "ENABLE_CONGESTION",
-                        "value" : {
-                           "key" : "ENABLE_CONGESTION",
-                           "fieldSchemaKey" : {
-                              "name" : "ENABLE_CONGESTION_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "FREQ_REL_TYPE",
-                        "value" : {
-                           "key" : "FREQ_REL_TYPE",
-                           "fieldSchemaKey" : {
-                              "name" : "FREQ_REL_TYPE_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "HO_EXEC_FAIL_RATE_AB",
-                        "value" : {
-                           "key" : "HO_EXEC_FAIL_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "HO_EXEC_FAIL_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "HO_EXEC_FAIL_RATE_BA",
-                        "value" : {
-                           "key" : "HO_EXEC_FAIL_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "HO_EXEC_FAIL_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_CQI_SAMPLES_RATE_HO_AB",
-                        "value" : {
-                           "key" : "LOW_CQI_SAMPLES_RATE_HO_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_CQI_SAMPLES_RATE_HO_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_CQI_SAMPLES_RATE_HO_BA",
-                        "value" : {
-                           "key" : "LOW_CQI_SAMPLES_RATE_HO_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_CQI_SAMPLES_RATE_HO_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB",
-                        "value" : {
-                           "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA",
-                        "value" : {
-                           "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "PDCCH_CCE_HIGH_LOAD_DELTA",
-                        "value" : {
-                           "key" : "PDCCH_CCE_HIGH_LOAD_DELTA",
-                           "fieldSchemaKey" : {
-                              "name" : "PDCCH_CCE_HIGH_LOAD_DELTA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_LOW_AB",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_LOW_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_LOW_BA",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_LOW_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_AB_IN",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_AB_IN",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_BA_IN",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_BA_IN",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_HIGH_AB",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_HIGH_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_HIGH_BA",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_HIGH_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_LOW_AB",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_LOW_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_LOW_BA",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_LOW_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_HIGH_AB",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_HIGH_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_HIGH_BA",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_HIGH_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_LOW_AB",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_LOW_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_LOW_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_LOW_BA",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_LOW_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_LOW_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "RRC_CONGESTION_DELTA",
-                        "value" : {
-                           "key" : "RRC_CONGESTION_DELTA",
-                           "fieldSchemaKey" : {
-                              "name" : "RRC_CONGESTION_DELTA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "SET_TYPE",
-                        "value" : {
-                           "key" : "SET_TYPE",
-                           "fieldSchemaKey" : {
-                              "name" : "SET_TYPE_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_EARLY_HO_RATE_AB",
-                        "value" : {
-                           "key" : "TOO_EARLY_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_EARLY_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_EARLY_HO_RATE_BA",
-                        "value" : {
-                           "key" : "TOO_EARLY_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_EARLY_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_LATE_HO_RATE_AB",
-                        "value" : {
-                           "key" : "TOO_LATE_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_LATE_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_LATE_HO_RATE_BA",
-                        "value" : {
-                           "key" : "TOO_LATE_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_LATE_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     } ]
-                  },
-                  "outputFields" : {
-                     "entry" : [ {
-                        "key" : "Adjacency_4G_Name",
-                        "value" : {
-                           "key" : "Adjacency_4G_Name",
-                           "fieldSchemaKey" : {
-                              "name" : "Adjacency_4G_Name_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellA",
-                        "value" : {
-                           "key" : "CellA",
-                           "fieldSchemaKey" : {
-                              "name" : "CellA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellB",
-                        "value" : {
-                           "key" : "CellB",
-                           "fieldSchemaKey" : {
-                              "name" : "CellB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "OCN_AB",
-                        "value" : {
-                           "key" : "OCN_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "OCN_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "OCN_BA",
-                        "value" : {
-                           "key" : "OCN_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "OCN_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_AB",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_BA",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_AB",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_BA",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_AB",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_BA",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_AB",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_BA",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "SB_OCN_AB",
-                        "value" : {
-                           "key" : "SB_OCN_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "SB_OCN_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "SB_OCN_BA",
-                        "value" : {
-                           "key" : "SB_OCN_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "SB_OCN_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     } ]
-                  },
-                  "taskParameters" : {
-                     "entry" : [ ]
-                  },
-                  "contextAlbumReference" : [ ],
-                  "taskLogic" : {
-                     "key" : "TaskLogic",
-                     "logicFlavour" : "FUZZY",
-                     "logic" : "somelogic goes here"
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_Task_Post",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_Task_Post",
-                     "version" : "0.0.1"
-                  },
-                  "inputFields" : {
-                     "entry" : [ {
-                        "key" : "Adjacency_4G_Name",
-                        "value" : {
-                           "key" : "Adjacency_4G_Name",
-                           "fieldSchemaKey" : {
-                              "name" : "Adjacency_4G_Name_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellA",
-                        "value" : {
-                           "key" : "CellA",
-                           "fieldSchemaKey" : {
-                              "name" : "CellA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellB",
-                        "value" : {
-                           "key" : "CellB",
-                           "fieldSchemaKey" : {
-                              "name" : "CellB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "OCN_AB",
-                        "value" : {
-                           "key" : "OCN_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "OCN_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "OCN_BA",
-                        "value" : {
-                           "key" : "OCN_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "OCN_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_AB",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_BA",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_AB",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_BA",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_AB",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_BA",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_AB",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_BA",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "SB_OCN_AB",
-                        "value" : {
-                           "key" : "SB_OCN_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "SB_OCN_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "SB_OCN_BA",
-                        "value" : {
-                           "key" : "SB_OCN_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "SB_OCN_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     } ]
-                  },
-                  "outputFields" : {
-                     "entry" : [ {
-                        "key" : "Adjacency_4G_Name",
-                        "value" : {
-                           "key" : "Adjacency_4G_Name",
-                           "fieldSchemaKey" : {
-                              "name" : "Adjacency_4G_Name_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellA",
-                        "value" : {
-                           "key" : "CellA",
-                           "fieldSchemaKey" : {
-                              "name" : "CellA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellB",
-                        "value" : {
-                           "key" : "CellB",
-                           "fieldSchemaKey" : {
-                              "name" : "CellB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "OCN_AB",
-                        "value" : {
-                           "key" : "OCN_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "OCN_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "OCN_BA",
-                        "value" : {
-                           "key" : "OCN_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "OCN_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_AB",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_BA",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_AB",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_BA",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_AB",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_BA",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_AB",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_BA",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "SB_OCN_AB",
-                        "value" : {
-                           "key" : "SB_OCN_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "SB_OCN_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "SB_OCN_BA",
-                        "value" : {
-                           "key" : "SB_OCN_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "SB_OCN_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     } ]
-                  },
-                  "taskParameters" : {
-                     "entry" : [ ]
-                  },
-                  "contextAlbumReference" : [ ],
-                  "taskLogic" : {
-                     "key" : "TaskLogic",
-                     "logicFlavour" : "MVEL",
-                     "logic" : "logger.debug(subject.id);logger.debug(inFields);outFields.putAll(inFields);logger.debug(outFields);return true;"
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_Task_Pre",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_Task_Pre",
-                     "version" : "0.0.1"
-                  },
-                  "inputFields" : {
-                     "entry" : [ {
-                        "key" : "Adjacency_4G_Name",
-                        "value" : {
-                           "key" : "Adjacency_4G_Name",
-                           "fieldSchemaKey" : {
-                              "name" : "Adjacency_4G_Name_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellA",
-                        "value" : {
-                           "key" : "CellA",
-                           "fieldSchemaKey" : {
-                              "name" : "CellA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellB",
-                        "value" : {
-                           "key" : "CellB",
-                           "fieldSchemaKey" : {
-                              "name" : "CellB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "ENABLE_CONGESTION",
-                        "value" : {
-                           "key" : "ENABLE_CONGESTION",
-                           "fieldSchemaKey" : {
-                              "name" : "ENABLE_CONGESTION_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "FREQ_REL_TYPE",
-                        "value" : {
-                           "key" : "FREQ_REL_TYPE",
-                           "fieldSchemaKey" : {
-                              "name" : "FREQ_REL_TYPE_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "HO_EXEC_FAIL_RATE_AB",
-                        "value" : {
-                           "key" : "HO_EXEC_FAIL_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "HO_EXEC_FAIL_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "HO_EXEC_FAIL_RATE_BA",
-                        "value" : {
-                           "key" : "HO_EXEC_FAIL_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "HO_EXEC_FAIL_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_CQI_SAMPLES_RATE_HO_AB",
-                        "value" : {
-                           "key" : "LOW_CQI_SAMPLES_RATE_HO_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_CQI_SAMPLES_RATE_HO_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_CQI_SAMPLES_RATE_HO_BA",
-                        "value" : {
-                           "key" : "LOW_CQI_SAMPLES_RATE_HO_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_CQI_SAMPLES_RATE_HO_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB",
-                        "value" : {
-                           "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA",
-                        "value" : {
-                           "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "PDCCH_CCE_HIGH_LOAD_DELTA",
-                        "value" : {
-                           "key" : "PDCCH_CCE_HIGH_LOAD_DELTA",
-                           "fieldSchemaKey" : {
-                              "name" : "PDCCH_CCE_HIGH_LOAD_DELTA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_LOW_AB",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_LOW_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_LOW_BA",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_LOW_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_AB_IN",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_AB_IN",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_BA_IN",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_BA_IN",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_HIGH_AB",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_HIGH_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_HIGH_BA",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_HIGH_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_LOW_AB",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_LOW_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_LOW_BA",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_LOW_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_HIGH_AB",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_HIGH_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_HIGH_BA",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_HIGH_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_LOW_AB",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_LOW_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_LOW_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_LOW_BA",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_LOW_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_LOW_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "RRC_CONGESTION_DELTA",
-                        "value" : {
-                           "key" : "RRC_CONGESTION_DELTA",
-                           "fieldSchemaKey" : {
-                              "name" : "RRC_CONGESTION_DELTA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "SET_TYPE",
-                        "value" : {
-                           "key" : "SET_TYPE",
-                           "fieldSchemaKey" : {
-                              "name" : "SET_TYPE_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_EARLY_HO_RATE_AB",
-                        "value" : {
-                           "key" : "TOO_EARLY_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_EARLY_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_EARLY_HO_RATE_BA",
-                        "value" : {
-                           "key" : "TOO_EARLY_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_EARLY_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_LATE_HO_RATE_AB",
-                        "value" : {
-                           "key" : "TOO_LATE_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_LATE_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_LATE_HO_RATE_BA",
-                        "value" : {
-                           "key" : "TOO_LATE_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_LATE_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     } ]
-                  },
-                  "outputFields" : {
-                     "entry" : [ {
-                        "key" : "Adjacency_4G_Name",
-                        "value" : {
-                           "key" : "Adjacency_4G_Name",
-                           "fieldSchemaKey" : {
-                              "name" : "Adjacency_4G_Name_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellA",
-                        "value" : {
-                           "key" : "CellA",
-                           "fieldSchemaKey" : {
-                              "name" : "CellA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellB",
-                        "value" : {
-                           "key" : "CellB",
-                           "fieldSchemaKey" : {
-                              "name" : "CellB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "ENABLE_CONGESTION",
-                        "value" : {
-                           "key" : "ENABLE_CONGESTION",
-                           "fieldSchemaKey" : {
-                              "name" : "ENABLE_CONGESTION_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "FREQ_REL_TYPE",
-                        "value" : {
-                           "key" : "FREQ_REL_TYPE",
-                           "fieldSchemaKey" : {
-                              "name" : "FREQ_REL_TYPE_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "HO_EXEC_FAIL_RATE_AB",
-                        "value" : {
-                           "key" : "HO_EXEC_FAIL_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "HO_EXEC_FAIL_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "HO_EXEC_FAIL_RATE_BA",
-                        "value" : {
-                           "key" : "HO_EXEC_FAIL_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "HO_EXEC_FAIL_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_CQI_SAMPLES_RATE_HO_AB",
-                        "value" : {
-                           "key" : "LOW_CQI_SAMPLES_RATE_HO_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_CQI_SAMPLES_RATE_HO_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_CQI_SAMPLES_RATE_HO_BA",
-                        "value" : {
-                           "key" : "LOW_CQI_SAMPLES_RATE_HO_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_CQI_SAMPLES_RATE_HO_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB",
-                        "value" : {
-                           "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA",
-                        "value" : {
-                           "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "PDCCH_CCE_HIGH_LOAD_DELTA",
-                        "value" : {
-                           "key" : "PDCCH_CCE_HIGH_LOAD_DELTA",
-                           "fieldSchemaKey" : {
-                              "name" : "PDCCH_CCE_HIGH_LOAD_DELTA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_LOW_AB",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_LOW_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_LOW_BA",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_LOW_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_AB_IN",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_AB_IN",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_BA_IN",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_BA_IN",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_HIGH_AB",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_HIGH_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_HIGH_BA",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_HIGH_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_LOW_AB",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_LOW_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_LOW_BA",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_LOW_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_HIGH_AB",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_HIGH_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_HIGH_BA",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_HIGH_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_LOW_AB",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_LOW_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_LOW_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_LOW_BA",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_LOW_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_LOW_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "RRC_CONGESTION_DELTA",
-                        "value" : {
-                           "key" : "RRC_CONGESTION_DELTA",
-                           "fieldSchemaKey" : {
-                              "name" : "RRC_CONGESTION_DELTA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "SET_TYPE",
-                        "value" : {
-                           "key" : "SET_TYPE",
-                           "fieldSchemaKey" : {
-                              "name" : "SET_TYPE_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_EARLY_HO_RATE_AB",
-                        "value" : {
-                           "key" : "TOO_EARLY_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_EARLY_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_EARLY_HO_RATE_BA",
-                        "value" : {
-                           "key" : "TOO_EARLY_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_EARLY_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_LATE_HO_RATE_AB",
-                        "value" : {
-                           "key" : "TOO_LATE_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_LATE_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_LATE_HO_RATE_BA",
-                        "value" : {
-                           "key" : "TOO_LATE_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_LATE_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     } ]
-                  },
-                  "taskParameters" : {
-                     "entry" : [ ]
-                  },
-                  "contextAlbumReference" : [ ],
-                  "taskLogic" : {
-                     "key" : "TaskLogic",
-                     "logicFlavour" : "MVEL",
-                     "logic" : "logger.debug(subject.id);logger.debug(inFields);outFields.putAll(inFields);logger.debug(outFields);return true;"
-                  }
-               }
-            } ]
-         }
-      },
-      "events" : {
-         "key" : {
-            "name" : "FLBPolicy_PolicyModel_Events",
-            "version" : "0.0.1"
-         },
-         "eventMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "FLBPolicy_InputEvent",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_InputEvent",
-                     "version" : "0.0.1"
-                  },
-                  "nameSpace" : "org.onap.policy.apexaiasonom",
-                  "source" : "external",
-                  "target" : "apex",
-                  "parameter" : {
-                     "entry" : [ {
-                        "key" : "Adjacency_4G_Name",
-                        "value" : {
-                           "key" : "Adjacency_4G_Name",
-                           "fieldSchemaKey" : {
-                              "name" : "Adjacency_4G_Name_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellA",
-                        "value" : {
-                           "key" : "CellA",
-                           "fieldSchemaKey" : {
-                              "name" : "CellA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellB",
-                        "value" : {
-                           "key" : "CellB",
-                           "fieldSchemaKey" : {
-                              "name" : "CellB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "ENABLE_CONGESTION",
-                        "value" : {
-                           "key" : "ENABLE_CONGESTION",
-                           "fieldSchemaKey" : {
-                              "name" : "ENABLE_CONGESTION_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "FREQ_REL_TYPE",
-                        "value" : {
-                           "key" : "FREQ_REL_TYPE",
-                           "fieldSchemaKey" : {
-                              "name" : "FREQ_REL_TYPE_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "HO_EXEC_FAIL_RATE_AB",
-                        "value" : {
-                           "key" : "HO_EXEC_FAIL_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "HO_EXEC_FAIL_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "HO_EXEC_FAIL_RATE_BA",
-                        "value" : {
-                           "key" : "HO_EXEC_FAIL_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "HO_EXEC_FAIL_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_CQI_SAMPLES_RATE_HO_AB",
-                        "value" : {
-                           "key" : "LOW_CQI_SAMPLES_RATE_HO_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_CQI_SAMPLES_RATE_HO_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_CQI_SAMPLES_RATE_HO_BA",
-                        "value" : {
-                           "key" : "LOW_CQI_SAMPLES_RATE_HO_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_CQI_SAMPLES_RATE_HO_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB",
-                        "value" : {
-                           "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA",
-                        "value" : {
-                           "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "PDCCH_CCE_HIGH_LOAD_DELTA",
-                        "value" : {
-                           "key" : "PDCCH_CCE_HIGH_LOAD_DELTA",
-                           "fieldSchemaKey" : {
-                              "name" : "PDCCH_CCE_HIGH_LOAD_DELTA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_LOW_AB",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_LOW_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_LOW_BA",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_LOW_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_AB_IN",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_AB_IN",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_BA_IN",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_BA_IN",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_HIGH_AB",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_HIGH_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_HIGH_BA",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_HIGH_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_LOW_AB",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_LOW_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_LOW_BA",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_LOW_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_HIGH_AB",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_HIGH_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_HIGH_BA",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_HIGH_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_LOW_AB",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_LOW_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_LOW_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_LOW_BA",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_LOW_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_LOW_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "RRC_CONGESTION_DELTA",
-                        "value" : {
-                           "key" : "RRC_CONGESTION_DELTA",
-                           "fieldSchemaKey" : {
-                              "name" : "RRC_CONGESTION_DELTA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "SET_TYPE",
-                        "value" : {
-                           "key" : "SET_TYPE",
-                           "fieldSchemaKey" : {
-                              "name" : "SET_TYPE_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_EARLY_HO_RATE_AB",
-                        "value" : {
-                           "key" : "TOO_EARLY_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_EARLY_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_EARLY_HO_RATE_BA",
-                        "value" : {
-                           "key" : "TOO_EARLY_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_EARLY_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_LATE_HO_RATE_AB",
-                        "value" : {
-                           "key" : "TOO_LATE_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_LATE_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_LATE_HO_RATE_BA",
-                        "value" : {
-                           "key" : "TOO_LATE_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_LATE_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     } ]
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_OutputEvent",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_OutputEvent",
-                     "version" : "0.0.1"
-                  },
-                  "nameSpace" : "org.onap.policy.apexaiasonom",
-                  "source" : "apex",
-                  "target" : "external",
-                  "parameter" : {
-                     "entry" : [ {
-                        "key" : "Adjacency_4G_Name",
-                        "value" : {
-                           "key" : "Adjacency_4G_Name",
-                           "fieldSchemaKey" : {
-                              "name" : "Adjacency_4G_Name_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellA",
-                        "value" : {
-                           "key" : "CellA",
-                           "fieldSchemaKey" : {
-                              "name" : "CellA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellB",
-                        "value" : {
-                           "key" : "CellB",
-                           "fieldSchemaKey" : {
-                              "name" : "CellB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "OCN_AB",
-                        "value" : {
-                           "key" : "OCN_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "OCN_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "OCN_BA",
-                        "value" : {
-                           "key" : "OCN_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "OCN_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_AB",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_BA",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_AB",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_BA",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_AB",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_BA",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_AB",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_BA",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "SB_OCN_AB",
-                        "value" : {
-                           "key" : "SB_OCN_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "SB_OCN_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "SB_OCN_BA",
-                        "value" : {
-                           "key" : "SB_OCN_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "SB_OCN_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     } ]
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_fromFuzzy",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_fromFuzzy",
-                     "version" : "0.0.1"
-                  },
-                  "nameSpace" : "org.onap.policy.apexaiasonom",
-                  "source" : "fuzzy",
-                  "target" : "apex",
-                  "parameter" : {
-                     "entry" : [ {
-                        "key" : "Adjacency_4G_Name",
-                        "value" : {
-                           "key" : "Adjacency_4G_Name",
-                           "fieldSchemaKey" : {
-                              "name" : "Adjacency_4G_Name_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellA",
-                        "value" : {
-                           "key" : "CellA",
-                           "fieldSchemaKey" : {
-                              "name" : "CellA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellB",
-                        "value" : {
-                           "key" : "CellB",
-                           "fieldSchemaKey" : {
-                              "name" : "CellB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "OCN_AB",
-                        "value" : {
-                           "key" : "OCN_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "OCN_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "OCN_BA",
-                        "value" : {
-                           "key" : "OCN_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "OCN_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_AB",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_BA",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_AB",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_BA",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_AB",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_BA",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_AB",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_BA",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "SB_OCN_AB",
-                        "value" : {
-                           "key" : "SB_OCN_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "SB_OCN_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "SB_OCN_BA",
-                        "value" : {
-                           "key" : "SB_OCN_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "SB_OCN_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     } ]
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "FLBPolicy_toFuzzy",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FLBPolicy_toFuzzy",
-                     "version" : "0.0.1"
-                  },
-                  "nameSpace" : "org.onap.policy.apexaiasonom",
-                  "source" : "apex",
-                  "target" : "fuzzy",
-                  "parameter" : {
-                     "entry" : [ {
-                        "key" : "Adjacency_4G_Name",
-                        "value" : {
-                           "key" : "Adjacency_4G_Name",
-                           "fieldSchemaKey" : {
-                              "name" : "Adjacency_4G_Name_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellA",
-                        "value" : {
-                           "key" : "CellA",
-                           "fieldSchemaKey" : {
-                              "name" : "CellA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "CellB",
-                        "value" : {
-                           "key" : "CellB",
-                           "fieldSchemaKey" : {
-                              "name" : "CellB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "ENABLE_CONGESTION",
-                        "value" : {
-                           "key" : "ENABLE_CONGESTION",
-                           "fieldSchemaKey" : {
-                              "name" : "ENABLE_CONGESTION_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "FREQ_REL_TYPE",
-                        "value" : {
-                           "key" : "FREQ_REL_TYPE",
-                           "fieldSchemaKey" : {
-                              "name" : "FREQ_REL_TYPE_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "HO_EXEC_FAIL_RATE_AB",
-                        "value" : {
-                           "key" : "HO_EXEC_FAIL_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "HO_EXEC_FAIL_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "HO_EXEC_FAIL_RATE_BA",
-                        "value" : {
-                           "key" : "HO_EXEC_FAIL_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "HO_EXEC_FAIL_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_CQI_SAMPLES_RATE_HO_AB",
-                        "value" : {
-                           "key" : "LOW_CQI_SAMPLES_RATE_HO_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_CQI_SAMPLES_RATE_HO_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_CQI_SAMPLES_RATE_HO_BA",
-                        "value" : {
-                           "key" : "LOW_CQI_SAMPLES_RATE_HO_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_CQI_SAMPLES_RATE_HO_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB",
-                        "value" : {
-                           "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA",
-                        "value" : {
-                           "key" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "PDCCH_CCE_HIGH_LOAD_DELTA",
-                        "value" : {
-                           "key" : "PDCCH_CCE_HIGH_LOAD_DELTA",
-                           "fieldSchemaKey" : {
-                              "name" : "PDCCH_CCE_HIGH_LOAD_DELTA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_LOW_AB",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_LOW_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_HO_EXEC_FAIL_RATE_LOW_BA",
-                        "value" : {
-                           "key" : "REL_HO_EXEC_FAIL_RATE_LOW_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_AB_IN",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_AB_IN",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_NUM_HO_WITH_EVENTS_BA_IN",
-                        "value" : {
-                           "key" : "REL_NUM_HO_WITH_EVENTS_BA_IN",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_HIGH_AB",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_HIGH_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_HIGH_BA",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_HIGH_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_LOW_AB",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_LOW_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_EARLY_HO_RATE_LOW_BA",
-                        "value" : {
-                           "key" : "REL_TOO_EARLY_HO_RATE_LOW_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_HIGH_AB",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_HIGH_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_HIGH_BA",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_HIGH_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_LOW_AB",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_LOW_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_LOW_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "REL_TOO_LATE_HO_RATE_LOW_BA",
-                        "value" : {
-                           "key" : "REL_TOO_LATE_HO_RATE_LOW_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "REL_TOO_LATE_HO_RATE_LOW_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "RRC_CONGESTION_DELTA",
-                        "value" : {
-                           "key" : "RRC_CONGESTION_DELTA",
-                           "fieldSchemaKey" : {
-                              "name" : "RRC_CONGESTION_DELTA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "SET_TYPE",
-                        "value" : {
-                           "key" : "SET_TYPE",
-                           "fieldSchemaKey" : {
-                              "name" : "SET_TYPE_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_EARLY_HO_RATE_AB",
-                        "value" : {
-                           "key" : "TOO_EARLY_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_EARLY_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_EARLY_HO_RATE_BA",
-                        "value" : {
-                           "key" : "TOO_EARLY_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_EARLY_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_LATE_HO_RATE_AB",
-                        "value" : {
-                           "key" : "TOO_LATE_HO_RATE_AB",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_LATE_HO_RATE_AB_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "TOO_LATE_HO_RATE_BA",
-                        "value" : {
-                           "key" : "TOO_LATE_HO_RATE_BA",
-                           "fieldSchemaKey" : {
-                              "name" : "TOO_LATE_HO_RATE_BA_type",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     } ]
-                  }
-               }
-            } ]
-         }
-      },
-      "schemas" : {
-         "key" : {
-            "name" : "FLBPolicy_PolicyModel_Schemas",
-            "version" : "0.0.1"
-         },
-         "schemas" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "Adjacency_4G_Name_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Adjacency_4G_Name_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.String"
-               }
-            }, {
-               "key" : {
-                  "name" : "CellA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "CellA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.String"
-               }
-            }, {
-               "key" : {
-                  "name" : "CellB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "CellB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.String"
-               }
-            }, {
-               "key" : {
-                  "name" : "ENABLE_CONGESTION_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "ENABLE_CONGESTION_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Boolean"
-               }
-            }, {
-               "key" : {
-                  "name" : "FREQ_REL_TYPE_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "FREQ_REL_TYPE_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.String"
-               }
-            }, {
-               "key" : {
-                  "name" : "HO_EXEC_FAIL_RATE_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "HO_EXEC_FAIL_RATE_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "HO_EXEC_FAIL_RATE_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "HO_EXEC_FAIL_RATE_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "LOW_CQI_SAMPLES_RATE_HO_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LOW_CQI_SAMPLES_RATE_HO_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "LOW_CQI_SAMPLES_RATE_HO_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LOW_CQI_SAMPLES_RATE_HO_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "OCN_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "OCN_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Double"
-               }
-            }, {
-               "key" : {
-                  "name" : "OCN_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "OCN_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Double"
-               }
-            }, {
-               "key" : {
-                  "name" : "PDCCH_CCE_HIGH_LOAD_DELTA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "PDCCH_CCE_HIGH_LOAD_DELTA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_HO_EXEC_FAIL_RATE_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_HO_EXEC_FAIL_RATE_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Boolean"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_HO_EXEC_FAIL_RATE_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_HO_EXEC_FAIL_RATE_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Boolean"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_NUM_HO_WITH_EVENTS_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_NUM_HO_WITH_EVENTS_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Boolean"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_NUM_HO_WITH_EVENTS_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_NUM_HO_WITH_EVENTS_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Boolean"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_EARLY_HO_RATE_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_EARLY_HO_RATE_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Boolean"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_EARLY_HO_RATE_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_EARLY_HO_RATE_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Boolean"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_LATE_HO_RATE_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_LATE_HO_RATE_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Boolean"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_LATE_HO_RATE_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_LATE_HO_RATE_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Boolean"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_LATE_HO_RATE_LOW_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_LATE_HO_RATE_LOW_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "REL_TOO_LATE_HO_RATE_LOW_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "REL_TOO_LATE_HO_RATE_LOW_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "RRC_CONGESTION_DELTA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "RRC_CONGESTION_DELTA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "SB_OCN_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SB_OCN_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.String"
-               }
-            }, {
-               "key" : {
-                  "name" : "SB_OCN_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SB_OCN_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.String"
-               }
-            }, {
-               "key" : {
-                  "name" : "SET_TYPE_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SET_TYPE_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.String"
-               }
-            }, {
-               "key" : {
-                  "name" : "TOO_EARLY_HO_RATE_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TOO_EARLY_HO_RATE_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "TOO_EARLY_HO_RATE_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TOO_EARLY_HO_RATE_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "TOO_LATE_HO_RATE_AB_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TOO_LATE_HO_RATE_AB_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            }, {
-               "key" : {
-                  "name" : "TOO_LATE_HO_RATE_BA_type",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TOO_LATE_HO_RATE_BA_type",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Float"
-               }
-            } ]
-         }
-      }
-   }
-}
\ No newline at end of file
+  "key": {
+    "name": "FLBPolicy_PolicyModel",
+    "version": "0.0.1"
+  },
+  "keyInformation": {
+    "key": {
+      "name": "FLBPolicy_PolicyModel_KeyInfo",
+      "version": "0.0.1"
+    },
+    "keyInfoMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "Adjacency_4G_Name_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Adjacency_4G_Name_type",
+              "version": "0.0.1"
+            },
+            "UUID": "fa58e9cd-488e-4eec-9ccb-e156f6a43a35",
+            "description": "Generated description for concept referred to by key \"Adjacency_4G_Name_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "CellA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "CellA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "c41e1e24-ab71-4dbd-a2b7-7d349bade884",
+            "description": "Generated description for concept referred to by key \"CellA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "CellB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "CellB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "f2d43289-fcf7-4c9c-a186-ecd2d49fafa9",
+            "description": "Generated description for concept referred to by key \"CellB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "ENABLE_CONGESTION_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "ENABLE_CONGESTION_type",
+              "version": "0.0.1"
+            },
+            "UUID": "a2217f20-97fd-457e-8f28-30bf0c02068f",
+            "description": "Generated description for concept referred to by key \"ENABLE_CONGESTION_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FREQ_REL_TYPE_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FREQ_REL_TYPE_type",
+              "version": "0.0.1"
+            },
+            "UUID": "628be116-99bb-4c8f-a833-94a452f6a582",
+            "description": "Generated description for concept referred to by key \"FREQ_REL_TYPE_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "HO_EXEC_FAIL_RATE_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "HO_EXEC_FAIL_RATE_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "37c742ed-f039-48eb-a20d-2931940f4bf1",
+            "description": "Generated description for concept referred to by key \"HO_EXEC_FAIL_RATE_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "HO_EXEC_FAIL_RATE_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "HO_EXEC_FAIL_RATE_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "29c1077f-c382-4520-80b8-9d0ddad7547a",
+            "description": "Generated description for concept referred to by key \"HO_EXEC_FAIL_RATE_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "LOW_CQI_SAMPLES_RATE_HO_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LOW_CQI_SAMPLES_RATE_HO_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "0de782d4-f6d7-42f1-b3e4-fbc3d917a68b",
+            "description": "Generated description for concept referred to by key \"LOW_CQI_SAMPLES_RATE_HO_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "LOW_CQI_SAMPLES_RATE_HO_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LOW_CQI_SAMPLES_RATE_HO_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "d81522cd-b143-4a0c-aedb-271725fc2506",
+            "description": "Generated description for concept referred to by key \"LOW_CQI_SAMPLES_RATE_HO_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "828e3584-d194-48d1-8a49-45afb8b0cd5d",
+            "description": "Generated description for concept referred to by key \"LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "88d9aaec-c2de-47d1-9264-4318e76ebdee",
+            "description": "Generated description for concept referred to by key \"LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_InputEvent",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_InputEvent",
+              "version": "0.0.1"
+            },
+            "UUID": "f99b46f4-42fa-4873-a3f0-663ef950e917",
+            "description": "Generated description for concept referred to by key \"FLBPolicy_InputEvent:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_OutputEvent",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_OutputEvent",
+              "version": "0.0.1"
+            },
+            "UUID": "90d481b5-d0df-4167-a14b-6c1fd9ee4a4c",
+            "description": "Generated description for concept referred to by key \"FLBPolicy_OutputEvent:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_Policy",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_Policy",
+              "version": "0.0.1"
+            },
+            "UUID": "26c27f19-c56f-4ddc-8561-bfa1a89dc9db",
+            "description": "Generated description for concept referred to by key \"FLBPolicy_Policy:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_PolicyModel",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_PolicyModel",
+              "version": "0.0.1"
+            },
+            "UUID": "aeb5ab2b-0b60-41ac-889d-787e3b59fd19",
+            "description": "Generated description for concept referred to by key \"FLBPolicy_PolicyModel:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_PolicyModel_Events",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_PolicyModel_Events",
+              "version": "0.0.1"
+            },
+            "UUID": "952468c2-386e-4984-9f46-8c84208ad9bc",
+            "description": "Generated description for concept referred to by key \"FLBPolicy_PolicyModel_Events:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_PolicyModel_KeyInfo",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_PolicyModel_KeyInfo",
+              "version": "0.0.1"
+            },
+            "UUID": "0e7c3475-8fbc-446d-afbe-d54ae56fc0ee",
+            "description": "Generated description for concept referred to by key \"FLBPolicy_PolicyModel_KeyInfo:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_PolicyModel_Policies",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_PolicyModel_Policies",
+              "version": "0.0.1"
+            },
+            "UUID": "c2130341-3a43-41ae-a942-5aeba3f86724",
+            "description": "Generated description for concept referred to by key \"FLBPolicy_PolicyModel_Policies:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_PolicyModel_Schemas",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_PolicyModel_Schemas",
+              "version": "0.0.1"
+            },
+            "UUID": "09dd200b-9280-4f27-a85a-fab9fa276586",
+            "description": "Generated description for concept referred to by key \"FLBPolicy_PolicyModel_Schemas:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_PolicyModel_Tasks",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_PolicyModel_Tasks",
+              "version": "0.0.1"
+            },
+            "UUID": "4eb61362-ef5b-454e-b540-e1301df8108b",
+            "description": "Generated description for concept referred to by key \"FLBPolicy_PolicyModel_Tasks:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_Task",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_Task",
+              "version": "0.0.1"
+            },
+            "UUID": "76e762b7-8fdf-4d02-b4f3-60bf340997fd",
+            "description": "Generated description for concept referred to by key \"FLBPolicy_Task:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_Task_Post",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_Task_Post",
+              "version": "0.0.1"
+            },
+            "UUID": "3252ff86-02ee-4561-a818-4c7a12546045",
+            "description": "Generated description for concept referred to by key \"FLBPolicy_Task_Post:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_Task_Pre",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_Task_Pre",
+              "version": "0.0.1"
+            },
+            "UUID": "c4fde272-52f0-4ac0-a37b-a25aa043e122",
+            "description": "Generated description for concept referred to by key \"FLBPolicy_Task_Pre:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_fromFuzzy",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_fromFuzzy",
+              "version": "0.0.1"
+            },
+            "UUID": "54b771b4-11af-43eb-94a2-d97e8b585515",
+            "description": "Generated description for concept referred to by key \"FLBPolicy_fromFuzzy:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_toFuzzy",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_toFuzzy",
+              "version": "0.0.1"
+            },
+            "UUID": "960205cd-3cf1-4e90-a456-a0ac59bb06d5",
+            "description": "Generated description for concept referred to by key \"FLBPolicy_toFuzzy:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "OCN_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "OCN_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "0cb3cebd-9f7e-40b6-be2b-83da8a3bb249",
+            "description": "Generated description for concept referred to by key \"OCN_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "OCN_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "OCN_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "db41babb-500e-4369-acea-26b312de47c3",
+            "description": "Generated description for concept referred to by key \"OCN_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "PDCCH_CCE_HIGH_LOAD_DELTA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "PDCCH_CCE_HIGH_LOAD_DELTA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "c1374266-f148-4c6e-9aa0-eb4ad4e812a0",
+            "description": "Generated description for concept referred to by key \"PDCCH_CCE_HIGH_LOAD_DELTA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_HO_EXEC_FAIL_RATE_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_HO_EXEC_FAIL_RATE_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "285b0913-0d66-4546-8893-95bf0d267911",
+            "description": "Generated description for concept referred to by key \"REL_HO_EXEC_FAIL_RATE_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_HO_EXEC_FAIL_RATE_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_HO_EXEC_FAIL_RATE_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "1e5556fe-bdff-4520-b8ae-606c4275b4b3",
+            "description": "Generated description for concept referred to by key \"REL_HO_EXEC_FAIL_RATE_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "857cd994-c1ce-43b2-94f0-215e824cab75",
+            "description": "Generated description for concept referred to by key \"REL_HO_EXEC_FAIL_RATE_HIGH_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "6a9fa224-1568-4da7-be8a-5fc897373f57",
+            "description": "Generated description for concept referred to by key \"REL_HO_EXEC_FAIL_RATE_HIGH_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "cec3b03a-7c12-4b37-b60f-79c95a3adb97",
+            "description": "Generated description for concept referred to by key \"REL_HO_EXEC_FAIL_RATE_LOW_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "2e0caf46-5081-4a67-bb64-6a4ff2721b6b",
+            "description": "Generated description for concept referred to by key \"REL_HO_EXEC_FAIL_RATE_LOW_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
+              "version": "0.0.1"
+            },
+            "UUID": "4b96864a-8922-4698-8dba-ba6d1ecc042c",
+            "description": "Generated description for concept referred to by key \"REL_NUM_HO_WITH_EVENTS_AB_IN_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_NUM_HO_WITH_EVENTS_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_NUM_HO_WITH_EVENTS_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "670708b1-5bf4-4f0c-b6f1-47affe918580",
+            "description": "Generated description for concept referred to by key \"REL_NUM_HO_WITH_EVENTS_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
+              "version": "0.0.1"
+            },
+            "UUID": "eacfe8b0-dd88-44b0-8f7d-89bd0fc8cd8a",
+            "description": "Generated description for concept referred to by key \"REL_NUM_HO_WITH_EVENTS_BA_IN_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_NUM_HO_WITH_EVENTS_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_NUM_HO_WITH_EVENTS_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "44129948-e185-4a0d-ac60-2851d84384c4",
+            "description": "Generated description for concept referred to by key \"REL_NUM_HO_WITH_EVENTS_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_EARLY_HO_RATE_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_EARLY_HO_RATE_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "c76dfe42-a395-4977-b3c7-b9777f2873b3",
+            "description": "Generated description for concept referred to by key \"REL_TOO_EARLY_HO_RATE_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_EARLY_HO_RATE_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_EARLY_HO_RATE_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "ec904666-3e58-4d70-badc-aef1212a9b99",
+            "description": "Generated description for concept referred to by key \"REL_TOO_EARLY_HO_RATE_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "16f74164-13fe-4964-9ca3-76bf2448d31e",
+            "description": "Generated description for concept referred to by key \"REL_TOO_EARLY_HO_RATE_HIGH_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "9ee26f19-efc8-4df2-afef-6f0fb5b7fd41",
+            "description": "Generated description for concept referred to by key \"REL_TOO_EARLY_HO_RATE_HIGH_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "18553ab2-fe2b-4068-97eb-084f22e159b9",
+            "description": "Generated description for concept referred to by key \"REL_TOO_EARLY_HO_RATE_LOW_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "d91c982c-1e31-499f-9c9f-a98407e24ef3",
+            "description": "Generated description for concept referred to by key \"REL_TOO_EARLY_HO_RATE_LOW_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_LATE_HO_RATE_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_LATE_HO_RATE_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "f27118e0-202f-4405-b5fa-98d429ff8f27",
+            "description": "Generated description for concept referred to by key \"REL_TOO_LATE_HO_RATE_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_LATE_HO_RATE_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_LATE_HO_RATE_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "11a5c54a-2ce6-4fbc-bc6e-ce4dd7af0a6a",
+            "description": "Generated description for concept referred to by key \"REL_TOO_LATE_HO_RATE_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "43e67457-2c69-48ff-90f6-bc5373e45b8d",
+            "description": "Generated description for concept referred to by key \"REL_TOO_LATE_HO_RATE_HIGH_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "66664526-6223-41de-af3d-991f415a84ae",
+            "description": "Generated description for concept referred to by key \"REL_TOO_LATE_HO_RATE_HIGH_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_LATE_HO_RATE_LOW_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_LATE_HO_RATE_LOW_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "b5d23339-ea3a-414a-a981-b6581dfe7503",
+            "description": "Generated description for concept referred to by key \"REL_TOO_LATE_HO_RATE_LOW_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_LATE_HO_RATE_LOW_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_LATE_HO_RATE_LOW_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "a2043cac-1a9b-4e8a-beb9-858eb6fe025f",
+            "description": "Generated description for concept referred to by key \"REL_TOO_LATE_HO_RATE_LOW_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "RRC_CONGESTION_DELTA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "RRC_CONGESTION_DELTA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "354b79b0-aebd-4bee-a69b-41f833e71b4d",
+            "description": "Generated description for concept referred to by key \"RRC_CONGESTION_DELTA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "SB_OCN_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SB_OCN_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "e9d87f24-c9ec-4e80-8b22-b598b4db11bb",
+            "description": "Generated description for concept referred to by key \"SB_OCN_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "SB_OCN_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SB_OCN_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "c53ff327-62dd-4615-ab9f-bafa5977e0ce",
+            "description": "Generated description for concept referred to by key \"SB_OCN_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "SET_TYPE_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SET_TYPE_type",
+              "version": "0.0.1"
+            },
+            "UUID": "452d1d58-6290-42c7-b78e-088cc4f2280b",
+            "description": "Generated description for concept referred to by key \"SET_TYPE_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TOO_EARLY_HO_RATE_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TOO_EARLY_HO_RATE_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "f4ef6fe9-93a6-4558-b16b-006d2280c0e1",
+            "description": "Generated description for concept referred to by key \"TOO_EARLY_HO_RATE_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TOO_EARLY_HO_RATE_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TOO_EARLY_HO_RATE_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "0d2b78ee-8e18-4145-9ddb-23b122a7144f",
+            "description": "Generated description for concept referred to by key \"TOO_EARLY_HO_RATE_BA_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TOO_LATE_HO_RATE_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TOO_LATE_HO_RATE_AB_type",
+              "version": "0.0.1"
+            },
+            "UUID": "d672e9e4-7136-4aa8-aa90-1b724e244f3e",
+            "description": "Generated description for concept referred to by key \"TOO_LATE_HO_RATE_AB_type:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TOO_LATE_HO_RATE_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TOO_LATE_HO_RATE_BA_type",
+              "version": "0.0.1"
+            },
+            "UUID": "58ccdd5c-69c1-4c1d-9075-1953b5f5b39c",
+            "description": "Generated description for concept referred to by key \"TOO_LATE_HO_RATE_BA_type:0.0.1\""
+          }
+        }
+      ]
+    }
+  },
+  "policies": {
+    "key": {
+      "name": "FLBPolicy_PolicyModel_Policies",
+      "version": "0.0.1"
+    },
+    "policyMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "FLBPolicy_Policy",
+            "version": "0.0.1"
+          },
+          "value": {
+            "policyKey": {
+              "name": "FLBPolicy_Policy",
+              "version": "0.0.1"
+            },
+            "template": "FREEFORM",
+            "state": {
+              "entry": [
+                {
+                  "key": "FuzzyExecute",
+                  "value": {
+                    "stateKey": {
+                      "parentKeyName": "FLBPolicy_Policy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "FuzzyExecute"
+                    },
+                    "trigger": {
+                      "name": "FLBPolicy_toFuzzy",
+                      "version": "0.0.1"
+                    },
+                    "stateOutputs": {
+                      "entry": [
+                        {
+                          "key": "Fuzzy2Post",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_Policy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "FuzzyExecute",
+                              "localName": "Fuzzy2Post"
+                            },
+                            "outgoingEvent": {
+                              "name": "FLBPolicy_fromFuzzy",
+                              "version": "0.0.1"
+                            },
+                            "outgoingEventReference": [
+                              {
+                                "name": "FLBPolicy_fromFuzzy",
+                                "version": "0.0.1"
+                              }
+                            ],
+                            "nextState": {
+                              "parentKeyName": "FLBPolicy_Policy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "PostExecute"
+                            }
+                          }
+                        }
+                      ]
+                    },
+                    "contextAlbumReference": [],
+                    "taskSelectionLogic": {
+                      "key": "NULL",
+                      "logicFlavour": "UNDEFINED",
+                      "logic": ""
+                    },
+                    "stateFinalizerLogicMap": {
+                      "entry": []
+                    },
+                    "defaultTask": {
+                      "name": "FLBPolicy_Task",
+                      "version": "0.0.1"
+                    },
+                    "taskReferences": {
+                      "entry": [
+                        {
+                          "key": {
+                            "name": "FLBPolicy_Task",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_Policy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "FuzzyExecute",
+                              "localName": "FLBPolicy_Policy"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "FLBPolicy_Policy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "FuzzyExecute",
+                              "localName": "Fuzzy2Post"
+                            }
+                          }
+                        }
+                      ]
+                    }
+                  }
+                },
+                {
+                  "key": "PostExecute",
+                  "value": {
+                    "stateKey": {
+                      "parentKeyName": "FLBPolicy_Policy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "PostExecute"
+                    },
+                    "trigger": {
+                      "name": "FLBPolicy_fromFuzzy",
+                      "version": "0.0.1"
+                    },
+                    "stateOutputs": {
+                      "entry": [
+                        {
+                          "key": "Post2Out",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_Policy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "PostExecute",
+                              "localName": "Post2Out"
+                            },
+                            "outgoingEvent": {
+                              "name": "FLBPolicy_OutputEvent",
+                              "version": "0.0.1"
+                            },
+                            "nextState": {
+                              "parentKeyName": "NULL",
+                              "parentKeyVersion": "0.0.0",
+                              "parentLocalName": "NULL",
+                              "localName": "NULL"
+                            }
+                          }
+                        }
+                      ]
+                    },
+                    "contextAlbumReference": [],
+                    "taskSelectionLogic": {
+                      "key": "NULL",
+                      "logicFlavour": "UNDEFINED",
+                      "logic": ""
+                    },
+                    "stateFinalizerLogicMap": {
+                      "entry": []
+                    },
+                    "defaultTask": {
+                      "name": "FLBPolicy_Task_Post",
+                      "version": "0.0.1"
+                    },
+                    "taskReferences": {
+                      "entry": [
+                        {
+                          "key": {
+                            "name": "FLBPolicy_Task_Post",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_Policy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "PostExecute",
+                              "localName": "FLBPolicy_Policy"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "FLBPolicy_Policy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "PostExecute",
+                              "localName": "Post2Out"
+                            }
+                          }
+                        }
+                      ]
+                    }
+                  }
+                },
+                {
+                  "key": "PreExecute",
+                  "value": {
+                    "stateKey": {
+                      "parentKeyName": "FLBPolicy_Policy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "PreExecute"
+                    },
+                    "trigger": {
+                      "name": "FLBPolicy_InputEvent",
+                      "version": "0.0.1"
+                    },
+                    "stateOutputs": {
+                      "entry": [
+                        {
+                          "key": "Pre2Fuzzy",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_Policy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "PreExecute",
+                              "localName": "Pre2Fuzzy"
+                            },
+                            "outgoingEvent": {
+                              "name": "FLBPolicy_toFuzzy",
+                              "version": "0.0.1"
+                            },
+                            "nextState": {
+                              "parentKeyName": "FLBPolicy_Policy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "FuzzyExecute"
+                            }
+                          }
+                        }
+                      ]
+                    },
+                    "contextAlbumReference": [],
+                    "taskSelectionLogic": {
+                      "key": "NULL",
+                      "logicFlavour": "UNDEFINED",
+                      "logic": ""
+                    },
+                    "stateFinalizerLogicMap": {
+                      "entry": []
+                    },
+                    "defaultTask": {
+                      "name": "FLBPolicy_Task_Pre",
+                      "version": "0.0.1"
+                    },
+                    "taskReferences": {
+                      "entry": [
+                        {
+                          "key": {
+                            "name": "FLBPolicy_Task_Pre",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "FLBPolicy_Policy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "PreExecute",
+                              "localName": "FLBPolicy_Policy"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "FLBPolicy_Policy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "PreExecute",
+                              "localName": "Pre2Fuzzy"
+                            }
+                          }
+                        }
+                      ]
+                    }
+                  }
+                }
+              ]
+            },
+            "firstState": "PreExecute"
+          }
+        }
+      ]
+    }
+  },
+  "tasks": {
+    "key": {
+      "name": "FLBPolicy_PolicyModel_Tasks",
+      "version": "0.0.1"
+    },
+    "taskMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "FLBPolicy_Task",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_Task",
+              "version": "0.0.1"
+            },
+            "inputFields": {
+              "entry": [
+                {
+                  "key": "Adjacency_4G_Name",
+                  "value": {
+                    "key": "Adjacency_4G_Name",
+                    "fieldSchemaKey": {
+                      "name": "Adjacency_4G_Name_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "CellA",
+                  "value": {
+                    "key": "CellA",
+                    "fieldSchemaKey": {
+                      "name": "CellA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "CellB",
+                  "value": {
+                    "key": "CellB",
+                    "fieldSchemaKey": {
+                      "name": "CellB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "ENABLE_CONGESTION",
+                  "value": {
+                    "key": "ENABLE_CONGESTION",
+                    "fieldSchemaKey": {
+                      "name": "ENABLE_CONGESTION_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "FREQ_REL_TYPE",
+                  "value": {
+                    "key": "FREQ_REL_TYPE",
+                    "fieldSchemaKey": {
+                      "name": "FREQ_REL_TYPE_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "HO_EXEC_FAIL_RATE_AB",
+                  "value": {
+                    "key": "HO_EXEC_FAIL_RATE_AB",
+                    "fieldSchemaKey": {
+                      "name": "HO_EXEC_FAIL_RATE_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "HO_EXEC_FAIL_RATE_BA",
+                  "value": {
+                    "key": "HO_EXEC_FAIL_RATE_BA",
+                    "fieldSchemaKey": {
+                      "name": "HO_EXEC_FAIL_RATE_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "LOW_CQI_SAMPLES_RATE_HO_AB",
+                  "value": {
+                    "key": "LOW_CQI_SAMPLES_RATE_HO_AB",
+                    "fieldSchemaKey": {
+                      "name": "LOW_CQI_SAMPLES_RATE_HO_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "LOW_CQI_SAMPLES_RATE_HO_BA",
+                  "value": {
+                    "key": "LOW_CQI_SAMPLES_RATE_HO_BA",
+                    "fieldSchemaKey": {
+                      "name": "LOW_CQI_SAMPLES_RATE_HO_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB",
+                  "value": {
+                    "key": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB",
+                    "fieldSchemaKey": {
+                      "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA",
+                  "value": {
+                    "key": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA",
+                    "fieldSchemaKey": {
+                      "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "PDCCH_CCE_HIGH_LOAD_DELTA",
+                  "value": {
+                    "key": "PDCCH_CCE_HIGH_LOAD_DELTA",
+                    "fieldSchemaKey": {
+                      "name": "PDCCH_CCE_HIGH_LOAD_DELTA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_HIGH_AB",
+                  "value": {
+                    "key": "REL_HO_EXEC_FAIL_RATE_HIGH_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_HIGH_BA",
+                  "value": {
+                    "key": "REL_HO_EXEC_FAIL_RATE_HIGH_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_LOW_AB",
+                  "value": {
+                    "key": "REL_HO_EXEC_FAIL_RATE_LOW_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_LOW_BA",
+                  "value": {
+                    "key": "REL_HO_EXEC_FAIL_RATE_LOW_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_NUM_HO_WITH_EVENTS_AB_IN",
+                  "value": {
+                    "key": "REL_NUM_HO_WITH_EVENTS_AB_IN",
+                    "fieldSchemaKey": {
+                      "name": "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_NUM_HO_WITH_EVENTS_BA_IN",
+                  "value": {
+                    "key": "REL_NUM_HO_WITH_EVENTS_BA_IN",
+                    "fieldSchemaKey": {
+                      "name": "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_HIGH_AB",
+                  "value": {
+                    "key": "REL_TOO_EARLY_HO_RATE_HIGH_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_HIGH_BA",
+                  "value": {
+                    "key": "REL_TOO_EARLY_HO_RATE_HIGH_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_LOW_AB",
+                  "value": {
+                    "key": "REL_TOO_EARLY_HO_RATE_LOW_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_LOW_BA",
+                  "value": {
+                    "key": "REL_TOO_EARLY_HO_RATE_LOW_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_HIGH_AB",
+                  "value": {
+                    "key": "REL_TOO_LATE_HO_RATE_HIGH_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_HIGH_BA",
+                  "value": {
+                    "key": "REL_TOO_LATE_HO_RATE_HIGH_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_LOW_AB",
+                  "value": {
+                    "key": "REL_TOO_LATE_HO_RATE_LOW_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_LOW_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_LOW_BA",
+                  "value": {
+                    "key": "REL_TOO_LATE_HO_RATE_LOW_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_LOW_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "RRC_CONGESTION_DELTA",
+                  "value": {
+                    "key": "RRC_CONGESTION_DELTA",
+                    "fieldSchemaKey": {
+                      "name": "RRC_CONGESTION_DELTA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "SET_TYPE",
+                  "value": {
+                    "key": "SET_TYPE",
+                    "fieldSchemaKey": {
+                      "name": "SET_TYPE_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "TOO_EARLY_HO_RATE_AB",
+                  "value": {
+                    "key": "TOO_EARLY_HO_RATE_AB",
+                    "fieldSchemaKey": {
+                      "name": "TOO_EARLY_HO_RATE_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "TOO_EARLY_HO_RATE_BA",
+                  "value": {
+                    "key": "TOO_EARLY_HO_RATE_BA",
+                    "fieldSchemaKey": {
+                      "name": "TOO_EARLY_HO_RATE_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "TOO_LATE_HO_RATE_AB",
+                  "value": {
+                    "key": "TOO_LATE_HO_RATE_AB",
+                    "fieldSchemaKey": {
+                      "name": "TOO_LATE_HO_RATE_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "TOO_LATE_HO_RATE_BA",
+                  "value": {
+                    "key": "TOO_LATE_HO_RATE_BA",
+                    "fieldSchemaKey": {
+                      "name": "TOO_LATE_HO_RATE_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                }
+              ]
+            },
+            "outputFields": {
+              "entry": [
+                {
+                  "key": "Adjacency_4G_Name",
+                  "value": {
+                    "key": "Adjacency_4G_Name",
+                    "fieldSchemaKey": {
+                      "name": "Adjacency_4G_Name_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "CellA",
+                  "value": {
+                    "key": "CellA",
+                    "fieldSchemaKey": {
+                      "name": "CellA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "CellB",
+                  "value": {
+                    "key": "CellB",
+                    "fieldSchemaKey": {
+                      "name": "CellB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "OCN_AB",
+                  "value": {
+                    "key": "OCN_AB",
+                    "fieldSchemaKey": {
+                      "name": "OCN_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "OCN_BA",
+                  "value": {
+                    "key": "OCN_BA",
+                    "fieldSchemaKey": {
+                      "name": "OCN_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_AB",
+                  "value": {
+                    "key": "REL_HO_EXEC_FAIL_RATE_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_BA",
+                  "value": {
+                    "key": "REL_HO_EXEC_FAIL_RATE_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_NUM_HO_WITH_EVENTS_AB",
+                  "value": {
+                    "key": "REL_NUM_HO_WITH_EVENTS_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_NUM_HO_WITH_EVENTS_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_NUM_HO_WITH_EVENTS_BA",
+                  "value": {
+                    "key": "REL_NUM_HO_WITH_EVENTS_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_NUM_HO_WITH_EVENTS_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_AB",
+                  "value": {
+                    "key": "REL_TOO_EARLY_HO_RATE_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_BA",
+                  "value": {
+                    "key": "REL_TOO_EARLY_HO_RATE_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_AB",
+                  "value": {
+                    "key": "REL_TOO_LATE_HO_RATE_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_BA",
+                  "value": {
+                    "key": "REL_TOO_LATE_HO_RATE_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "SB_OCN_AB",
+                  "value": {
+                    "key": "SB_OCN_AB",
+                    "fieldSchemaKey": {
+                      "name": "SB_OCN_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "SB_OCN_BA",
+                  "value": {
+                    "key": "SB_OCN_BA",
+                    "fieldSchemaKey": {
+                      "name": "SB_OCN_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": []
+            },
+            "contextAlbumReference": [],
+            "taskLogic": {
+              "key": "TaskLogic",
+              "logicFlavour": "FUZZY",
+              "logic": "somelogic goes here"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_Task_Post",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_Task_Post",
+              "version": "0.0.1"
+            },
+            "inputFields": {
+              "entry": [
+                {
+                  "key": "Adjacency_4G_Name",
+                  "value": {
+                    "key": "Adjacency_4G_Name",
+                    "fieldSchemaKey": {
+                      "name": "Adjacency_4G_Name_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "CellA",
+                  "value": {
+                    "key": "CellA",
+                    "fieldSchemaKey": {
+                      "name": "CellA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "CellB",
+                  "value": {
+                    "key": "CellB",
+                    "fieldSchemaKey": {
+                      "name": "CellB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "OCN_AB",
+                  "value": {
+                    "key": "OCN_AB",
+                    "fieldSchemaKey": {
+                      "name": "OCN_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "OCN_BA",
+                  "value": {
+                    "key": "OCN_BA",
+                    "fieldSchemaKey": {
+                      "name": "OCN_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_AB",
+                  "value": {
+                    "key": "REL_HO_EXEC_FAIL_RATE_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_BA",
+                  "value": {
+                    "key": "REL_HO_EXEC_FAIL_RATE_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_NUM_HO_WITH_EVENTS_AB",
+                  "value": {
+                    "key": "REL_NUM_HO_WITH_EVENTS_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_NUM_HO_WITH_EVENTS_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_NUM_HO_WITH_EVENTS_BA",
+                  "value": {
+                    "key": "REL_NUM_HO_WITH_EVENTS_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_NUM_HO_WITH_EVENTS_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_AB",
+                  "value": {
+                    "key": "REL_TOO_EARLY_HO_RATE_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_BA",
+                  "value": {
+                    "key": "REL_TOO_EARLY_HO_RATE_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_AB",
+                  "value": {
+                    "key": "REL_TOO_LATE_HO_RATE_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_BA",
+                  "value": {
+                    "key": "REL_TOO_LATE_HO_RATE_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "SB_OCN_AB",
+                  "value": {
+                    "key": "SB_OCN_AB",
+                    "fieldSchemaKey": {
+                      "name": "SB_OCN_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "SB_OCN_BA",
+                  "value": {
+                    "key": "SB_OCN_BA",
+                    "fieldSchemaKey": {
+                      "name": "SB_OCN_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                }
+              ]
+            },
+            "outputFields": {
+              "entry": [
+                {
+                  "key": "Adjacency_4G_Name",
+                  "value": {
+                    "key": "Adjacency_4G_Name",
+                    "fieldSchemaKey": {
+                      "name": "Adjacency_4G_Name_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "CellA",
+                  "value": {
+                    "key": "CellA",
+                    "fieldSchemaKey": {
+                      "name": "CellA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "CellB",
+                  "value": {
+                    "key": "CellB",
+                    "fieldSchemaKey": {
+                      "name": "CellB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "OCN_AB",
+                  "value": {
+                    "key": "OCN_AB",
+                    "fieldSchemaKey": {
+                      "name": "OCN_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "OCN_BA",
+                  "value": {
+                    "key": "OCN_BA",
+                    "fieldSchemaKey": {
+                      "name": "OCN_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_AB",
+                  "value": {
+                    "key": "REL_HO_EXEC_FAIL_RATE_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_BA",
+                  "value": {
+                    "key": "REL_HO_EXEC_FAIL_RATE_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_NUM_HO_WITH_EVENTS_AB",
+                  "value": {
+                    "key": "REL_NUM_HO_WITH_EVENTS_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_NUM_HO_WITH_EVENTS_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_NUM_HO_WITH_EVENTS_BA",
+                  "value": {
+                    "key": "REL_NUM_HO_WITH_EVENTS_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_NUM_HO_WITH_EVENTS_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_AB",
+                  "value": {
+                    "key": "REL_TOO_EARLY_HO_RATE_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_BA",
+                  "value": {
+                    "key": "REL_TOO_EARLY_HO_RATE_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_AB",
+                  "value": {
+                    "key": "REL_TOO_LATE_HO_RATE_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_BA",
+                  "value": {
+                    "key": "REL_TOO_LATE_HO_RATE_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "SB_OCN_AB",
+                  "value": {
+                    "key": "SB_OCN_AB",
+                    "fieldSchemaKey": {
+                      "name": "SB_OCN_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "SB_OCN_BA",
+                  "value": {
+                    "key": "SB_OCN_BA",
+                    "fieldSchemaKey": {
+                      "name": "SB_OCN_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": []
+            },
+            "contextAlbumReference": [],
+            "taskLogic": {
+              "key": "TaskLogic",
+              "logicFlavour": "MVEL",
+              "logic": "logger.debug(subject.id);logger.debug(inFields);outFields.putAll(inFields);logger.debug(outFields);return true;"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_Task_Pre",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_Task_Pre",
+              "version": "0.0.1"
+            },
+            "inputFields": {
+              "entry": [
+                {
+                  "key": "Adjacency_4G_Name",
+                  "value": {
+                    "key": "Adjacency_4G_Name",
+                    "fieldSchemaKey": {
+                      "name": "Adjacency_4G_Name_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "CellA",
+                  "value": {
+                    "key": "CellA",
+                    "fieldSchemaKey": {
+                      "name": "CellA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "CellB",
+                  "value": {
+                    "key": "CellB",
+                    "fieldSchemaKey": {
+                      "name": "CellB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "ENABLE_CONGESTION",
+                  "value": {
+                    "key": "ENABLE_CONGESTION",
+                    "fieldSchemaKey": {
+                      "name": "ENABLE_CONGESTION_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "FREQ_REL_TYPE",
+                  "value": {
+                    "key": "FREQ_REL_TYPE",
+                    "fieldSchemaKey": {
+                      "name": "FREQ_REL_TYPE_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "HO_EXEC_FAIL_RATE_AB",
+                  "value": {
+                    "key": "HO_EXEC_FAIL_RATE_AB",
+                    "fieldSchemaKey": {
+                      "name": "HO_EXEC_FAIL_RATE_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "HO_EXEC_FAIL_RATE_BA",
+                  "value": {
+                    "key": "HO_EXEC_FAIL_RATE_BA",
+                    "fieldSchemaKey": {
+                      "name": "HO_EXEC_FAIL_RATE_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "LOW_CQI_SAMPLES_RATE_HO_AB",
+                  "value": {
+                    "key": "LOW_CQI_SAMPLES_RATE_HO_AB",
+                    "fieldSchemaKey": {
+                      "name": "LOW_CQI_SAMPLES_RATE_HO_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "LOW_CQI_SAMPLES_RATE_HO_BA",
+                  "value": {
+                    "key": "LOW_CQI_SAMPLES_RATE_HO_BA",
+                    "fieldSchemaKey": {
+                      "name": "LOW_CQI_SAMPLES_RATE_HO_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB",
+                  "value": {
+                    "key": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB",
+                    "fieldSchemaKey": {
+                      "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA",
+                  "value": {
+                    "key": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA",
+                    "fieldSchemaKey": {
+                      "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "PDCCH_CCE_HIGH_LOAD_DELTA",
+                  "value": {
+                    "key": "PDCCH_CCE_HIGH_LOAD_DELTA",
+                    "fieldSchemaKey": {
+                      "name": "PDCCH_CCE_HIGH_LOAD_DELTA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_HIGH_AB",
+                  "value": {
+                    "key": "REL_HO_EXEC_FAIL_RATE_HIGH_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_HIGH_BA",
+                  "value": {
+                    "key": "REL_HO_EXEC_FAIL_RATE_HIGH_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_LOW_AB",
+                  "value": {
+                    "key": "REL_HO_EXEC_FAIL_RATE_LOW_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_LOW_BA",
+                  "value": {
+                    "key": "REL_HO_EXEC_FAIL_RATE_LOW_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_NUM_HO_WITH_EVENTS_AB_IN",
+                  "value": {
+                    "key": "REL_NUM_HO_WITH_EVENTS_AB_IN",
+                    "fieldSchemaKey": {
+                      "name": "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_NUM_HO_WITH_EVENTS_BA_IN",
+                  "value": {
+                    "key": "REL_NUM_HO_WITH_EVENTS_BA_IN",
+                    "fieldSchemaKey": {
+                      "name": "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_HIGH_AB",
+                  "value": {
+                    "key": "REL_TOO_EARLY_HO_RATE_HIGH_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_HIGH_BA",
+                  "value": {
+                    "key": "REL_TOO_EARLY_HO_RATE_HIGH_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_LOW_AB",
+                  "value": {
+                    "key": "REL_TOO_EARLY_HO_RATE_LOW_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_LOW_BA",
+                  "value": {
+                    "key": "REL_TOO_EARLY_HO_RATE_LOW_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_HIGH_AB",
+                  "value": {
+                    "key": "REL_TOO_LATE_HO_RATE_HIGH_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_HIGH_BA",
+                  "value": {
+                    "key": "REL_TOO_LATE_HO_RATE_HIGH_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_LOW_AB",
+                  "value": {
+                    "key": "REL_TOO_LATE_HO_RATE_LOW_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_LOW_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_LOW_BA",
+                  "value": {
+                    "key": "REL_TOO_LATE_HO_RATE_LOW_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_LOW_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "RRC_CONGESTION_DELTA",
+                  "value": {
+                    "key": "RRC_CONGESTION_DELTA",
+                    "fieldSchemaKey": {
+                      "name": "RRC_CONGESTION_DELTA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "SET_TYPE",
+                  "value": {
+                    "key": "SET_TYPE",
+                    "fieldSchemaKey": {
+                      "name": "SET_TYPE_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "TOO_EARLY_HO_RATE_AB",
+                  "value": {
+                    "key": "TOO_EARLY_HO_RATE_AB",
+                    "fieldSchemaKey": {
+                      "name": "TOO_EARLY_HO_RATE_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "TOO_EARLY_HO_RATE_BA",
+                  "value": {
+                    "key": "TOO_EARLY_HO_RATE_BA",
+                    "fieldSchemaKey": {
+                      "name": "TOO_EARLY_HO_RATE_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "TOO_LATE_HO_RATE_AB",
+                  "value": {
+                    "key": "TOO_LATE_HO_RATE_AB",
+                    "fieldSchemaKey": {
+                      "name": "TOO_LATE_HO_RATE_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "TOO_LATE_HO_RATE_BA",
+                  "value": {
+                    "key": "TOO_LATE_HO_RATE_BA",
+                    "fieldSchemaKey": {
+                      "name": "TOO_LATE_HO_RATE_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                }
+              ]
+            },
+            "outputFields": {
+              "entry": [
+                {
+                  "key": "Adjacency_4G_Name",
+                  "value": {
+                    "key": "Adjacency_4G_Name",
+                    "fieldSchemaKey": {
+                      "name": "Adjacency_4G_Name_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "CellA",
+                  "value": {
+                    "key": "CellA",
+                    "fieldSchemaKey": {
+                      "name": "CellA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "CellB",
+                  "value": {
+                    "key": "CellB",
+                    "fieldSchemaKey": {
+                      "name": "CellB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "ENABLE_CONGESTION",
+                  "value": {
+                    "key": "ENABLE_CONGESTION",
+                    "fieldSchemaKey": {
+                      "name": "ENABLE_CONGESTION_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "FREQ_REL_TYPE",
+                  "value": {
+                    "key": "FREQ_REL_TYPE",
+                    "fieldSchemaKey": {
+                      "name": "FREQ_REL_TYPE_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "HO_EXEC_FAIL_RATE_AB",
+                  "value": {
+                    "key": "HO_EXEC_FAIL_RATE_AB",
+                    "fieldSchemaKey": {
+                      "name": "HO_EXEC_FAIL_RATE_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "HO_EXEC_FAIL_RATE_BA",
+                  "value": {
+                    "key": "HO_EXEC_FAIL_RATE_BA",
+                    "fieldSchemaKey": {
+                      "name": "HO_EXEC_FAIL_RATE_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "LOW_CQI_SAMPLES_RATE_HO_AB",
+                  "value": {
+                    "key": "LOW_CQI_SAMPLES_RATE_HO_AB",
+                    "fieldSchemaKey": {
+                      "name": "LOW_CQI_SAMPLES_RATE_HO_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "LOW_CQI_SAMPLES_RATE_HO_BA",
+                  "value": {
+                    "key": "LOW_CQI_SAMPLES_RATE_HO_BA",
+                    "fieldSchemaKey": {
+                      "name": "LOW_CQI_SAMPLES_RATE_HO_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB",
+                  "value": {
+                    "key": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB",
+                    "fieldSchemaKey": {
+                      "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA",
+                  "value": {
+                    "key": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA",
+                    "fieldSchemaKey": {
+                      "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "PDCCH_CCE_HIGH_LOAD_DELTA",
+                  "value": {
+                    "key": "PDCCH_CCE_HIGH_LOAD_DELTA",
+                    "fieldSchemaKey": {
+                      "name": "PDCCH_CCE_HIGH_LOAD_DELTA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_HIGH_AB",
+                  "value": {
+                    "key": "REL_HO_EXEC_FAIL_RATE_HIGH_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_HIGH_BA",
+                  "value": {
+                    "key": "REL_HO_EXEC_FAIL_RATE_HIGH_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_LOW_AB",
+                  "value": {
+                    "key": "REL_HO_EXEC_FAIL_RATE_LOW_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_LOW_BA",
+                  "value": {
+                    "key": "REL_HO_EXEC_FAIL_RATE_LOW_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_NUM_HO_WITH_EVENTS_AB_IN",
+                  "value": {
+                    "key": "REL_NUM_HO_WITH_EVENTS_AB_IN",
+                    "fieldSchemaKey": {
+                      "name": "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_NUM_HO_WITH_EVENTS_BA_IN",
+                  "value": {
+                    "key": "REL_NUM_HO_WITH_EVENTS_BA_IN",
+                    "fieldSchemaKey": {
+                      "name": "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_HIGH_AB",
+                  "value": {
+                    "key": "REL_TOO_EARLY_HO_RATE_HIGH_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_HIGH_BA",
+                  "value": {
+                    "key": "REL_TOO_EARLY_HO_RATE_HIGH_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_LOW_AB",
+                  "value": {
+                    "key": "REL_TOO_EARLY_HO_RATE_LOW_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_LOW_BA",
+                  "value": {
+                    "key": "REL_TOO_EARLY_HO_RATE_LOW_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_HIGH_AB",
+                  "value": {
+                    "key": "REL_TOO_LATE_HO_RATE_HIGH_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_HIGH_BA",
+                  "value": {
+                    "key": "REL_TOO_LATE_HO_RATE_HIGH_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_LOW_AB",
+                  "value": {
+                    "key": "REL_TOO_LATE_HO_RATE_LOW_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_LOW_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_LOW_BA",
+                  "value": {
+                    "key": "REL_TOO_LATE_HO_RATE_LOW_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_LOW_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "RRC_CONGESTION_DELTA",
+                  "value": {
+                    "key": "RRC_CONGESTION_DELTA",
+                    "fieldSchemaKey": {
+                      "name": "RRC_CONGESTION_DELTA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "SET_TYPE",
+                  "value": {
+                    "key": "SET_TYPE",
+                    "fieldSchemaKey": {
+                      "name": "SET_TYPE_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "TOO_EARLY_HO_RATE_AB",
+                  "value": {
+                    "key": "TOO_EARLY_HO_RATE_AB",
+                    "fieldSchemaKey": {
+                      "name": "TOO_EARLY_HO_RATE_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "TOO_EARLY_HO_RATE_BA",
+                  "value": {
+                    "key": "TOO_EARLY_HO_RATE_BA",
+                    "fieldSchemaKey": {
+                      "name": "TOO_EARLY_HO_RATE_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "TOO_LATE_HO_RATE_AB",
+                  "value": {
+                    "key": "TOO_LATE_HO_RATE_AB",
+                    "fieldSchemaKey": {
+                      "name": "TOO_LATE_HO_RATE_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "TOO_LATE_HO_RATE_BA",
+                  "value": {
+                    "key": "TOO_LATE_HO_RATE_BA",
+                    "fieldSchemaKey": {
+                      "name": "TOO_LATE_HO_RATE_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": []
+            },
+            "contextAlbumReference": [],
+            "taskLogic": {
+              "key": "TaskLogic",
+              "logicFlavour": "MVEL",
+              "logic": "logger.debug(subject.id);logger.debug(inFields);outFields.putAll(inFields);logger.debug(outFields);return true;"
+            }
+          }
+        }
+      ]
+    }
+  },
+  "events": {
+    "key": {
+      "name": "FLBPolicy_PolicyModel_Events",
+      "version": "0.0.1"
+    },
+    "eventMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "FLBPolicy_InputEvent",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_InputEvent",
+              "version": "0.0.1"
+            },
+            "nameSpace": "org.onap.policy.apexaiasonom",
+            "source": "external",
+            "target": "apex",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "Adjacency_4G_Name",
+                  "value": {
+                    "key": "Adjacency_4G_Name",
+                    "fieldSchemaKey": {
+                      "name": "Adjacency_4G_Name_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "CellA",
+                  "value": {
+                    "key": "CellA",
+                    "fieldSchemaKey": {
+                      "name": "CellA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "CellB",
+                  "value": {
+                    "key": "CellB",
+                    "fieldSchemaKey": {
+                      "name": "CellB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "ENABLE_CONGESTION",
+                  "value": {
+                    "key": "ENABLE_CONGESTION",
+                    "fieldSchemaKey": {
+                      "name": "ENABLE_CONGESTION_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "FREQ_REL_TYPE",
+                  "value": {
+                    "key": "FREQ_REL_TYPE",
+                    "fieldSchemaKey": {
+                      "name": "FREQ_REL_TYPE_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "HO_EXEC_FAIL_RATE_AB",
+                  "value": {
+                    "key": "HO_EXEC_FAIL_RATE_AB",
+                    "fieldSchemaKey": {
+                      "name": "HO_EXEC_FAIL_RATE_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "HO_EXEC_FAIL_RATE_BA",
+                  "value": {
+                    "key": "HO_EXEC_FAIL_RATE_BA",
+                    "fieldSchemaKey": {
+                      "name": "HO_EXEC_FAIL_RATE_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "LOW_CQI_SAMPLES_RATE_HO_AB",
+                  "value": {
+                    "key": "LOW_CQI_SAMPLES_RATE_HO_AB",
+                    "fieldSchemaKey": {
+                      "name": "LOW_CQI_SAMPLES_RATE_HO_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "LOW_CQI_SAMPLES_RATE_HO_BA",
+                  "value": {
+                    "key": "LOW_CQI_SAMPLES_RATE_HO_BA",
+                    "fieldSchemaKey": {
+                      "name": "LOW_CQI_SAMPLES_RATE_HO_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB",
+                  "value": {
+                    "key": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB",
+                    "fieldSchemaKey": {
+                      "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA",
+                  "value": {
+                    "key": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA",
+                    "fieldSchemaKey": {
+                      "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "PDCCH_CCE_HIGH_LOAD_DELTA",
+                  "value": {
+                    "key": "PDCCH_CCE_HIGH_LOAD_DELTA",
+                    "fieldSchemaKey": {
+                      "name": "PDCCH_CCE_HIGH_LOAD_DELTA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_HIGH_AB",
+                  "value": {
+                    "key": "REL_HO_EXEC_FAIL_RATE_HIGH_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_HIGH_BA",
+                  "value": {
+                    "key": "REL_HO_EXEC_FAIL_RATE_HIGH_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_LOW_AB",
+                  "value": {
+                    "key": "REL_HO_EXEC_FAIL_RATE_LOW_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_LOW_BA",
+                  "value": {
+                    "key": "REL_HO_EXEC_FAIL_RATE_LOW_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_NUM_HO_WITH_EVENTS_AB_IN",
+                  "value": {
+                    "key": "REL_NUM_HO_WITH_EVENTS_AB_IN",
+                    "fieldSchemaKey": {
+                      "name": "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_NUM_HO_WITH_EVENTS_BA_IN",
+                  "value": {
+                    "key": "REL_NUM_HO_WITH_EVENTS_BA_IN",
+                    "fieldSchemaKey": {
+                      "name": "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_HIGH_AB",
+                  "value": {
+                    "key": "REL_TOO_EARLY_HO_RATE_HIGH_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_HIGH_BA",
+                  "value": {
+                    "key": "REL_TOO_EARLY_HO_RATE_HIGH_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_LOW_AB",
+                  "value": {
+                    "key": "REL_TOO_EARLY_HO_RATE_LOW_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_LOW_BA",
+                  "value": {
+                    "key": "REL_TOO_EARLY_HO_RATE_LOW_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_HIGH_AB",
+                  "value": {
+                    "key": "REL_TOO_LATE_HO_RATE_HIGH_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_HIGH_BA",
+                  "value": {
+                    "key": "REL_TOO_LATE_HO_RATE_HIGH_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_LOW_AB",
+                  "value": {
+                    "key": "REL_TOO_LATE_HO_RATE_LOW_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_LOW_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_LOW_BA",
+                  "value": {
+                    "key": "REL_TOO_LATE_HO_RATE_LOW_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_LOW_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "RRC_CONGESTION_DELTA",
+                  "value": {
+                    "key": "RRC_CONGESTION_DELTA",
+                    "fieldSchemaKey": {
+                      "name": "RRC_CONGESTION_DELTA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "SET_TYPE",
+                  "value": {
+                    "key": "SET_TYPE",
+                    "fieldSchemaKey": {
+                      "name": "SET_TYPE_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "TOO_EARLY_HO_RATE_AB",
+                  "value": {
+                    "key": "TOO_EARLY_HO_RATE_AB",
+                    "fieldSchemaKey": {
+                      "name": "TOO_EARLY_HO_RATE_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "TOO_EARLY_HO_RATE_BA",
+                  "value": {
+                    "key": "TOO_EARLY_HO_RATE_BA",
+                    "fieldSchemaKey": {
+                      "name": "TOO_EARLY_HO_RATE_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "TOO_LATE_HO_RATE_AB",
+                  "value": {
+                    "key": "TOO_LATE_HO_RATE_AB",
+                    "fieldSchemaKey": {
+                      "name": "TOO_LATE_HO_RATE_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "TOO_LATE_HO_RATE_BA",
+                  "value": {
+                    "key": "TOO_LATE_HO_RATE_BA",
+                    "fieldSchemaKey": {
+                      "name": "TOO_LATE_HO_RATE_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                }
+              ]
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_OutputEvent",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_OutputEvent",
+              "version": "0.0.1"
+            },
+            "nameSpace": "org.onap.policy.apexaiasonom",
+            "source": "apex",
+            "target": "external",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "Adjacency_4G_Name",
+                  "value": {
+                    "key": "Adjacency_4G_Name",
+                    "fieldSchemaKey": {
+                      "name": "Adjacency_4G_Name_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "CellA",
+                  "value": {
+                    "key": "CellA",
+                    "fieldSchemaKey": {
+                      "name": "CellA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "CellB",
+                  "value": {
+                    "key": "CellB",
+                    "fieldSchemaKey": {
+                      "name": "CellB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "OCN_AB",
+                  "value": {
+                    "key": "OCN_AB",
+                    "fieldSchemaKey": {
+                      "name": "OCN_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "OCN_BA",
+                  "value": {
+                    "key": "OCN_BA",
+                    "fieldSchemaKey": {
+                      "name": "OCN_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_AB",
+                  "value": {
+                    "key": "REL_HO_EXEC_FAIL_RATE_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_BA",
+                  "value": {
+                    "key": "REL_HO_EXEC_FAIL_RATE_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_NUM_HO_WITH_EVENTS_AB",
+                  "value": {
+                    "key": "REL_NUM_HO_WITH_EVENTS_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_NUM_HO_WITH_EVENTS_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_NUM_HO_WITH_EVENTS_BA",
+                  "value": {
+                    "key": "REL_NUM_HO_WITH_EVENTS_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_NUM_HO_WITH_EVENTS_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_AB",
+                  "value": {
+                    "key": "REL_TOO_EARLY_HO_RATE_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_BA",
+                  "value": {
+                    "key": "REL_TOO_EARLY_HO_RATE_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_AB",
+                  "value": {
+                    "key": "REL_TOO_LATE_HO_RATE_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_BA",
+                  "value": {
+                    "key": "REL_TOO_LATE_HO_RATE_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "SB_OCN_AB",
+                  "value": {
+                    "key": "SB_OCN_AB",
+                    "fieldSchemaKey": {
+                      "name": "SB_OCN_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "SB_OCN_BA",
+                  "value": {
+                    "key": "SB_OCN_BA",
+                    "fieldSchemaKey": {
+                      "name": "SB_OCN_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                }
+              ]
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_fromFuzzy",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_fromFuzzy",
+              "version": "0.0.1"
+            },
+            "nameSpace": "org.onap.policy.apexaiasonom",
+            "source": "fuzzy",
+            "target": "apex",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "Adjacency_4G_Name",
+                  "value": {
+                    "key": "Adjacency_4G_Name",
+                    "fieldSchemaKey": {
+                      "name": "Adjacency_4G_Name_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "CellA",
+                  "value": {
+                    "key": "CellA",
+                    "fieldSchemaKey": {
+                      "name": "CellA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "CellB",
+                  "value": {
+                    "key": "CellB",
+                    "fieldSchemaKey": {
+                      "name": "CellB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "OCN_AB",
+                  "value": {
+                    "key": "OCN_AB",
+                    "fieldSchemaKey": {
+                      "name": "OCN_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "OCN_BA",
+                  "value": {
+                    "key": "OCN_BA",
+                    "fieldSchemaKey": {
+                      "name": "OCN_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_AB",
+                  "value": {
+                    "key": "REL_HO_EXEC_FAIL_RATE_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_BA",
+                  "value": {
+                    "key": "REL_HO_EXEC_FAIL_RATE_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_NUM_HO_WITH_EVENTS_AB",
+                  "value": {
+                    "key": "REL_NUM_HO_WITH_EVENTS_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_NUM_HO_WITH_EVENTS_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_NUM_HO_WITH_EVENTS_BA",
+                  "value": {
+                    "key": "REL_NUM_HO_WITH_EVENTS_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_NUM_HO_WITH_EVENTS_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_AB",
+                  "value": {
+                    "key": "REL_TOO_EARLY_HO_RATE_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_BA",
+                  "value": {
+                    "key": "REL_TOO_EARLY_HO_RATE_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_AB",
+                  "value": {
+                    "key": "REL_TOO_LATE_HO_RATE_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_BA",
+                  "value": {
+                    "key": "REL_TOO_LATE_HO_RATE_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "SB_OCN_AB",
+                  "value": {
+                    "key": "SB_OCN_AB",
+                    "fieldSchemaKey": {
+                      "name": "SB_OCN_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "SB_OCN_BA",
+                  "value": {
+                    "key": "SB_OCN_BA",
+                    "fieldSchemaKey": {
+                      "name": "SB_OCN_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                }
+              ]
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "FLBPolicy_toFuzzy",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FLBPolicy_toFuzzy",
+              "version": "0.0.1"
+            },
+            "nameSpace": "org.onap.policy.apexaiasonom",
+            "source": "apex",
+            "target": "fuzzy",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "Adjacency_4G_Name",
+                  "value": {
+                    "key": "Adjacency_4G_Name",
+                    "fieldSchemaKey": {
+                      "name": "Adjacency_4G_Name_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "CellA",
+                  "value": {
+                    "key": "CellA",
+                    "fieldSchemaKey": {
+                      "name": "CellA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "CellB",
+                  "value": {
+                    "key": "CellB",
+                    "fieldSchemaKey": {
+                      "name": "CellB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "ENABLE_CONGESTION",
+                  "value": {
+                    "key": "ENABLE_CONGESTION",
+                    "fieldSchemaKey": {
+                      "name": "ENABLE_CONGESTION_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "FREQ_REL_TYPE",
+                  "value": {
+                    "key": "FREQ_REL_TYPE",
+                    "fieldSchemaKey": {
+                      "name": "FREQ_REL_TYPE_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "HO_EXEC_FAIL_RATE_AB",
+                  "value": {
+                    "key": "HO_EXEC_FAIL_RATE_AB",
+                    "fieldSchemaKey": {
+                      "name": "HO_EXEC_FAIL_RATE_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "HO_EXEC_FAIL_RATE_BA",
+                  "value": {
+                    "key": "HO_EXEC_FAIL_RATE_BA",
+                    "fieldSchemaKey": {
+                      "name": "HO_EXEC_FAIL_RATE_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "LOW_CQI_SAMPLES_RATE_HO_AB",
+                  "value": {
+                    "key": "LOW_CQI_SAMPLES_RATE_HO_AB",
+                    "fieldSchemaKey": {
+                      "name": "LOW_CQI_SAMPLES_RATE_HO_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "LOW_CQI_SAMPLES_RATE_HO_BA",
+                  "value": {
+                    "key": "LOW_CQI_SAMPLES_RATE_HO_BA",
+                    "fieldSchemaKey": {
+                      "name": "LOW_CQI_SAMPLES_RATE_HO_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB",
+                  "value": {
+                    "key": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB",
+                    "fieldSchemaKey": {
+                      "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA",
+                  "value": {
+                    "key": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA",
+                    "fieldSchemaKey": {
+                      "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "PDCCH_CCE_HIGH_LOAD_DELTA",
+                  "value": {
+                    "key": "PDCCH_CCE_HIGH_LOAD_DELTA",
+                    "fieldSchemaKey": {
+                      "name": "PDCCH_CCE_HIGH_LOAD_DELTA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_HIGH_AB",
+                  "value": {
+                    "key": "REL_HO_EXEC_FAIL_RATE_HIGH_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_HIGH_BA",
+                  "value": {
+                    "key": "REL_HO_EXEC_FAIL_RATE_HIGH_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_LOW_AB",
+                  "value": {
+                    "key": "REL_HO_EXEC_FAIL_RATE_LOW_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_HO_EXEC_FAIL_RATE_LOW_BA",
+                  "value": {
+                    "key": "REL_HO_EXEC_FAIL_RATE_LOW_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_NUM_HO_WITH_EVENTS_AB_IN",
+                  "value": {
+                    "key": "REL_NUM_HO_WITH_EVENTS_AB_IN",
+                    "fieldSchemaKey": {
+                      "name": "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_NUM_HO_WITH_EVENTS_BA_IN",
+                  "value": {
+                    "key": "REL_NUM_HO_WITH_EVENTS_BA_IN",
+                    "fieldSchemaKey": {
+                      "name": "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_HIGH_AB",
+                  "value": {
+                    "key": "REL_TOO_EARLY_HO_RATE_HIGH_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_HIGH_BA",
+                  "value": {
+                    "key": "REL_TOO_EARLY_HO_RATE_HIGH_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_LOW_AB",
+                  "value": {
+                    "key": "REL_TOO_EARLY_HO_RATE_LOW_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_EARLY_HO_RATE_LOW_BA",
+                  "value": {
+                    "key": "REL_TOO_EARLY_HO_RATE_LOW_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_HIGH_AB",
+                  "value": {
+                    "key": "REL_TOO_LATE_HO_RATE_HIGH_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_HIGH_BA",
+                  "value": {
+                    "key": "REL_TOO_LATE_HO_RATE_HIGH_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_LOW_AB",
+                  "value": {
+                    "key": "REL_TOO_LATE_HO_RATE_LOW_AB",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_LOW_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "REL_TOO_LATE_HO_RATE_LOW_BA",
+                  "value": {
+                    "key": "REL_TOO_LATE_HO_RATE_LOW_BA",
+                    "fieldSchemaKey": {
+                      "name": "REL_TOO_LATE_HO_RATE_LOW_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "RRC_CONGESTION_DELTA",
+                  "value": {
+                    "key": "RRC_CONGESTION_DELTA",
+                    "fieldSchemaKey": {
+                      "name": "RRC_CONGESTION_DELTA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "SET_TYPE",
+                  "value": {
+                    "key": "SET_TYPE",
+                    "fieldSchemaKey": {
+                      "name": "SET_TYPE_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "TOO_EARLY_HO_RATE_AB",
+                  "value": {
+                    "key": "TOO_EARLY_HO_RATE_AB",
+                    "fieldSchemaKey": {
+                      "name": "TOO_EARLY_HO_RATE_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "TOO_EARLY_HO_RATE_BA",
+                  "value": {
+                    "key": "TOO_EARLY_HO_RATE_BA",
+                    "fieldSchemaKey": {
+                      "name": "TOO_EARLY_HO_RATE_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "TOO_LATE_HO_RATE_AB",
+                  "value": {
+                    "key": "TOO_LATE_HO_RATE_AB",
+                    "fieldSchemaKey": {
+                      "name": "TOO_LATE_HO_RATE_AB_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "TOO_LATE_HO_RATE_BA",
+                  "value": {
+                    "key": "TOO_LATE_HO_RATE_BA",
+                    "fieldSchemaKey": {
+                      "name": "TOO_LATE_HO_RATE_BA_type",
+                      "version": "0.0.1"
+                    }
+                  }
+                }
+              ]
+            }
+          }
+        }
+      ]
+    }
+  },
+  "schemas": {
+    "key": {
+      "name": "FLBPolicy_PolicyModel_Schemas",
+      "version": "0.0.1"
+    },
+    "schemas": {
+      "entry": [
+        {
+          "key": {
+            "name": "Adjacency_4G_Name_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Adjacency_4G_Name_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.String"
+          }
+        },
+        {
+          "key": {
+            "name": "CellA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "CellA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.String"
+          }
+        },
+        {
+          "key": {
+            "name": "CellB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "CellB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.String"
+          }
+        },
+        {
+          "key": {
+            "name": "ENABLE_CONGESTION_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "ENABLE_CONGESTION_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Boolean"
+          }
+        },
+        {
+          "key": {
+            "name": "FREQ_REL_TYPE_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "FREQ_REL_TYPE_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.String"
+          }
+        },
+        {
+          "key": {
+            "name": "HO_EXEC_FAIL_RATE_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "HO_EXEC_FAIL_RATE_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "HO_EXEC_FAIL_RATE_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "HO_EXEC_FAIL_RATE_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "LOW_CQI_SAMPLES_RATE_HO_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LOW_CQI_SAMPLES_RATE_HO_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "LOW_CQI_SAMPLES_RATE_HO_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LOW_CQI_SAMPLES_RATE_HO_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LOW_PUSCH_SINR_SAMPLES_RATE_HO_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "OCN_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "OCN_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Double"
+          }
+        },
+        {
+          "key": {
+            "name": "OCN_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "OCN_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Double"
+          }
+        },
+        {
+          "key": {
+            "name": "PDCCH_CCE_HIGH_LOAD_DELTA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "PDCCH_CCE_HIGH_LOAD_DELTA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_HO_EXEC_FAIL_RATE_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_HO_EXEC_FAIL_RATE_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Boolean"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_HO_EXEC_FAIL_RATE_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_HO_EXEC_FAIL_RATE_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Boolean"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_HO_EXEC_FAIL_RATE_HIGH_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_HO_EXEC_FAIL_RATE_HIGH_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_HO_EXEC_FAIL_RATE_LOW_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_HO_EXEC_FAIL_RATE_LOW_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_NUM_HO_WITH_EVENTS_AB_IN_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_NUM_HO_WITH_EVENTS_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_NUM_HO_WITH_EVENTS_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Boolean"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_NUM_HO_WITH_EVENTS_BA_IN_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_NUM_HO_WITH_EVENTS_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_NUM_HO_WITH_EVENTS_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Boolean"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_EARLY_HO_RATE_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_EARLY_HO_RATE_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Boolean"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_EARLY_HO_RATE_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_EARLY_HO_RATE_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Boolean"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_EARLY_HO_RATE_HIGH_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_EARLY_HO_RATE_HIGH_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_EARLY_HO_RATE_LOW_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_EARLY_HO_RATE_LOW_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_LATE_HO_RATE_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_LATE_HO_RATE_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Boolean"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_LATE_HO_RATE_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_LATE_HO_RATE_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Boolean"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_LATE_HO_RATE_HIGH_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_LATE_HO_RATE_HIGH_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_LATE_HO_RATE_LOW_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_LATE_HO_RATE_LOW_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "REL_TOO_LATE_HO_RATE_LOW_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "REL_TOO_LATE_HO_RATE_LOW_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "RRC_CONGESTION_DELTA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "RRC_CONGESTION_DELTA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "SB_OCN_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SB_OCN_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.String"
+          }
+        },
+        {
+          "key": {
+            "name": "SB_OCN_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SB_OCN_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.String"
+          }
+        },
+        {
+          "key": {
+            "name": "SET_TYPE_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SET_TYPE_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.String"
+          }
+        },
+        {
+          "key": {
+            "name": "TOO_EARLY_HO_RATE_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TOO_EARLY_HO_RATE_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "TOO_EARLY_HO_RATE_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TOO_EARLY_HO_RATE_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "TOO_LATE_HO_RATE_AB_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TOO_LATE_HO_RATE_AB_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        },
+        {
+          "key": {
+            "name": "TOO_LATE_HO_RATE_BA_type",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TOO_LATE_HO_RATE_BA_type",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Float"
+          }
+        }
+      ]
+    }
+  }
+}
index 5a8796b..394638b 100644 (file)
 {
-   "apexPolicyModel" : {
-      "key" : {
-         "name" : "MacroFileTest_PolicyModel",
-         "version" : "0.0.1"
-      },
-      "keyInformation" : {
-         "key" : {
-            "name" : "MacroFileTest_PolicyModel_KeyInfo",
-            "version" : "0.0.1"
-         },
-         "keyInfoMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "MacroFileTest_PolicyModel",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "MacroFileTest_PolicyModel",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "ac575ca5-e2f5-3958-8873-f6068cd04440",
-                  "description" : "Generated description for concept referred to by key \"MacroFileTest_PolicyModel:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "MacroFileTest_PolicyModel_Albums",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "MacroFileTest_PolicyModel_Albums",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "a8864eb8-4f01-3b39-aaf8-2170311132e1",
-                  "description" : "Generated description for concept referred to by key \"MacroFileTest_PolicyModel_Albums:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "MacroFileTest_PolicyModel_Events",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "MacroFileTest_PolicyModel_Events",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "bd50051c-0761-38b0-940f-27d9d505c263",
-                  "description" : "Generated description for concept referred to by key \"MacroFileTest_PolicyModel_Events:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "MacroFileTest_PolicyModel_KeyInfo",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "MacroFileTest_PolicyModel_KeyInfo",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "81634b5c-d5d8-3c15-a80b-d9a12bd87760",
-                  "description" : "Generated description for concept referred to by key \"MacroFileTest_PolicyModel_KeyInfo:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "MacroFileTest_PolicyModel_Policies",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "MacroFileTest_PolicyModel_Policies",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "810268e3-6a5a-33c9-b24e-4206646cdace",
-                  "description" : "Generated description for concept referred to by key \"MacroFileTest_PolicyModel_Policies:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "MacroFileTest_PolicyModel_Schemas",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "MacroFileTest_PolicyModel_Schemas",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "f8f180ee-551d-30b7-850b-d707318cf25e",
-                  "description" : "Generated description for concept referred to by key \"MacroFileTest_PolicyModel_Schemas:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "MacroFileTest_PolicyModel_Tasks",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "MacroFileTest_PolicyModel_Tasks",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "ef8c00a8-3736-3e6d-be31-c07116ba67e4",
-                  "description" : "Generated description for concept referred to by key \"MacroFileTest_PolicyModel_Tasks:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "MacroFile_type1",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "MacroFile_type1",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "a2841e1e-e6da-3124-ab58-be301457f49c",
-                  "description" : "Generated description for concept referred to by key \"MacroFile_type1:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "MacroFile_type2",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "MacroFile_type2",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "d4b061be-9c01-3983-951b-8e28bb838a7c",
-                  "description" : "Generated description for concept referred to by key \"MacroFile_type2:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "MacroFile_type3",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "MacroFile_type3",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "5da3c65c-bc46-3d84-a080-875b67e9a546",
-                  "description" : "Generated description for concept referred to by key \"MacroFile_type3:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "MacroFile_type4",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "MacroFile_type4",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "19d7bb93-22af-34e3-a8ff-e715fdda265e",
-                  "description" : "Generated description for concept referred to by key \"MacroFile_type4:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "MacroFile_type5",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "MacroFile_type5",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "15039345-454e-3c11-9524-5e5d149394dc",
-                  "description" : "Generated description for concept referred to by key \"MacroFile_type5:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "dummyTask1",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "dummyTask1",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "41045520-f99e-3f78-8ac8-ebba16b94a98",
-                  "description" : "Generated description for concept referred to by key \"dummyTask1:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "dummyTask2",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "dummyTask2",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "e366e97f-b769-394a-b388-4ad65e105ccb",
-                  "description" : "Generated description for concept referred to by key \"dummyTask2:0.0.1\""
-               }
-            } ]
-         }
-      },
-      "policies" : {
-         "key" : {
-            "name" : "MacroFileTest_PolicyModel_Policies",
-            "version" : "0.0.1"
-         },
-         "policyMap" : {
-            "entry" : [ ]
-         }
-      },
-      "tasks" : {
-         "key" : {
-            "name" : "MacroFileTest_PolicyModel_Tasks",
-            "version" : "0.0.1"
-         },
-         "taskMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "dummyTask1",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "dummyTask1",
-                     "version" : "0.0.1"
-                  },
-                  "inputFields" : {
-                     "entry" : [ ]
-                  },
-                  "outputFields" : {
-                     "entry" : [ ]
-                  },
-                  "taskParameters" : {
-                     "entry" : [ ]
-                  },
-                  "contextAlbumReference" : [ ],
-                  "taskLogic" : {
-                     "key" : "TaskLogic",
-                     "logicFlavour" : "JAVASCRIPT",
-                     "logic" : "var returnValueType = Java.type(\"java.lang.Boolean\");\nvar returnValue = new returnValueType(true);"
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "dummyTask2",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "dummyTask2",
-                     "version" : "0.0.1"
-                  },
-                  "inputFields" : {
-                     "entry" : [ ]
-                  },
-                  "outputFields" : {
-                     "entry" : [ ]
-                  },
-                  "taskParameters" : {
-                     "entry" : [ ]
-                  },
-                  "contextAlbumReference" : [ ],
-                  "taskLogic" : {
-                     "key" : "TaskLogic",
-                     "logicFlavour" : "JAVASCRIPT",
-                     "logic" : "x=x+1\nvar returnValueType = Java.type(\"java.lang.Boolean\");\nvar returnValue = new returnValueType(true);\n\nx=x+1\nvar returnValueType = Java.type(\"java.lang.Boolean\");\nvar returnValue = new returnValueType(true);\n\nx=x+1"
-                  }
-               }
-            } ]
-         }
-      },
-      "events" : {
-         "key" : {
-            "name" : "MacroFileTest_PolicyModel_Events",
-            "version" : "0.0.1"
-         },
-         "eventMap" : {
-            "entry" : [ ]
-         }
-      },
-      "albums" : {
-         "key" : {
-            "name" : "MacroFileTest_PolicyModel_Albums",
-            "version" : "0.0.1"
-         },
-         "albums" : {
-            "entry" : [ ]
-         }
-      },
-      "schemas" : {
-         "key" : {
-            "name" : "MacroFileTest_PolicyModel_Schemas",
-            "version" : "0.0.1"
-         },
-         "schemas" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "MacroFile_type1",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "MacroFile_type1",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.String"
-               }
-            }, {
-               "key" : {
-                  "name" : "MacroFile_type2",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "MacroFile_type2",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.String"
-               }
-            }, {
-               "key" : {
-                  "name" : "MacroFile_type3",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "MacroFile_type3",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.String"
-               }
-            }, {
-               "key" : {
-                  "name" : "MacroFile_type4",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "MacroFile_type4",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.String"
-               }
-            }, {
-               "key" : {
-                  "name" : "MacroFile_type5",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "MacroFile_type5",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.String"
-               }
-            } ]
-         }
-      }
-   }
+  "key": {
+    "name": "MacroFileTest_PolicyModel",
+    "version": "0.0.1"
+  },
+  "keyInformation": {
+    "key": {
+      "name": "MacroFileTest_PolicyModel_KeyInfo",
+      "version": "0.0.1"
+    },
+    "keyInfoMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "MacroFileTest_PolicyModel",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "MacroFileTest_PolicyModel",
+              "version": "0.0.1"
+            },
+            "UUID": "ac575ca5-e2f5-3958-8873-f6068cd04440",
+            "description": "Generated description for concept referred to by key \"MacroFileTest_PolicyModel:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "MacroFileTest_PolicyModel_Albums",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "MacroFileTest_PolicyModel_Albums",
+              "version": "0.0.1"
+            },
+            "UUID": "a8864eb8-4f01-3b39-aaf8-2170311132e1",
+            "description": "Generated description for concept referred to by key \"MacroFileTest_PolicyModel_Albums:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "MacroFileTest_PolicyModel_Events",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "MacroFileTest_PolicyModel_Events",
+              "version": "0.0.1"
+            },
+            "UUID": "bd50051c-0761-38b0-940f-27d9d505c263",
+            "description": "Generated description for concept referred to by key \"MacroFileTest_PolicyModel_Events:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "MacroFileTest_PolicyModel_KeyInfo",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "MacroFileTest_PolicyModel_KeyInfo",
+              "version": "0.0.1"
+            },
+            "UUID": "81634b5c-d5d8-3c15-a80b-d9a12bd87760",
+            "description": "Generated description for concept referred to by key \"MacroFileTest_PolicyModel_KeyInfo:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "MacroFileTest_PolicyModel_Policies",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "MacroFileTest_PolicyModel_Policies",
+              "version": "0.0.1"
+            },
+            "UUID": "810268e3-6a5a-33c9-b24e-4206646cdace",
+            "description": "Generated description for concept referred to by key \"MacroFileTest_PolicyModel_Policies:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "MacroFileTest_PolicyModel_Schemas",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "MacroFileTest_PolicyModel_Schemas",
+              "version": "0.0.1"
+            },
+            "UUID": "f8f180ee-551d-30b7-850b-d707318cf25e",
+            "description": "Generated description for concept referred to by key \"MacroFileTest_PolicyModel_Schemas:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "MacroFileTest_PolicyModel_Tasks",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "MacroFileTest_PolicyModel_Tasks",
+              "version": "0.0.1"
+            },
+            "UUID": "ef8c00a8-3736-3e6d-be31-c07116ba67e4",
+            "description": "Generated description for concept referred to by key \"MacroFileTest_PolicyModel_Tasks:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "MacroFile_type1",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "MacroFile_type1",
+              "version": "0.0.1"
+            },
+            "UUID": "a2841e1e-e6da-3124-ab58-be301457f49c",
+            "description": "Generated description for concept referred to by key \"MacroFile_type1:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "MacroFile_type2",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "MacroFile_type2",
+              "version": "0.0.1"
+            },
+            "UUID": "d4b061be-9c01-3983-951b-8e28bb838a7c",
+            "description": "Generated description for concept referred to by key \"MacroFile_type2:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "MacroFile_type3",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "MacroFile_type3",
+              "version": "0.0.1"
+            },
+            "UUID": "5da3c65c-bc46-3d84-a080-875b67e9a546",
+            "description": "Generated description for concept referred to by key \"MacroFile_type3:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "MacroFile_type4",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "MacroFile_type4",
+              "version": "0.0.1"
+            },
+            "UUID": "19d7bb93-22af-34e3-a8ff-e715fdda265e",
+            "description": "Generated description for concept referred to by key \"MacroFile_type4:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "MacroFile_type5",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "MacroFile_type5",
+              "version": "0.0.1"
+            },
+            "UUID": "15039345-454e-3c11-9524-5e5d149394dc",
+            "description": "Generated description for concept referred to by key \"MacroFile_type5:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "dummyTask1",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "dummyTask1",
+              "version": "0.0.1"
+            },
+            "UUID": "41045520-f99e-3f78-8ac8-ebba16b94a98",
+            "description": "Generated description for concept referred to by key \"dummyTask1:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "dummyTask2",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "dummyTask2",
+              "version": "0.0.1"
+            },
+            "UUID": "e366e97f-b769-394a-b388-4ad65e105ccb",
+            "description": "Generated description for concept referred to by key \"dummyTask2:0.0.1\""
+          }
+        }
+      ]
+    }
+  },
+  "policies": {
+    "key": {
+      "name": "MacroFileTest_PolicyModel_Policies",
+      "version": "0.0.1"
+    },
+    "policyMap": {
+      "entry": []
+    }
+  },
+  "tasks": {
+    "key": {
+      "name": "MacroFileTest_PolicyModel_Tasks",
+      "version": "0.0.1"
+    },
+    "taskMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "dummyTask1",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "dummyTask1",
+              "version": "0.0.1"
+            },
+            "inputFields": {
+              "entry": []
+            },
+            "outputFields": {
+              "entry": []
+            },
+            "taskParameters": {
+              "entry": []
+            },
+            "contextAlbumReference": [],
+            "taskLogic": {
+              "key": "TaskLogic",
+              "logicFlavour": "JAVASCRIPT",
+              "logic": "var returnValueType = Java.type(\"java.lang.Boolean\");\nvar returnValue = new returnValueType(true);"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "dummyTask2",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "dummyTask2",
+              "version": "0.0.1"
+            },
+            "inputFields": {
+              "entry": []
+            },
+            "outputFields": {
+              "entry": []
+            },
+            "taskParameters": {
+              "entry": []
+            },
+            "contextAlbumReference": [],
+            "taskLogic": {
+              "key": "TaskLogic",
+              "logicFlavour": "JAVASCRIPT",
+              "logic": "x=x+1\nvar returnValueType = Java.type(\"java.lang.Boolean\");\nvar returnValue = new returnValueType(true);\n\nx=x+1\nvar returnValueType = Java.type(\"java.lang.Boolean\");\nvar returnValue = new returnValueType(true);\n\nx=x+1"
+            }
+          }
+        }
+      ]
+    }
+  },
+  "events": {
+    "key": {
+      "name": "MacroFileTest_PolicyModel_Events",
+      "version": "0.0.1"
+    },
+    "eventMap": {
+      "entry": []
+    }
+  },
+  "albums": {
+    "key": {
+      "name": "MacroFileTest_PolicyModel_Albums",
+      "version": "0.0.1"
+    },
+    "albums": {
+      "entry": []
+    }
+  },
+  "schemas": {
+    "key": {
+      "name": "MacroFileTest_PolicyModel_Schemas",
+      "version": "0.0.1"
+    },
+    "schemas": {
+      "entry": [
+        {
+          "key": {
+            "name": "MacroFile_type1",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "MacroFile_type1",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.String"
+          }
+        },
+        {
+          "key": {
+            "name": "MacroFile_type2",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "MacroFile_type2",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.String"
+          }
+        },
+        {
+          "key": {
+            "name": "MacroFile_type3",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "MacroFile_type3",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.String"
+          }
+        },
+        {
+          "key": {
+            "name": "MacroFile_type4",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "MacroFile_type4",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.String"
+          }
+        },
+        {
+          "key": {
+            "name": "MacroFile_type5",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "MacroFile_type5",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.String"
+          }
+        }
+      ]
+    }
+  }
 }
index 45a7ac3..b8db778 100644 (file)
 {
-   "apexPolicyModel" : {
-      "key" : {
-         "name" : "LogicTestPolicy",
-         "version" : "0.0.1"
-      },
-      "keyInformation" : {
-         "key" : {
-            "name" : "LogicTestPolicy_KeyInfo",
-            "version" : "0.0.1"
-         },
-         "keyInfoMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "LogicTestPolicy",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LogicTestPolicy",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "80b09a0f-1106-364a-9516-ba59fff987af",
-                  "description" : "Generated description for concept referred to by key \"LogicTestPolicy:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "LogicTestPolicy_Albums",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LogicTestPolicy_Albums",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0f52b1b6-da8c-3cb4-9c02-3c484a8c1db9",
-                  "description" : "Generated description for concept referred to by key \"LogicTestPolicy_Albums:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "LogicTestPolicy_Events",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LogicTestPolicy_Events",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "4b9e1be6-375d-3731-9021-876df01fd619",
-                  "description" : "Generated description for concept referred to by key \"LogicTestPolicy_Events:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "LogicTestPolicy_KeyInfo",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LogicTestPolicy_KeyInfo",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "34378780-583d-3588-8206-e57f47645cc7",
-                  "description" : "Generated description for concept referred to by key \"LogicTestPolicy_KeyInfo:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "LogicTestPolicy_Policies",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LogicTestPolicy_Policies",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "d241ce4b-8fcb-3400-b6b5-7e56bcb79ce2",
-                  "description" : "Generated description for concept referred to by key \"LogicTestPolicy_Policies:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "LogicTestPolicy_Schemas",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LogicTestPolicy_Schemas",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "a86c8519-c581-3ef2-9896-7574e5bdf4e3",
-                  "description" : "Generated description for concept referred to by key \"LogicTestPolicy_Schemas:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "LogicTestPolicy_Tasks",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LogicTestPolicy_Tasks",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "c0006fa6-7b32-3fde-9217-ee26905d62c0",
-                  "description" : "Generated description for concept referred to by key \"LogicTestPolicy_Tasks:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "LogicTestTask0",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LogicTestTask0",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "17709a99-bbda-3805-a953-581cb9372cff",
-                  "description" : "Generated description for concept referred to by key \"LogicTestTask0:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "LogicTestTask1",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LogicTestTask1",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0af914cd-3151-3c1c-a59e-106d12623947",
-                  "description" : "Generated description for concept referred to by key \"LogicTestTask1:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "LogicTestTask2",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LogicTestTask2",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "fbc5002e-ab8e-3953-88d4-af62c0e1d850",
-                  "description" : "Generated description for concept referred to by key \"LogicTestTask2:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "LogicTestTaskA",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LogicTestTaskA",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "960e874e-cf37-3c2f-982f-c6afcfd3e832",
-                  "description" : "Generated description for concept referred to by key \"LogicTestTaskA:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "LogicTestTaskB",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LogicTestTaskB",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "f4772b19-cb7e-3a8d-98ca-6963d2bf688f",
-                  "description" : "Generated description for concept referred to by key \"LogicTestTaskB:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "SchemaLogicTest",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SchemaLogicTest",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "4f9bb262-ccbf-3b2d-9655-c16ba2d37e95",
-                  "description" : "Generated description for concept referred to by key \"SchemaLogicTest:0.0.1\""
-               }
-            } ]
-         }
-      },
-      "policies" : {
-         "key" : {
-            "name" : "LogicTestPolicy_Policies",
-            "version" : "0.0.1"
-         },
-         "policyMap" : {
-            "entry" : [ ]
-         }
-      },
-      "tasks" : {
-         "key" : {
-            "name" : "LogicTestPolicy_Tasks",
-            "version" : "0.0.1"
-         },
-         "taskMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "LogicTestTask0",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LogicTestTask0",
-                     "version" : "0.0.1"
-                  },
-                  "inputFields" : {
-                     "entry" : [ ]
-                  },
-                  "outputFields" : {
-                     "entry" : [ ]
-                  },
-                  "taskParameters" : {
-                     "entry" : [ ]
-                  },
-                  "contextAlbumReference" : [ ],
-                  "taskLogic" : {
-                     "key" : "TaskLogic",
-                     "logicFlavour" : "MVEL",
-                     "logic" : "{\n\timport java.util.Date;\n\tlogger.debug(\"Running ConsistencyCheck\");\n\n\toutFields.putAll(inFields);\n\toutFields[\"Attribute1PolicyValue\"] = \"POLICY_DEFINED\";\n\tlogger.debug(\"Finished Running ConsistencyCheck\");\n\n\treturn true;\n}"
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "LogicTestTask1",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LogicTestTask1",
-                     "version" : "0.0.1"
-                  },
-                  "inputFields" : {
-                     "entry" : [ ]
-                  },
-                  "outputFields" : {
-                     "entry" : [ ]
-                  },
-                  "taskParameters" : {
-                     "entry" : [ ]
-                  },
-                  "contextAlbumReference" : [ ],
-                  "taskLogic" : {
-                     "key" : "TaskLogic",
-                     "logicFlavour" : "MVEL",
-                     "logic" : "import java.util.Date;"
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "LogicTestTask2",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LogicTestTask2",
-                     "version" : "0.0.1"
-                  },
-                  "inputFields" : {
-                     "entry" : [ ]
-                  },
-                  "outputFields" : {
-                     "entry" : [ ]
-                  },
-                  "taskParameters" : {
-                     "entry" : [ ]
-                  },
-                  "contextAlbumReference" : [ ],
-                  "taskLogic" : {
-                     "key" : "TaskLogic",
-                     "logicFlavour" : "MVEL",
-                     "logic" : "{\n\tsystem.out.println(\"{\");\n}"
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "LogicTestTaskA",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LogicTestTaskA",
-                     "version" : "0.0.1"
-                  },
-                  "inputFields" : {
-                     "entry" : [ ]
-                  },
-                  "outputFields" : {
-                     "entry" : [ ]
-                  },
-                  "taskParameters" : {
-                     "entry" : [ ]
-                  },
-                  "contextAlbumReference" : [ ],
-                  "taskLogic" : {
-                     "key" : "NULL",
-                     "logicFlavour" : "UNDEFINED",
-                     "logic" : ""
-                  }
-               }
-            }, {
-               "key" : {
-                  "name" : "LogicTestTaskB",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "LogicTestTaskB",
-                     "version" : "0.0.1"
-                  },
-                  "inputFields" : {
-                     "entry" : [ ]
-                  },
-                  "outputFields" : {
-                     "entry" : [ ]
-                  },
-                  "taskParameters" : {
-                     "entry" : [ ]
-                  },
-                  "contextAlbumReference" : [ ],
-                  "taskLogic" : {
-                     "key" : "NULL",
-                     "logicFlavour" : "UNDEFINED",
-                     "logic" : ""
-                  }
-               }
-            } ]
-         }
-      },
-      "events" : {
-         "key" : {
-            "name" : "LogicTestPolicy_Events",
-            "version" : "0.0.1"
-         },
-         "eventMap" : {
-            "entry" : [ ]
-         }
-      },
-      "albums" : {
-         "key" : {
-            "name" : "LogicTestPolicy_Albums",
-            "version" : "0.0.1"
-         },
-         "albums" : {
-            "entry" : [ ]
-         }
-      },
-      "schemas" : {
-         "key" : {
-            "name" : "LogicTestPolicy_Schemas",
-            "version" : "0.0.1"
-         },
-         "schemas" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "SchemaLogicTest",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SchemaLogicTest",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Exotic",
-                  "schemaDefinition" : "{\nasdmasdm'asda'sdasd\n}"
-               }
-            } ]
-         }
-      }
-   }
+  "policies": {
+    "key": {
+      "name": "LogicTestPolicy_Policies",
+      "version": "0.0.1"
+    },
+    "policyMap": {
+      "entry": []
+    }
+  },
+  "tasks": {
+    "key": {
+      "name": "LogicTestPolicy_Tasks",
+      "version": "0.0.1"
+    },
+    "taskMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "LogicTestTask0",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LogicTestTask0",
+              "version": "0.0.1"
+            },
+            "taskParameters": {
+              "entry": []
+            },
+            "contextAlbumReference": [],
+            "taskLogic": {
+              "key": {
+                "parentKeyName": "LogicTestTask0",
+                "parentKeyVersion": "0.0.1",
+                "parentLocalName": "NULL",
+                "localName": "TaskLogic"
+              },
+              "logicFlavour": "MVEL",
+              "logic": "{\n\timport java.util.Date;\n\tlogger.debug(\"Running ConsistencyCheck\");\n\n\toutFields.putAll(inFields);\n\toutFields[\"Attribute1PolicyValue\"] \u003d \"POLICY_DEFINED\";\n\tlogger.debug(\"Finished Running ConsistencyCheck\");\n\n\treturn true;\n}"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "LogicTestTask1",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LogicTestTask1",
+              "version": "0.0.1"
+            },
+            "taskParameters": {
+              "entry": []
+            },
+            "contextAlbumReference": [],
+            "taskLogic": {
+              "key": {
+                "parentKeyName": "LogicTestTask1",
+                "parentKeyVersion": "0.0.1",
+                "parentLocalName": "NULL",
+                "localName": "TaskLogic"
+              },
+              "logicFlavour": "MVEL",
+              "logic": "import java.util.Date;"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "LogicTestTask2",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LogicTestTask2",
+              "version": "0.0.1"
+            },
+            "taskParameters": {
+              "entry": []
+            },
+            "contextAlbumReference": [],
+            "taskLogic": {
+              "key": {
+                "parentKeyName": "LogicTestTask2",
+                "parentKeyVersion": "0.0.1",
+                "parentLocalName": "NULL",
+                "localName": "TaskLogic"
+              },
+              "logicFlavour": "MVEL",
+              "logic": "{\n\tsystem.out.println(\"{\");\n}"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "LogicTestTaskA",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LogicTestTaskA",
+              "version": "0.0.1"
+            },
+            "taskParameters": {
+              "entry": []
+            },
+            "contextAlbumReference": [],
+            "taskLogic": {
+              "key": {
+                "parentKeyName": "LogicTestTaskA",
+                "parentKeyVersion": "0.0.1",
+                "parentLocalName": "NULL",
+                "localName": "NULL"
+              },
+              "logicFlavour": "UNDEFINED",
+              "logic": ""
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "LogicTestTaskB",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LogicTestTaskB",
+              "version": "0.0.1"
+            },
+            "taskParameters": {
+              "entry": []
+            },
+            "contextAlbumReference": [],
+            "taskLogic": {
+              "key": {
+                "parentKeyName": "LogicTestTaskB",
+                "parentKeyVersion": "0.0.1",
+                "parentLocalName": "NULL",
+                "localName": "NULL"
+              },
+              "logicFlavour": "UNDEFINED",
+              "logic": ""
+            }
+          }
+        }
+      ]
+    }
+  },
+  "events": {
+    "key": {
+      "name": "LogicTestPolicy_Events",
+      "version": "0.0.1"
+    },
+    "eventMap": {
+      "entry": []
+    }
+  },
+  "albums": {
+    "key": {
+      "name": "LogicTestPolicy_Albums",
+      "version": "0.0.1"
+    },
+    "albums": {
+      "entry": []
+    }
+  },
+  "schemas": {
+    "key": {
+      "name": "LogicTestPolicy_Schemas",
+      "version": "0.0.1"
+    },
+    "schemas": {
+      "entry": [
+        {
+          "key": {
+            "name": "SchemaLogicTest",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SchemaLogicTest",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Exotic",
+            "schemaDefinition": "{\nasdmasdm\u0027asda\u0027sdasd\n}"
+          }
+        }
+      ]
+    }
+  },
+  "key": {
+    "name": "LogicTestPolicy",
+    "version": "0.0.1"
+  },
+  "keyInformation": {
+    "key": {
+      "name": "LogicTestPolicy_KeyInfo",
+      "version": "0.0.1"
+    },
+    "keyInfoMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "LogicTestPolicy",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LogicTestPolicy",
+              "version": "0.0.1"
+            },
+            "UUID": "80b09a0f-1106-364a-9516-ba59fff987af",
+            "description": "Generated description for concept referred to by key \"LogicTestPolicy:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "LogicTestPolicy_Albums",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LogicTestPolicy_Albums",
+              "version": "0.0.1"
+            },
+            "UUID": "0f52b1b6-da8c-3cb4-9c02-3c484a8c1db9",
+            "description": "Generated description for concept referred to by key \"LogicTestPolicy_Albums:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "LogicTestPolicy_Events",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LogicTestPolicy_Events",
+              "version": "0.0.1"
+            },
+            "UUID": "4b9e1be6-375d-3731-9021-876df01fd619",
+            "description": "Generated description for concept referred to by key \"LogicTestPolicy_Events:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "LogicTestPolicy_KeyInfo",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LogicTestPolicy_KeyInfo",
+              "version": "0.0.1"
+            },
+            "UUID": "34378780-583d-3588-8206-e57f47645cc7",
+            "description": "Generated description for concept referred to by key \"LogicTestPolicy_KeyInfo:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "LogicTestPolicy_Policies",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LogicTestPolicy_Policies",
+              "version": "0.0.1"
+            },
+            "UUID": "d241ce4b-8fcb-3400-b6b5-7e56bcb79ce2",
+            "description": "Generated description for concept referred to by key \"LogicTestPolicy_Policies:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "LogicTestPolicy_Schemas",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LogicTestPolicy_Schemas",
+              "version": "0.0.1"
+            },
+            "UUID": "a86c8519-c581-3ef2-9896-7574e5bdf4e3",
+            "description": "Generated description for concept referred to by key \"LogicTestPolicy_Schemas:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "LogicTestPolicy_Tasks",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LogicTestPolicy_Tasks",
+              "version": "0.0.1"
+            },
+            "UUID": "c0006fa6-7b32-3fde-9217-ee26905d62c0",
+            "description": "Generated description for concept referred to by key \"LogicTestPolicy_Tasks:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "LogicTestTask0",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LogicTestTask0",
+              "version": "0.0.1"
+            },
+            "UUID": "17709a99-bbda-3805-a953-581cb9372cff",
+            "description": "Generated description for concept referred to by key \"LogicTestTask0:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "LogicTestTask1",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LogicTestTask1",
+              "version": "0.0.1"
+            },
+            "UUID": "0af914cd-3151-3c1c-a59e-106d12623947",
+            "description": "Generated description for concept referred to by key \"LogicTestTask1:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "LogicTestTask2",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LogicTestTask2",
+              "version": "0.0.1"
+            },
+            "UUID": "fbc5002e-ab8e-3953-88d4-af62c0e1d850",
+            "description": "Generated description for concept referred to by key \"LogicTestTask2:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "LogicTestTaskA",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LogicTestTaskA",
+              "version": "0.0.1"
+            },
+            "UUID": "960e874e-cf37-3c2f-982f-c6afcfd3e832",
+            "description": "Generated description for concept referred to by key \"LogicTestTaskA:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "LogicTestTaskB",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "LogicTestTaskB",
+              "version": "0.0.1"
+            },
+            "UUID": "f4772b19-cb7e-3a8d-98ca-6963d2bf688f",
+            "description": "Generated description for concept referred to by key \"LogicTestTaskB:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "SchemaLogicTest",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SchemaLogicTest",
+              "version": "0.0.1"
+            },
+            "UUID": "4f9bb262-ccbf-3b2d-9655-c16ba2d37e95",
+            "description": "Generated description for concept referred to by key \"SchemaLogicTest:0.0.1\""
+          }
+        }
+      ]
+    }
+  }
 }
@@ -1 +1 @@
-{"tosca_definitions_version":"tosca_simple_yaml_1_1_0","topology_template":{"policies":[{"native.sampledomain":{"type":"onap.policies.native.Apex","type_version":"1.0.0","name":"native.sampledomain","version":"1.0.0","properties":{"engineServiceParameters":{"name":"MyFirstPolicyApexEngine","version":"0.0.1","id":101,"instanceCount":4,"deploymentPort":12345,"engineParameters":{"executorParameters":{"MVEL":{"parameterClassName":"org.onap.policy.apex.plugins.executor.mvel.MvelExecutorParameters"},"JAVASCRIPT":{"parameterClassName":"org.onap.policy.apex.plugins.executor.javascript.JavascriptExecutorParameters"}}},"policy_type_impl":{"apexPolicyModel":{"key":{"name":"MyFirstPolicyModel","version":"0.0.1"},"keyInformation":{"key":{"name":"MyFirstPolicyModel_KeyInfo","version":"0.0.1"},"keyInfoMap":{"entry":[{"key":{"name":"MorningBoozeCheck","version":"0.0.1"},"value":{"key":{"name":"MorningBoozeCheck","version":"0.0.1"},"UUID":"3351b0f4-cf06-4fa2-8823-edf67bd30223","description":"This task checks if the sales request is for an item that contains alcohol. \nIf the local time is between 00:00:00 and 11:30:00 then the sale is not authorised. Otherwise the sale is authorised. \nIn this implementation we assume that all items with item_ID values between 1000 and 2000 contain alcohol :-)"}},{"key":{"name":"MyFirstPolicy","version":"0.0.1"},"value":{"key":{"name":"MyFirstPolicy","version":"0.0.1"},"UUID":"6c5e410f-489a-46ff-964e-982ce6e8b6d0","description":"This is my first Apex policy. It checks if a sale should be authorised or not."}},{"key":{"name":"MyFirstPolicyModel","version":"0.0.1"},"value":{"key":{"name":"MyFirstPolicyModel","version":"0.0.1"},"UUID":"540226fb-55ee-4f0e-a444-983a0494818e","description":"This is my first Apex Policy Model."}},{"key":{"name":"MyFirstPolicyModel_Events","version":"0.0.1"},"value":{"key":{"name":"MyFirstPolicyModel_Events","version":"0.0.1"},"UUID":"ef281318-5ac9-3ef0-8db3-8f9c4e4a81e2","description":"Generated description for concept referred to by key \"MyFirstPolicyModel_Events:0.0.1\""}},{"key":{"name":"MyFirstPolicyModel_KeyInfo","version":"0.0.1"},"value":{"key":{"name":"MyFirstPolicyModel_KeyInfo","version":"0.0.1"},"UUID":"d9248c6f-7c00-38df-8251-611463ba4065","description":"Generated description for concept referred to by key \"MyFirstPolicyModel_KeyInfo:0.0.1\""}},{"key":{"name":"MyFirstPolicyModel_Policies","version":"0.0.1"},"value":{"key":{"name":"MyFirstPolicyModel_Policies","version":"0.0.1"},"UUID":"77c01a6b-510c-3aa9-b640-b4db356aa03b","description":"Generated description for concept referred to by key \"MyFirstPolicyModel_Policies:0.0.1\""}},{"key":{"name":"MyFirstPolicyModel_Schemas","version":"0.0.1"},"value":{"key":{"name":"MyFirstPolicyModel_Schemas","version":"0.0.1"},"UUID":"d0cc3aa0-ea69-3a43-80ff-a0dbb0ebd885","description":"Generated description for concept referred to by key \"MyFirstPolicyModel_Schemas:0.0.1\""}},{"key":{"name":"MyFirstPolicyModel_Tasks","version":"0.0.1"},"value":{"key":{"name":"MyFirstPolicyModel_Tasks","version":"0.0.1"},"UUID":"b02a7e02-2cd0-39e6-b3cb-946fa83a8f08","description":"Generated description for concept referred to by key \"MyFirstPolicyModel_Tasks:0.0.1\""}},{"key":{"name":"SALE_AUTH","version":"0.0.1"},"value":{"key":{"name":"SALE_AUTH","version":"0.0.1"},"UUID":"c4500941-3f98-4080-a9cc-5b9753ed050b","description":"An event emitted by the Policy to indicate whether the sale of an item has been authorised"}},{"key":{"name":"SALE_INPUT","version":"0.0.1"},"value":{"key":{"name":"SALE_INPUT","version":"0.0.1"},"UUID":"4f04aa98-e917-4f4a-882a-c75ba5a99374","description":"An event raised by the PoS system each time an item is scanned for purchase"}},{"key":{"name":"assistant_ID_type","version":"0.0.1"},"value":{"key":{"name":"assistant_ID_type","version":"0.0.1"},"UUID":"36df4c71-9616-4206-8b53-976a5cd4bd87","description":"A type for 'assistant_ID' values"}},{"key":{"name":"authorised_type","version":"0.0.1"},"value":{"key":{"name":"authorised_type","version":"0.0.1"},"UUID":"d48b619e-d00d-4008-b884-02d76ea4350b","description":"A type for 'authorised' values"}},{"key":{"name":"branch_ID_type","version":"0.0.1"},"value":{"key":{"name":"branch_ID_type","version":"0.0.1"},"UUID":"6468845f-4122-4128-8e49-0f52c26078b5","description":"A type for 'branch_ID' values"}},{"key":{"name":"item_ID_type","version":"0.0.1"},"value":{"key":{"name":"item_ID_type","version":"0.0.1"},"UUID":"4f227ff1-aee0-453a-b6b6-9a4b2e0da932","description":"A type for 'item_ID' values"}},{"key":{"name":"message_type","version":"0.0.1"},"value":{"key":{"name":"message_type","version":"0.0.1"},"UUID":"ad1431bb-3155-4e73-b5a3-b89bee498749","description":"A type for 'message' values"}},{"key":{"name":"notes_type","version":"0.0.1"},"value":{"key":{"name":"notes_type","version":"0.0.1"},"UUID":"eecfde90-896c-4343-8f9c-2603ced94e2d","description":"A type for 'notes' values"}},{"key":{"name":"price_type","version":"0.0.1"},"value":{"key":{"name":"price_type","version":"0.0.1"},"UUID":"52c2fc45-fd8c-463c-bd6f-d91b0554aea7","description":"A type for 'amount'/'price' values"}},{"key":{"name":"quantity_type","version":"0.0.1"},"value":{"key":{"name":"quantity_type","version":"0.0.1"},"UUID":"ac3d9842-80af-4a98-951c-bd79a431c613","description":"A type for 'quantity' values"}},{"key":{"name":"sale_ID_type","version":"0.0.1"},"value":{"key":{"name":"sale_ID_type","version":"0.0.1"},"UUID":"cca47d74-7754-4a61-b163-ca31f66b157b","description":"A type for 'sale_ID' values"}},{"key":{"name":"timestamp_type","version":"0.0.1"},"value":{"key":{"name":"timestamp_type","version":"0.0.1"},"UUID":"fd594e88-411d-4a94-b2be-697b3a0d7adf","description":"A type for 'time' values"}}]}},"policies":{"key":{"name":"MyFirstPolicyModel_Policies","version":"0.0.1"},"policyMap":{"entry":[{"key":{"name":"MyFirstPolicy","version":"0.0.1"},"value":{"policyKey":{"name":"MyFirstPolicy","version":"0.0.1"},"template":"FREEFORM","state":{"entry":[{"key":"BoozeAuthDecide","value":{"stateKey":{"parentKeyName":"MyFirstPolicy","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"BoozeAuthDecide"},"trigger":{"name":"SALE_INPUT","version":"0.0.1"},"stateOutputs":{"entry":[{"key":"MorningBoozeCheck_Output_Direct","value":{"key":{"parentKeyName":"MyFirstPolicy","parentKeyVersion":"0.0.1","parentLocalName":"BoozeAuthDecide","localName":"MorningBoozeCheck_Output_Direct"},"outgoingEvent":{"name":"SALE_AUTH","version":"0.0.1"},"outgoingEventReference":[{"name":"SALE_AUTH","version":"0.0.1"}],"nextState":{"parentKeyName":"NULL","parentKeyVersion":"0.0.0","parentLocalName":"NULL","localName":"NULL"}}}]},"contextAlbumReference":[],"taskSelectionLogic":{"key":"NULL","logicFlavour":"UNDEFINED","logic":""},"stateFinalizerLogicMap":{"entry":[]},"defaultTask":{"name":"MorningBoozeCheck","version":"0.0.1"},"taskReferences":{"entry":[{"key":{"name":"MorningBoozeCheck","version":"0.0.1"},"value":{"key":{"parentKeyName":"MyFirstPolicy","parentKeyVersion":"0.0.1","parentLocalName":"BoozeAuthDecide","localName":"MorningBoozeCheck"},"outputType":"DIRECT","output":{"parentKeyName":"MyFirstPolicy","parentKeyVersion":"0.0.1","parentLocalName":"BoozeAuthDecide","localName":"MorningBoozeCheck_Output_Direct"}}}]}}}]},"firstState":"BoozeAuthDecide"}}]}},"tasks":{"key":{"name":"MyFirstPolicyModel_Tasks","version":"0.0.1"},"taskMap":{"entry":[{"key":{"name":"MorningBoozeCheck","version":"0.0.1"},"value":{"key":{"name":"MorningBoozeCheck","version":"0.0.1"},"inputEvent":{"key":{"name":"SALE_INPUT","version":"0.0.1"},"nameSpace":"com.hyperm","source":"POS","target":"APEX","parameter":{"entry":[{"key":"amount","value":{"key":"amount","fieldSchemaKey":{"name":"price_type","version":"0.0.1"},"optional":false}},{"key":"assistant_ID","value":{"key":"assistant_ID","fieldSchemaKey":{"name":"assistant_ID_type","version":"0.0.1"},"optional":false}},{"key":"branch_ID","value":{"key":"branch_ID","fieldSchemaKey":{"name":"branch_ID_type","version":"0.0.1"},"optional":false}},{"key":"item_ID","value":{"key":"item_ID","fieldSchemaKey":{"name":"item_ID_type","version":"0.0.1"},"optional":false}},{"key":"notes","value":{"key":"notes","fieldSchemaKey":{"name":"notes_type","version":"0.0.1"},"optional":true}},{"key":"quantity","value":{"key":"quantity","fieldSchemaKey":{"name":"quantity_type","version":"0.0.1"},"optional":false}},{"key":"sale_ID","value":{"key":"sale_ID","fieldSchemaKey":{"name":"sale_ID_type","version":"0.0.1"},"optional":false}},{"key":"time","value":{"key":"time","fieldSchemaKey":{"name":"timestamp_type","version":"0.0.1"},"optional":false}}]},"toscaPolicyState":""},"outputEvents":{"entry":[{"key":"SALE_AUTH","value":{"key":{"name":"SALE_AUTH","version":"0.0.1"},"nameSpace":"com.hyperm","source":"APEX","target":"POS","parameter":{"entry":[{"key":"amount","value":{"key":"amount","fieldSchemaKey":{"name":"price_type","version":"0.0.1"},"optional":false}},{"key":"assistant_ID","value":{"key":"assistant_ID","fieldSchemaKey":{"name":"assistant_ID_type","version":"0.0.1"},"optional":false}},{"key":"authorised","value":{"key":"authorised","fieldSchemaKey":{"name":"authorised_type","version":"0.0.1"},"optional":false}},{"key":"branch_ID","value":{"key":"branch_ID","fieldSchemaKey":{"name":"branch_ID_type","version":"0.0.1"},"optional":false}},{"key":"item_ID","value":{"key":"item_ID","fieldSchemaKey":{"name":"item_ID_type","version":"0.0.1"},"optional":false}},{"key":"message","value":{"key":"message","fieldSchemaKey":{"name":"message_type","version":"0.0.1"},"optional":true}},{"key":"notes","value":{"key":"notes","fieldSchemaKey":{"name":"notes_type","version":"0.0.1"},"optional":true}},{"key":"quantity","value":{"key":"quantity","fieldSchemaKey":{"name":"quantity_type","version":"0.0.1"},"optional":false}},{"key":"sale_ID","value":{"key":"sale_ID","fieldSchemaKey":{"name":"sale_ID_type","version":"0.0.1"},"optional":false}},{"key":"time","value":{"key":"time","fieldSchemaKey":{"name":"timestamp_type","version":"0.0.1"},"optional":false}}]},"toscaPolicyState":""}}]},"taskParameters":{"entry":[]},"contextAlbumReference":[],"taskLogic":{"key":"TaskLogic","logicFlavour":"MVEL","logic":"/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n *  Modifications Copyright (C) 2019 Nordix Foundation.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *      http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\nimport java.util.Date;\nimport java.util.Calendar;\nimport java.util.TimeZone;\nimport java.text.SimpleDateFormat;\n\nlogger.info(\"Task Execution: '\"+subject.id+\"'. Input Fields: '\"+inFields+\"'\");\n\noutFields.put(\"amount\"      , inFields.get(\"amount\"));\noutFields.put(\"assistant_ID\", inFields.get(\"assistant_ID\"));\noutFields.put(\"notes\"       , inFields.get(\"notes\"));\noutFields.put(\"quantity\"    , inFields.get(\"quantity\"));\noutFields.put(\"branch_ID\"   , inFields.get(\"branch_ID\"));\noutFields.put(\"item_ID\"     , inFields.get(\"item_ID\"));\noutFields.put(\"time\"        , inFields.get(\"time\"));\noutFields.put(\"sale_ID\"     , inFields.get(\"sale_ID\"));\n\nitem_id = inFields.get(\"item_ID\");\n\n//The events used later to test this task use GMT timezone!\ngmt = TimeZone.getTimeZone(\"GMT\");\ntimenow = Calendar.getInstance(gmt);\ndf = new SimpleDateFormat(\"HH:mm:ss z\");\ndf.setTimeZone(gmt);\ntimenow.setTimeInMillis(inFields.get(\"time\"));\n\nmidnight = timenow.clone();\nmidnight.set(\n    timenow.get(Calendar.YEAR),timenow.get(Calendar.MONTH),\n    timenow.get(Calendar.DATE),0,0,0);\neleven30 = timenow.clone();\neleven30.set(\n    timenow.get(Calendar.YEAR),timenow.get(Calendar.MONTH),\n    timenow.get(Calendar.DATE),11,30,0);\n\nitemisalcohol = false;\nif(item_id != null && item_id >=1000 && item_id < 2000)\n    itemisalcohol = true;\n\nif( itemisalcohol\n    && timenow.after(midnight) && timenow.before(eleven30)){\n  outFields.put(\"authorised\", false);\n  outFields.put(\"message\", \"Sale not authorised by policy task \"+subject.taskName+\n    \" for time \"+df.format(timenow.getTime())+\n    \". Alcohol can not be sold between \"+df.format(midnight.getTime())+\n    \" and \"+df.format(eleven30.getTime()));\n  return true;\n}\nelse{\n  outFields.put(\"authorised\", true);\n  outFields.put(\"message\", \"Sale authorised by policy task \"+subject.taskName+\n    \" for time \"+df.format(timenow.getTime()));\n  return true;\n}\n\n/*\nThis task checks if a sale request is for an item that is an alcoholic drink.\nIf the local time is between 00:00:00 GMT and 11:30:00 GMT then the sale is not\nauthorised. Otherwise the sale is authorised.\nIn this implementation we assume that items with item_ID value between 1000 and\n2000 are all alcoholic drinks :-)\n*/"}}}]}},"events":{"key":{"name":"MyFirstPolicyModel_Events","version":"0.0.1"},"eventMap":{"entry":[{"key":{"name":"SALE_AUTH","version":"0.0.1"},"value":{"key":{"name":"SALE_AUTH","version":"0.0.1"},"nameSpace":"com.hyperm","source":"APEX","target":"POS","parameter":{"entry":[{"key":"amount","value":{"key":"amount","fieldSchemaKey":{"name":"price_type","version":"0.0.1"},"optional":false}},{"key":"assistant_ID","value":{"key":"assistant_ID","fieldSchemaKey":{"name":"assistant_ID_type","version":"0.0.1"},"optional":false}},{"key":"authorised","value":{"key":"authorised","fieldSchemaKey":{"name":"authorised_type","version":"0.0.1"},"optional":false}},{"key":"branch_ID","value":{"key":"branch_ID","fieldSchemaKey":{"name":"branch_ID_type","version":"0.0.1"},"optional":false}},{"key":"item_ID","value":{"key":"item_ID","fieldSchemaKey":{"name":"item_ID_type","version":"0.0.1"},"optional":false}},{"key":"message","value":{"key":"message","fieldSchemaKey":{"name":"message_type","version":"0.0.1"},"optional":true}},{"key":"notes","value":{"key":"notes","fieldSchemaKey":{"name":"notes_type","version":"0.0.1"},"optional":true}},{"key":"quantity","value":{"key":"quantity","fieldSchemaKey":{"name":"quantity_type","version":"0.0.1"},"optional":false}},{"key":"sale_ID","value":{"key":"sale_ID","fieldSchemaKey":{"name":"sale_ID_type","version":"0.0.1"},"optional":false}},{"key":"time","value":{"key":"time","fieldSchemaKey":{"name":"timestamp_type","version":"0.0.1"},"optional":false}}]},"toscaPolicyState":""}},{"key":{"name":"SALE_INPUT","version":"0.0.1"},"value":{"key":{"name":"SALE_INPUT","version":"0.0.1"},"nameSpace":"com.hyperm","source":"POS","target":"APEX","parameter":{"entry":[{"key":"amount","value":{"key":"amount","fieldSchemaKey":{"name":"price_type","version":"0.0.1"},"optional":false}},{"key":"assistant_ID","value":{"key":"assistant_ID","fieldSchemaKey":{"name":"assistant_ID_type","version":"0.0.1"},"optional":false}},{"key":"branch_ID","value":{"key":"branch_ID","fieldSchemaKey":{"name":"branch_ID_type","version":"0.0.1"},"optional":false}},{"key":"item_ID","value":{"key":"item_ID","fieldSchemaKey":{"name":"item_ID_type","version":"0.0.1"},"optional":false}},{"key":"notes","value":{"key":"notes","fieldSchemaKey":{"name":"notes_type","version":"0.0.1"},"optional":true}},{"key":"quantity","value":{"key":"quantity","fieldSchemaKey":{"name":"quantity_type","version":"0.0.1"},"optional":false}},{"key":"sale_ID","value":{"key":"sale_ID","fieldSchemaKey":{"name":"sale_ID_type","version":"0.0.1"},"optional":false}},{"key":"time","value":{"key":"time","fieldSchemaKey":{"name":"timestamp_type","version":"0.0.1"},"optional":false}}]},"toscaPolicyState":""}}]}},"schemas":{"key":{"name":"MyFirstPolicyModel_Schemas","version":"0.0.1"},"schemas":{"entry":[{"key":{"name":"assistant_ID_type","version":"0.0.1"},"value":{"key":{"name":"assistant_ID_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Long"}},{"key":{"name":"authorised_type","version":"0.0.1"},"value":{"key":{"name":"authorised_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Boolean"}},{"key":{"name":"branch_ID_type","version":"0.0.1"},"value":{"key":{"name":"branch_ID_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Long"}},{"key":{"name":"item_ID_type","version":"0.0.1"},"value":{"key":{"name":"item_ID_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Long"}},{"key":{"name":"message_type","version":"0.0.1"},"value":{"key":{"name":"message_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.String"}},{"key":{"name":"notes_type","version":"0.0.1"},"value":{"key":{"name":"notes_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.String"}},{"key":{"name":"price_type","version":"0.0.1"},"value":{"key":{"name":"price_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Long"}},{"key":{"name":"quantity_type","version":"0.0.1"},"value":{"key":{"name":"quantity_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Integer"}},{"key":{"name":"sale_ID_type","version":"0.0.1"},"value":{"key":{"name":"sale_ID_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Long"}},{"key":{"name":"timestamp_type","version":"0.0.1"},"value":{"key":{"name":"timestamp_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Long"}}]}}}}},"eventOutputParameters":{"FirstProducer":{"carrierTechnologyParameters":{"carrierTechnology":"FILE","parameters":{"standardIo":true}},"eventProtocolParameters":{"eventProtocol":"JSON"}}},"eventInputParameters":{"FirstConsumer":{"carrierTechnologyParameters":{"carrierTechnology":"FILE","parameters":{"standardIo":true}},"eventProtocolParameters":{"eventProtocol":"JSON"}}}}}}]}}
\ No newline at end of file
+{"tosca_definitions_version":"tosca_simple_yaml_1_1_0","topology_template":{"policies":[{"native.sampledomain":{"type":"onap.policies.native.Apex","type_version":"1.0.0","name":"native.sampledomain","version":"1.0.0","properties":{"engineServiceParameters":{"name":"MyFirstPolicyApexEngine","version":"0.0.1","id":101,"instanceCount":4,"deploymentPort":12345,"engineParameters":{"executorParameters":{"MVEL":{"parameterClassName":"org.onap.policy.apex.plugins.executor.mvel.MvelExecutorParameters"},"JAVASCRIPT":{"parameterClassName":"org.onap.policy.apex.plugins.executor.javascript.JavascriptExecutorParameters"}}},"policy_type_impl":{"apexPolicyModel":{"key":{"name":"MyFirstPolicyModel","version":"0.0.1"},"keyInformation":{"key":{"name":"MyFirstPolicyModel_KeyInfo","version":"0.0.1"},"keyInfoMap":{"entry":[{"key":{"name":"MorningBoozeCheck","version":"0.0.1"},"value":{"key":{"name":"MorningBoozeCheck","version":"0.0.1"},"UUID":"3351b0f4-cf06-4fa2-8823-edf67bd30223","description":"This task checks if the sales request is for an item that contains alcohol. \nIf the local time is between 00:00:00 and 11:30:00 then the sale is not authorised. Otherwise the sale is authorised. \nIn this implementation we assume that all items with item_ID values between 1000 and 2000 contain alcohol :-)"}},{"key":{"name":"MyFirstPolicy","version":"0.0.1"},"value":{"key":{"name":"MyFirstPolicy","version":"0.0.1"},"UUID":"6c5e410f-489a-46ff-964e-982ce6e8b6d0","description":"This is my first Apex policy. It checks if a sale should be authorised or not."}},{"key":{"name":"MyFirstPolicyModel","version":"0.0.1"},"value":{"key":{"name":"MyFirstPolicyModel","version":"0.0.1"},"UUID":"540226fb-55ee-4f0e-a444-983a0494818e","description":"This is my first Apex Policy Model."}},{"key":{"name":"MyFirstPolicyModel_Events","version":"0.0.1"},"value":{"key":{"name":"MyFirstPolicyModel_Events","version":"0.0.1"},"UUID":"ef281318-5ac9-3ef0-8db3-8f9c4e4a81e2","description":"Generated description for concept referred to by key \"MyFirstPolicyModel_Events:0.0.1\""}},{"key":{"name":"MyFirstPolicyModel_KeyInfo","version":"0.0.1"},"value":{"key":{"name":"MyFirstPolicyModel_KeyInfo","version":"0.0.1"},"UUID":"d9248c6f-7c00-38df-8251-611463ba4065","description":"Generated description for concept referred to by key \"MyFirstPolicyModel_KeyInfo:0.0.1\""}},{"key":{"name":"MyFirstPolicyModel_Policies","version":"0.0.1"},"value":{"key":{"name":"MyFirstPolicyModel_Policies","version":"0.0.1"},"UUID":"77c01a6b-510c-3aa9-b640-b4db356aa03b","description":"Generated description for concept referred to by key \"MyFirstPolicyModel_Policies:0.0.1\""}},{"key":{"name":"MyFirstPolicyModel_Schemas","version":"0.0.1"},"value":{"key":{"name":"MyFirstPolicyModel_Schemas","version":"0.0.1"},"UUID":"d0cc3aa0-ea69-3a43-80ff-a0dbb0ebd885","description":"Generated description for concept referred to by key \"MyFirstPolicyModel_Schemas:0.0.1\""}},{"key":{"name":"MyFirstPolicyModel_Tasks","version":"0.0.1"},"value":{"key":{"name":"MyFirstPolicyModel_Tasks","version":"0.0.1"},"UUID":"b02a7e02-2cd0-39e6-b3cb-946fa83a8f08","description":"Generated description for concept referred to by key \"MyFirstPolicyModel_Tasks:0.0.1\""}},{"key":{"name":"SALE_AUTH","version":"0.0.1"},"value":{"key":{"name":"SALE_AUTH","version":"0.0.1"},"UUID":"c4500941-3f98-4080-a9cc-5b9753ed050b","description":"An event emitted by the Policy to indicate whether the sale of an item has been authorised"}},{"key":{"name":"SALE_INPUT","version":"0.0.1"},"value":{"key":{"name":"SALE_INPUT","version":"0.0.1"},"UUID":"4f04aa98-e917-4f4a-882a-c75ba5a99374","description":"An event raised by the PoS system each time an item is scanned for purchase"}},{"key":{"name":"assistant_ID_type","version":"0.0.1"},"value":{"key":{"name":"assistant_ID_type","version":"0.0.1"},"UUID":"36df4c71-9616-4206-8b53-976a5cd4bd87","description":"A type for 'assistant_ID' values"}},{"key":{"name":"authorised_type","version":"0.0.1"},"value":{"key":{"name":"authorised_type","version":"0.0.1"},"UUID":"d48b619e-d00d-4008-b884-02d76ea4350b","description":"A type for 'authorised' values"}},{"key":{"name":"branch_ID_type","version":"0.0.1"},"value":{"key":{"name":"branch_ID_type","version":"0.0.1"},"UUID":"6468845f-4122-4128-8e49-0f52c26078b5","description":"A type for 'branch_ID' values"}},{"key":{"name":"item_ID_type","version":"0.0.1"},"value":{"key":{"name":"item_ID_type","version":"0.0.1"},"UUID":"4f227ff1-aee0-453a-b6b6-9a4b2e0da932","description":"A type for 'item_ID' values"}},{"key":{"name":"message_type","version":"0.0.1"},"value":{"key":{"name":"message_type","version":"0.0.1"},"UUID":"ad1431bb-3155-4e73-b5a3-b89bee498749","description":"A type for 'message' values"}},{"key":{"name":"notes_type","version":"0.0.1"},"value":{"key":{"name":"notes_type","version":"0.0.1"},"UUID":"eecfde90-896c-4343-8f9c-2603ced94e2d","description":"A type for 'notes' values"}},{"key":{"name":"price_type","version":"0.0.1"},"value":{"key":{"name":"price_type","version":"0.0.1"},"UUID":"52c2fc45-fd8c-463c-bd6f-d91b0554aea7","description":"A type for 'amount'/'price' values"}},{"key":{"name":"quantity_type","version":"0.0.1"},"value":{"key":{"name":"quantity_type","version":"0.0.1"},"UUID":"ac3d9842-80af-4a98-951c-bd79a431c613","description":"A type for 'quantity' values"}},{"key":{"name":"sale_ID_type","version":"0.0.1"},"value":{"key":{"name":"sale_ID_type","version":"0.0.1"},"UUID":"cca47d74-7754-4a61-b163-ca31f66b157b","description":"A type for 'sale_ID' values"}},{"key":{"name":"timestamp_type","version":"0.0.1"},"value":{"key":{"name":"timestamp_type","version":"0.0.1"},"UUID":"fd594e88-411d-4a94-b2be-697b3a0d7adf","description":"A type for 'time' values"}}]}},"policies":{"key":{"name":"MyFirstPolicyModel_Policies","version":"0.0.1"},"policyMap":{"entry":[{"key":{"name":"MyFirstPolicy","version":"0.0.1"},"value":{"policyKey":{"name":"MyFirstPolicy","version":"0.0.1"},"template":"FREEFORM","state":{"entry":[{"key":"BoozeAuthDecide","value":{"stateKey":{"parentKeyName":"MyFirstPolicy","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"BoozeAuthDecide"},"trigger":{"name":"SALE_INPUT","version":"0.0.1"},"stateOutputs":{"entry":[{"key":"MorningBoozeCheck_Output_Direct","value":{"key":{"parentKeyName":"MyFirstPolicy","parentKeyVersion":"0.0.1","parentLocalName":"BoozeAuthDecide","localName":"MorningBoozeCheck_Output_Direct"},"outgoingEvent":{"name":"SALE_AUTH","version":"0.0.1"},"outgoingEventReference":[{"name":"SALE_AUTH","version":"0.0.1"}],"nextState":{"parentKeyName":"NULL","parentKeyVersion":"0.0.0","parentLocalName":"NULL","localName":"NULL"}}}]},"contextAlbumReference":[],"taskSelectionLogic":{"key":"NULL","logicFlavour":"UNDEFINED","logic":""},"stateFinalizerLogicMap":{"entry":[]},"defaultTask":{"name":"MorningBoozeCheck","version":"0.0.1"},"taskReferences":{"entry":[{"key":{"name":"MorningBoozeCheck","version":"0.0.1"},"value":{"key":{"parentKeyName":"MyFirstPolicy","parentKeyVersion":"0.0.1","parentLocalName":"BoozeAuthDecide","localName":"MorningBoozeCheck"},"outputType":"DIRECT","output":{"parentKeyName":"MyFirstPolicy","parentKeyVersion":"0.0.1","parentLocalName":"BoozeAuthDecide","localName":"MorningBoozeCheck_Output_Direct"}}}]}}}]},"firstState":"BoozeAuthDecide"}}]}},"tasks":{"key":{"name":"MyFirstPolicyModel_Tasks","version":"0.0.1"},"taskMap":{"entry":[{"key":{"name":"MorningBoozeCheck","version":"0.0.1"},"value":{"key":{"name":"MorningBoozeCheck","version":"0.0.1"},"inputEvent":{"key":{"name":"SALE_INPUT","version":"0.0.1"},"nameSpace":"com.hyperm","source":"POS","target":"APEX","parameter":{"entry":[{"key":"amount","value":{"key":"amount","fieldSchemaKey":{"name":"price_type","version":"0.0.1"},"optional":false}},{"key":"assistant_ID","value":{"key":"assistant_ID","fieldSchemaKey":{"name":"assistant_ID_type","version":"0.0.1"},"optional":false}},{"key":"branch_ID","value":{"key":"branch_ID","fieldSchemaKey":{"name":"branch_ID_type","version":"0.0.1"},"optional":false}},{"key":"item_ID","value":{"key":"item_ID","fieldSchemaKey":{"name":"item_ID_type","version":"0.0.1"},"optional":false}},{"key":"notes","value":{"key":"notes","fieldSchemaKey":{"name":"notes_type","version":"0.0.1"},"optional":true}},{"key":"quantity","value":{"key":"quantity","fieldSchemaKey":{"name":"quantity_type","version":"0.0.1"},"optional":false}},{"key":"sale_ID","value":{"key":"sale_ID","fieldSchemaKey":{"name":"sale_ID_type","version":"0.0.1"},"optional":false}},{"key":"time","value":{"key":"time","fieldSchemaKey":{"name":"timestamp_type","version":"0.0.1"},"optional":false}}]},"toscaPolicyState":""},"outputEvents":{"entry":[{"key":"SALE_AUTH","value":{"key":{"name":"SALE_AUTH","version":"0.0.1"},"nameSpace":"com.hyperm","source":"APEX","target":"POS","parameter":{"entry":[{"key":"amount","value":{"key":"amount","fieldSchemaKey":{"name":"price_type","version":"0.0.1"},"optional":false}},{"key":"assistant_ID","value":{"key":"assistant_ID","fieldSchemaKey":{"name":"assistant_ID_type","version":"0.0.1"},"optional":false}},{"key":"authorised","value":{"key":"authorised","fieldSchemaKey":{"name":"authorised_type","version":"0.0.1"},"optional":false}},{"key":"branch_ID","value":{"key":"branch_ID","fieldSchemaKey":{"name":"branch_ID_type","version":"0.0.1"},"optional":false}},{"key":"item_ID","value":{"key":"item_ID","fieldSchemaKey":{"name":"item_ID_type","version":"0.0.1"},"optional":false}},{"key":"message","value":{"key":"message","fieldSchemaKey":{"name":"message_type","version":"0.0.1"},"optional":true}},{"key":"notes","value":{"key":"notes","fieldSchemaKey":{"name":"notes_type","version":"0.0.1"},"optional":true}},{"key":"quantity","value":{"key":"quantity","fieldSchemaKey":{"name":"quantity_type","version":"0.0.1"},"optional":false}},{"key":"sale_ID","value":{"key":"sale_ID","fieldSchemaKey":{"name":"sale_ID_type","version":"0.0.1"},"optional":false}},{"key":"time","value":{"key":"time","fieldSchemaKey":{"name":"timestamp_type","version":"0.0.1"},"optional":false}}]},"toscaPolicyState":""}}]},"taskParameters":{"entry":[]},"contextAlbumReference":[],"taskLogic":{"key":"TaskLogic","logicFlavour":"MVEL","logic":"/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n *  Modifications Copyright (C) 2019 Nordix Foundation.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *      http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\nimport java.util.Date;\nimport java.util.Calendar;\nimport java.util.TimeZone;\nimport java.text.SimpleDateFormat;\n\nlogger.info(\"Task Execution: '\"+subject.id+\"'. Input Fields: '\"+inFields+\"'\");\n\noutFields.put(\"amount\"      , inFields.get(\"amount\"));\noutFields.put(\"assistant_ID\", inFields.get(\"assistant_ID\"));\noutFields.put(\"notes\"       , inFields.get(\"notes\"));\noutFields.put(\"quantity\"    , inFields.get(\"quantity\"));\noutFields.put(\"branch_ID\"   , inFields.get(\"branch_ID\"));\noutFields.put(\"item_ID\"     , inFields.get(\"item_ID\"));\noutFields.put(\"time\"        , inFields.get(\"time\"));\noutFields.put(\"sale_ID\"     , inFields.get(\"sale_ID\"));\n\nitem_id = inFields.get(\"item_ID\");\n\n//The events used later to test this task use GMT timezone!\ngmt = TimeZone.getTimeZone(\"GMT\");\ntimenow = Calendar.getInstance(gmt);\ndf = new SimpleDateFormat(\"HH:mm:ss z\");\ndf.setTimeZone(gmt);\ntimenow.setTimeInMillis(inFields.get(\"time\"));\n\nmidnight = timenow.clone();\nmidnight.set(\n    timenow.get(Calendar.YEAR),timenow.get(Calendar.MONTH),\n    timenow.get(Calendar.DATE),0,0,0);\neleven30 = timenow.clone();\neleven30.set(\n    timenow.get(Calendar.YEAR),timenow.get(Calendar.MONTH),\n    timenow.get(Calendar.DATE),11,30,0);\n\nitemisalcohol = false;\nif(item_id != null && item_id >=1000 && item_id < 2000)\n    itemisalcohol = true;\n\nif( itemisalcohol\n    && timenow.after(midnight) && timenow.before(eleven30)){\n  outFields.put(\"authorised\", false);\n  outFields.put(\"message\", \"Sale not authorised by policy task \"+subject.taskName+\n    \" for time \"+df.format(timenow.getTime())+\n    \". Alcohol can not be sold between \"+df.format(midnight.getTime())+\n    \" and \"+df.format(eleven30.getTime()));\n  return true;\n}\nelse{\n  outFields.put(\"authorised\", true);\n  outFields.put(\"message\", \"Sale authorised by policy task \"+subject.taskName+\n    \" for time \"+df.format(timenow.getTime()));\n  return true;\n}\n\n/*\nThis task checks if a sale request is for an item that is an alcoholic drink.\nIf the local time is between 00:00:00 GMT and 11:30:00 GMT then the sale is not\nauthorised. Otherwise the sale is authorised.\nIn this implementation we assume that items with item_ID value between 1000 and\n2000 are all alcoholic drinks :-)\n*/"}}}]}},"events":{"key":{"name":"MyFirstPolicyModel_Events","version":"0.0.1"},"eventMap":{"entry":[{"key":{"name":"SALE_AUTH","version":"0.0.1"},"value":{"key":{"name":"SALE_AUTH","version":"0.0.1"},"nameSpace":"com.hyperm","source":"APEX","target":"POS","parameter":{"entry":[{"key":"amount","value":{"key":"amount","fieldSchemaKey":{"name":"price_type","version":"0.0.1"},"optional":false}},{"key":"assistant_ID","value":{"key":"assistant_ID","fieldSchemaKey":{"name":"assistant_ID_type","version":"0.0.1"},"optional":false}},{"key":"authorised","value":{"key":"authorised","fieldSchemaKey":{"name":"authorised_type","version":"0.0.1"},"optional":false}},{"key":"branch_ID","value":{"key":"branch_ID","fieldSchemaKey":{"name":"branch_ID_type","version":"0.0.1"},"optional":false}},{"key":"item_ID","value":{"key":"item_ID","fieldSchemaKey":{"name":"item_ID_type","version":"0.0.1"},"optional":false}},{"key":"message","value":{"key":"message","fieldSchemaKey":{"name":"message_type","version":"0.0.1"},"optional":true}},{"key":"notes","value":{"key":"notes","fieldSchemaKey":{"name":"notes_type","version":"0.0.1"},"optional":true}},{"key":"quantity","value":{"key":"quantity","fieldSchemaKey":{"name":"quantity_type","version":"0.0.1"},"optional":false}},{"key":"sale_ID","value":{"key":"sale_ID","fieldSchemaKey":{"name":"sale_ID_type","version":"0.0.1"},"optional":false}},{"key":"time","value":{"key":"time","fieldSchemaKey":{"name":"timestamp_type","version":"0.0.1"},"optional":false}}]},"toscaPolicyState":""}},{"key":{"name":"SALE_INPUT","version":"0.0.1"},"value":{"key":{"name":"SALE_INPUT","version":"0.0.1"},"nameSpace":"com.hyperm","source":"POS","target":"APEX","parameter":{"entry":[{"key":"amount","value":{"key":"amount","fieldSchemaKey":{"name":"price_type","version":"0.0.1"},"optional":false}},{"key":"assistant_ID","value":{"key":"assistant_ID","fieldSchemaKey":{"name":"assistant_ID_type","version":"0.0.1"},"optional":false}},{"key":"branch_ID","value":{"key":"branch_ID","fieldSchemaKey":{"name":"branch_ID_type","version":"0.0.1"},"optional":false}},{"key":"item_ID","value":{"key":"item_ID","fieldSchemaKey":{"name":"item_ID_type","version":"0.0.1"},"optional":false}},{"key":"notes","value":{"key":"notes","fieldSchemaKey":{"name":"notes_type","version":"0.0.1"},"optional":true}},{"key":"quantity","value":{"key":"quantity","fieldSchemaKey":{"name":"quantity_type","version":"0.0.1"},"optional":false}},{"key":"sale_ID","value":{"key":"sale_ID","fieldSchemaKey":{"name":"sale_ID_type","version":"0.0.1"},"optional":false}},{"key":"time","value":{"key":"time","fieldSchemaKey":{"name":"timestamp_type","version":"0.0.1"},"optional":false}}]},"toscaPolicyState":""}}]}},"schemas":{"key":{"name":"MyFirstPolicyModel_Schemas","version":"0.0.1"},"schemas":{"entry":[{"key":{"name":"assistant_ID_type","version":"0.0.1"},"value":{"key":{"name":"assistant_ID_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Long"}},{"key":{"name":"authorised_type","version":"0.0.1"},"value":{"key":{"name":"authorised_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Boolean"}},{"key":{"name":"branch_ID_type","version":"0.0.1"},"value":{"key":{"name":"branch_ID_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Long"}},{"key":{"name":"item_ID_type","version":"0.0.1"},"value":{"key":{"name":"item_ID_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Long"}},{"key":{"name":"message_type","version":"0.0.1"},"value":{"key":{"name":"message_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.String"}},{"key":{"name":"notes_type","version":"0.0.1"},"value":{"key":{"name":"notes_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.String"}},{"key":{"name":"price_type","version":"0.0.1"},"value":{"key":{"name":"price_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Long"}},{"key":{"name":"quantity_type","version":"0.0.1"},"value":{"key":{"name":"quantity_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Integer"}},{"key":{"name":"sale_ID_type","version":"0.0.1"},"value":{"key":{"name":"sale_ID_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Long"}},{"key":{"name":"timestamp_type","version":"0.0.1"},"value":{"key":{"name":"timestamp_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Long"}}]}}}}},"eventOutputParameters":{"FirstProducer":{"carrierTechnologyParameters":{"carrierTechnology":"FILE","parameters":{"standardIo":true}},"eventProtocolParameters":{"eventProtocol":"JSON"}}},"eventInputParameters":{"FirstConsumer":{"carrierTechnologyParameters":{"carrierTechnology":"FILE","parameters":{"standardIo":true}},"eventProtocolParameters":{"eventProtocol":"JSON"}}}}}}]}}
diff --git a/auth/cli-editor/src/test/resources/tosca/ToscaPolicyOutput_compare_2.json b/auth/cli-editor/src/test/resources/tosca/ToscaPolicyOutput_compare_2.json
new file mode 100644 (file)
index 0000000..686d2ee
--- /dev/null
@@ -0,0 +1 @@
+{"tosca_definitions_version":"tosca_simple_yaml_1_1_0","topology_template":{"policies":[{"native.sampledomain":{"type":"onap.policies.native.Apex","type_version":"1.0.0","name":"native.sampledomain","version":"1.0.0","properties":{"engineServiceParameters":{"name":"MyFirstPolicyApexEngine","version":"0.0.1","id":101,"instanceCount":4,"deploymentPort":12345,"engineParameters":{"executorParameters":{"MVEL":{"parameterClassName":"org.onap.policy.apex.plugins.executor.mvel.MvelExecutorParameters"},"JAVASCRIPT":{"parameterClassName":"org.onap.policy.apex.plugins.executor.javascript.JavascriptExecutorParameters"}}},"policy_type_impl":{"policies":{"key":{"name":"MyFirstPolicyModel_Policies","version":"0.0.1"},"policyMap":{"entry":[{"key":{"name":"MyFirstPolicy","version":"0.0.1"},"value":{"policyKey":{"name":"MyFirstPolicy","version":"0.0.1"},"template":"FREEFORM","state":{"entry":[{"key":"BoozeAuthDecide","value":{"stateKey":{"parentKeyName":"MyFirstPolicy","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"BoozeAuthDecide"},"trigger":{"name":"SALE_INPUT","version":"0.0.1"},"stateOutputs":{"entry":[{"key":"MorningBoozeCheck_Output_Direct","value":{"key":{"parentKeyName":"MyFirstPolicy","parentKeyVersion":"0.0.1","parentLocalName":"BoozeAuthDecide","localName":"MorningBoozeCheck_Output_Direct"},"outgoingEvent":{"name":"SALE_AUTH","version":"0.0.1"},"outgoingEventReference":[{"name":"SALE_AUTH","version":"0.0.1"}],"nextState":{"parentKeyName":"NULL","parentKeyVersion":"0.0.0","parentLocalName":"NULL","localName":"NULL"}}}]},"contextAlbumReference":[],"taskSelectionLogic":{"key":{"parentKeyName":"NULL","parentKeyVersion":"0.0.0","parentLocalName":"NULL","localName":"NULL"},"logicFlavour":"UNDEFINED","logic":""},"stateFinalizerLogicMap":{"entry":[]},"defaultTask":{"name":"MorningBoozeCheck","version":"0.0.1"},"taskReferences":{"entry":[{"key":{"name":"MorningBoozeCheck","version":"0.0.1"},"value":{"key":{"parentKeyName":"MyFirstPolicy","parentKeyVersion":"0.0.1","parentLocalName":"BoozeAuthDecide","localName":"MorningBoozeCheck"},"outputType":"DIRECT","output":{"parentKeyName":"MyFirstPolicy","parentKeyVersion":"0.0.1","parentLocalName":"BoozeAuthDecide","localName":"MorningBoozeCheck_Output_Direct"}}}]}}}]},"firstState":"BoozeAuthDecide"}}]}},"tasks":{"key":{"name":"MyFirstPolicyModel_Tasks","version":"0.0.1"},"taskMap":{"entry":[{"key":{"name":"MorningBoozeCheck","version":"0.0.1"},"value":{"key":{"name":"MorningBoozeCheck","version":"0.0.1"},"inputEvent":{"key":{"name":"SALE_INPUT","version":"0.0.1"},"nameSpace":"com.hyperm","source":"POS","target":"APEX","parameter":{"entry":[{"key":"amount","value":{"key":{"parentKeyName":"SALE_INPUT","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"amount"},"fieldSchemaKey":{"name":"price_type","version":"0.0.1"},"optional":false}},{"key":"assistant_ID","value":{"key":{"parentKeyName":"SALE_INPUT","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"assistant_ID"},"fieldSchemaKey":{"name":"assistant_ID_type","version":"0.0.1"},"optional":false}},{"key":"branch_ID","value":{"key":{"parentKeyName":"SALE_INPUT","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"branch_ID"},"fieldSchemaKey":{"name":"branch_ID_type","version":"0.0.1"},"optional":false}},{"key":"item_ID","value":{"key":{"parentKeyName":"SALE_INPUT","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"item_ID"},"fieldSchemaKey":{"name":"item_ID_type","version":"0.0.1"},"optional":false}},{"key":"notes","value":{"key":{"parentKeyName":"SALE_INPUT","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"notes"},"fieldSchemaKey":{"name":"notes_type","version":"0.0.1"},"optional":true}},{"key":"quantity","value":{"key":{"parentKeyName":"SALE_INPUT","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"quantity"},"fieldSchemaKey":{"name":"quantity_type","version":"0.0.1"},"optional":false}},{"key":"sale_ID","value":{"key":{"parentKeyName":"SALE_INPUT","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"sale_ID"},"fieldSchemaKey":{"name":"sale_ID_type","version":"0.0.1"},"optional":false}},{"key":"time","value":{"key":{"parentKeyName":"SALE_INPUT","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"time"},"fieldSchemaKey":{"name":"timestamp_type","version":"0.0.1"},"optional":false}}]},"toscaPolicyState":""},"outputEvents":{"entry":[{"key":"SALE_AUTH","value":{"key":{"name":"SALE_AUTH","version":"0.0.1"},"nameSpace":"com.hyperm","source":"APEX","target":"POS","parameter":{"entry":[{"key":"amount","value":{"key":{"parentKeyName":"SALE_AUTH","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"amount"},"fieldSchemaKey":{"name":"price_type","version":"0.0.1"},"optional":false}},{"key":"assistant_ID","value":{"key":{"parentKeyName":"SALE_AUTH","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"assistant_ID"},"fieldSchemaKey":{"name":"assistant_ID_type","version":"0.0.1"},"optional":false}},{"key":"authorised","value":{"key":{"parentKeyName":"SALE_AUTH","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"authorised"},"fieldSchemaKey":{"name":"authorised_type","version":"0.0.1"},"optional":false}},{"key":"branch_ID","value":{"key":{"parentKeyName":"SALE_AUTH","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"branch_ID"},"fieldSchemaKey":{"name":"branch_ID_type","version":"0.0.1"},"optional":false}},{"key":"item_ID","value":{"key":{"parentKeyName":"SALE_AUTH","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"item_ID"},"fieldSchemaKey":{"name":"item_ID_type","version":"0.0.1"},"optional":false}},{"key":"message","value":{"key":{"parentKeyName":"SALE_AUTH","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"message"},"fieldSchemaKey":{"name":"message_type","version":"0.0.1"},"optional":true}},{"key":"notes","value":{"key":{"parentKeyName":"SALE_AUTH","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"notes"},"fieldSchemaKey":{"name":"notes_type","version":"0.0.1"},"optional":true}},{"key":"quantity","value":{"key":{"parentKeyName":"SALE_AUTH","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"quantity"},"fieldSchemaKey":{"name":"quantity_type","version":"0.0.1"},"optional":false}},{"key":"sale_ID","value":{"key":{"parentKeyName":"SALE_AUTH","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"sale_ID"},"fieldSchemaKey":{"name":"sale_ID_type","version":"0.0.1"},"optional":false}},{"key":"time","value":{"key":{"parentKeyName":"SALE_AUTH","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"time"},"fieldSchemaKey":{"name":"timestamp_type","version":"0.0.1"},"optional":false}}]},"toscaPolicyState":""}}]},"taskParameters":{"entry":[]},"contextAlbumReference":[],"taskLogic":{"key":{"parentKeyName":"MorningBoozeCheck","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"TaskLogic"},"logicFlavour":"MVEL","logic":"/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n *  Modifications Copyright (C) 2019 Nordix Foundation.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *      http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\nimport java.util.Date;\nimport java.util.Calendar;\nimport java.util.TimeZone;\nimport java.text.SimpleDateFormat;\n\nlogger.info(\"Task Execution: '\"+subject.id+\"'. Input Fields: '\"+inFields+\"'\");\n\noutFields.put(\"amount\"      , inFields.get(\"amount\"));\noutFields.put(\"assistant_ID\", inFields.get(\"assistant_ID\"));\noutFields.put(\"notes\"       , inFields.get(\"notes\"));\noutFields.put(\"quantity\"    , inFields.get(\"quantity\"));\noutFields.put(\"branch_ID\"   , inFields.get(\"branch_ID\"));\noutFields.put(\"item_ID\"     , inFields.get(\"item_ID\"));\noutFields.put(\"time\"        , inFields.get(\"time\"));\noutFields.put(\"sale_ID\"     , inFields.get(\"sale_ID\"));\n\nitem_id = inFields.get(\"item_ID\");\n\n//The events used later to test this task use GMT timezone!\ngmt = TimeZone.getTimeZone(\"GMT\");\ntimenow = Calendar.getInstance(gmt);\ndf = new SimpleDateFormat(\"HH:mm:ss z\");\ndf.setTimeZone(gmt);\ntimenow.setTimeInMillis(inFields.get(\"time\"));\n\nmidnight = timenow.clone();\nmidnight.set(\n    timenow.get(Calendar.YEAR),timenow.get(Calendar.MONTH),\n    timenow.get(Calendar.DATE),0,0,0);\neleven30 = timenow.clone();\neleven30.set(\n    timenow.get(Calendar.YEAR),timenow.get(Calendar.MONTH),\n    timenow.get(Calendar.DATE),11,30,0);\n\nitemisalcohol = false;\nif(item_id != null && item_id >=1000 && item_id < 2000)\n    itemisalcohol = true;\n\nif( itemisalcohol\n    && timenow.after(midnight) && timenow.before(eleven30)){\n  outFields.put(\"authorised\", false);\n  outFields.put(\"message\", \"Sale not authorised by policy task \"+subject.taskName+\n    \" for time \"+df.format(timenow.getTime())+\n    \". Alcohol can not be sold between \"+df.format(midnight.getTime())+\n    \" and \"+df.format(eleven30.getTime()));\n  return true;\n}\nelse{\n  outFields.put(\"authorised\", true);\n  outFields.put(\"message\", \"Sale authorised by policy task \"+subject.taskName+\n    \" for time \"+df.format(timenow.getTime()));\n  return true;\n}\n\n/*\nThis task checks if a sale request is for an item that is an alcoholic drink.\nIf the local time is between 00:00:00 GMT and 11:30:00 GMT then the sale is not\nauthorised. Otherwise the sale is authorised.\nIn this implementation we assume that items with item_ID value between 1000 and\n2000 are all alcoholic drinks :-)\n*/"}}}]}},"events":{"key":{"name":"MyFirstPolicyModel_Events","version":"0.0.1"},"eventMap":{"entry":[{"key":{"name":"SALE_AUTH","version":"0.0.1"},"value":{"key":{"name":"SALE_AUTH","version":"0.0.1"},"nameSpace":"com.hyperm","source":"APEX","target":"POS","parameter":{"entry":[{"key":"amount","value":{"key":{"parentKeyName":"SALE_AUTH","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"amount"},"fieldSchemaKey":{"name":"price_type","version":"0.0.1"},"optional":false}},{"key":"assistant_ID","value":{"key":{"parentKeyName":"SALE_AUTH","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"assistant_ID"},"fieldSchemaKey":{"name":"assistant_ID_type","version":"0.0.1"},"optional":false}},{"key":"authorised","value":{"key":{"parentKeyName":"SALE_AUTH","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"authorised"},"fieldSchemaKey":{"name":"authorised_type","version":"0.0.1"},"optional":false}},{"key":"branch_ID","value":{"key":{"parentKeyName":"SALE_AUTH","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"branch_ID"},"fieldSchemaKey":{"name":"branch_ID_type","version":"0.0.1"},"optional":false}},{"key":"item_ID","value":{"key":{"parentKeyName":"SALE_AUTH","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"item_ID"},"fieldSchemaKey":{"name":"item_ID_type","version":"0.0.1"},"optional":false}},{"key":"message","value":{"key":{"parentKeyName":"SALE_AUTH","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"message"},"fieldSchemaKey":{"name":"message_type","version":"0.0.1"},"optional":true}},{"key":"notes","value":{"key":{"parentKeyName":"SALE_AUTH","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"notes"},"fieldSchemaKey":{"name":"notes_type","version":"0.0.1"},"optional":true}},{"key":"quantity","value":{"key":{"parentKeyName":"SALE_AUTH","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"quantity"},"fieldSchemaKey":{"name":"quantity_type","version":"0.0.1"},"optional":false}},{"key":"sale_ID","value":{"key":{"parentKeyName":"SALE_AUTH","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"sale_ID"},"fieldSchemaKey":{"name":"sale_ID_type","version":"0.0.1"},"optional":false}},{"key":"time","value":{"key":{"parentKeyName":"SALE_AUTH","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"time"},"fieldSchemaKey":{"name":"timestamp_type","version":"0.0.1"},"optional":false}}]},"toscaPolicyState":""}},{"key":{"name":"SALE_INPUT","version":"0.0.1"},"value":{"key":{"name":"SALE_INPUT","version":"0.0.1"},"nameSpace":"com.hyperm","source":"POS","target":"APEX","parameter":{"entry":[{"key":"amount","value":{"key":{"parentKeyName":"SALE_INPUT","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"amount"},"fieldSchemaKey":{"name":"price_type","version":"0.0.1"},"optional":false}},{"key":"assistant_ID","value":{"key":{"parentKeyName":"SALE_INPUT","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"assistant_ID"},"fieldSchemaKey":{"name":"assistant_ID_type","version":"0.0.1"},"optional":false}},{"key":"branch_ID","value":{"key":{"parentKeyName":"SALE_INPUT","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"branch_ID"},"fieldSchemaKey":{"name":"branch_ID_type","version":"0.0.1"},"optional":false}},{"key":"item_ID","value":{"key":{"parentKeyName":"SALE_INPUT","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"item_ID"},"fieldSchemaKey":{"name":"item_ID_type","version":"0.0.1"},"optional":false}},{"key":"notes","value":{"key":{"parentKeyName":"SALE_INPUT","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"notes"},"fieldSchemaKey":{"name":"notes_type","version":"0.0.1"},"optional":true}},{"key":"quantity","value":{"key":{"parentKeyName":"SALE_INPUT","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"quantity"},"fieldSchemaKey":{"name":"quantity_type","version":"0.0.1"},"optional":false}},{"key":"sale_ID","value":{"key":{"parentKeyName":"SALE_INPUT","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"sale_ID"},"fieldSchemaKey":{"name":"sale_ID_type","version":"0.0.1"},"optional":false}},{"key":"time","value":{"key":{"parentKeyName":"SALE_INPUT","parentKeyVersion":"0.0.1","parentLocalName":"NULL","localName":"time"},"fieldSchemaKey":{"name":"timestamp_type","version":"0.0.1"},"optional":false}}]},"toscaPolicyState":""}}]}},"albums":{"key":{"name":"MyFirstPolicyModel_Albums","version":"0.0.1"},"albums":{"entry":[]}},"schemas":{"key":{"name":"MyFirstPolicyModel_Schemas","version":"0.0.1"},"schemas":{"entry":[{"key":{"name":"assistant_ID_type","version":"0.0.1"},"value":{"key":{"name":"assistant_ID_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Long"}},{"key":{"name":"authorised_type","version":"0.0.1"},"value":{"key":{"name":"authorised_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Boolean"}},{"key":{"name":"branch_ID_type","version":"0.0.1"},"value":{"key":{"name":"branch_ID_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Long"}},{"key":{"name":"item_ID_type","version":"0.0.1"},"value":{"key":{"name":"item_ID_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Long"}},{"key":{"name":"message_type","version":"0.0.1"},"value":{"key":{"name":"message_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.String"}},{"key":{"name":"notes_type","version":"0.0.1"},"value":{"key":{"name":"notes_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.String"}},{"key":{"name":"price_type","version":"0.0.1"},"value":{"key":{"name":"price_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Long"}},{"key":{"name":"quantity_type","version":"0.0.1"},"value":{"key":{"name":"quantity_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Integer"}},{"key":{"name":"sale_ID_type","version":"0.0.1"},"value":{"key":{"name":"sale_ID_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Long"}},{"key":{"name":"timestamp_type","version":"0.0.1"},"value":{"key":{"name":"timestamp_type","version":"0.0.1"},"schemaFlavour":"Java","schemaDefinition":"java.lang.Long"}}]}},"key":{"name":"MyFirstPolicyModel","version":"0.0.1"},"keyInformation":{"key":{"name":"MyFirstPolicyModel_KeyInfo","version":"0.0.1"},"keyInfoMap":{"entry":[{"key":{"name":"MorningBoozeCheck","version":"0.0.1"},"value":{"key":{"name":"MorningBoozeCheck","version":"0.0.1"},"UUID":"3351b0f4-cf06-4fa2-8823-edf67bd30223","description":"This task checks if the sales request is for an item that contains alcohol. \nIf the local time is between 00:00:00 and 11:30:00 then the sale is not authorised. Otherwise the sale is authorised. \nIn this implementation we assume that all items with item_ID values between 1000 and 2000 contain alcohol :-)"}},{"key":{"name":"MyFirstPolicy","version":"0.0.1"},"value":{"key":{"name":"MyFirstPolicy","version":"0.0.1"},"UUID":"6c5e410f-489a-46ff-964e-982ce6e8b6d0","description":"This is my first Apex policy. It checks if a sale should be authorised or not."}},{"key":{"name":"MyFirstPolicyModel","version":"0.0.1"},"value":{"key":{"name":"MyFirstPolicyModel","version":"0.0.1"},"UUID":"540226fb-55ee-4f0e-a444-983a0494818e","description":"This is my first Apex Policy Model."}},{"key":{"name":"MyFirstPolicyModel_Albums","version":"0.0.1"},"value":{"key":{"name":"MyFirstPolicyModel_Albums","version":"0.0.1"},"UUID":"3f70ec50-f896-31ba-afec-5fd47e69045b","description":"Generated description for concept referred to by key \"MyFirstPolicyModel_Albums:0.0.1\""}},{"key":{"name":"MyFirstPolicyModel_Events","version":"0.0.1"},"value":{"key":{"name":"MyFirstPolicyModel_Events","version":"0.0.1"},"UUID":"ef281318-5ac9-3ef0-8db3-8f9c4e4a81e2","description":"Generated description for concept referred to by key \"MyFirstPolicyModel_Events:0.0.1\""}},{"key":{"name":"MyFirstPolicyModel_KeyInfo","version":"0.0.1"},"value":{"key":{"name":"MyFirstPolicyModel_KeyInfo","version":"0.0.1"},"UUID":"d9248c6f-7c00-38df-8251-611463ba4065","description":"Generated description for concept referred to by key \"MyFirstPolicyModel_KeyInfo:0.0.1\""}},{"key":{"name":"MyFirstPolicyModel_Policies","version":"0.0.1"},"value":{"key":{"name":"MyFirstPolicyModel_Policies","version":"0.0.1"},"UUID":"77c01a6b-510c-3aa9-b640-b4db356aa03b","description":"Generated description for concept referred to by key \"MyFirstPolicyModel_Policies:0.0.1\""}},{"key":{"name":"MyFirstPolicyModel_Schemas","version":"0.0.1"},"value":{"key":{"name":"MyFirstPolicyModel_Schemas","version":"0.0.1"},"UUID":"d0cc3aa0-ea69-3a43-80ff-a0dbb0ebd885","description":"Generated description for concept referred to by key \"MyFirstPolicyModel_Schemas:0.0.1\""}},{"key":{"name":"MyFirstPolicyModel_Tasks","version":"0.0.1"},"value":{"key":{"name":"MyFirstPolicyModel_Tasks","version":"0.0.1"},"UUID":"b02a7e02-2cd0-39e6-b3cb-946fa83a8f08","description":"Generated description for concept referred to by key \"MyFirstPolicyModel_Tasks:0.0.1\""}},{"key":{"name":"SALE_AUTH","version":"0.0.1"},"value":{"key":{"name":"SALE_AUTH","version":"0.0.1"},"UUID":"c4500941-3f98-4080-a9cc-5b9753ed050b","description":"An event emitted by the Policy to indicate whether the sale of an item has been authorised"}},{"key":{"name":"SALE_INPUT","version":"0.0.1"},"value":{"key":{"name":"SALE_INPUT","version":"0.0.1"},"UUID":"4f04aa98-e917-4f4a-882a-c75ba5a99374","description":"An event raised by the PoS system each time an item is scanned for purchase"}},{"key":{"name":"assistant_ID_type","version":"0.0.1"},"value":{"key":{"name":"assistant_ID_type","version":"0.0.1"},"UUID":"36df4c71-9616-4206-8b53-976a5cd4bd87","description":"A type for 'assistant_ID' values"}},{"key":{"name":"authorised_type","version":"0.0.1"},"value":{"key":{"name":"authorised_type","version":"0.0.1"},"UUID":"d48b619e-d00d-4008-b884-02d76ea4350b","description":"A type for 'authorised' values"}},{"key":{"name":"branch_ID_type","version":"0.0.1"},"value":{"key":{"name":"branch_ID_type","version":"0.0.1"},"UUID":"6468845f-4122-4128-8e49-0f52c26078b5","description":"A type for 'branch_ID' values"}},{"key":{"name":"item_ID_type","version":"0.0.1"},"value":{"key":{"name":"item_ID_type","version":"0.0.1"},"UUID":"4f227ff1-aee0-453a-b6b6-9a4b2e0da932","description":"A type for 'item_ID' values"}},{"key":{"name":"message_type","version":"0.0.1"},"value":{"key":{"name":"message_type","version":"0.0.1"},"UUID":"ad1431bb-3155-4e73-b5a3-b89bee498749","description":"A type for 'message' values"}},{"key":{"name":"notes_type","version":"0.0.1"},"value":{"key":{"name":"notes_type","version":"0.0.1"},"UUID":"eecfde90-896c-4343-8f9c-2603ced94e2d","description":"A type for 'notes' values"}},{"key":{"name":"price_type","version":"0.0.1"},"value":{"key":{"name":"price_type","version":"0.0.1"},"UUID":"52c2fc45-fd8c-463c-bd6f-d91b0554aea7","description":"A type for 'amount'/'price' values"}},{"key":{"name":"quantity_type","version":"0.0.1"},"value":{"key":{"name":"quantity_type","version":"0.0.1"},"UUID":"ac3d9842-80af-4a98-951c-bd79a431c613","description":"A type for 'quantity' values"}},{"key":{"name":"sale_ID_type","version":"0.0.1"},"value":{"key":{"name":"sale_ID_type","version":"0.0.1"},"UUID":"cca47d74-7754-4a61-b163-ca31f66b157b","description":"A type for 'sale_ID' values"}},{"key":{"name":"timestamp_type","version":"0.0.1"},"value":{"key":{"name":"timestamp_type","version":"0.0.1"},"UUID":"fd594e88-411d-4a94-b2be-697b3a0d7adf","description":"A type for 'time' values"}}]}}}},"eventOutputParameters":{"FirstProducer":{"carrierTechnologyParameters":{"carrierTechnology":"FILE","parameters":{"standardIo":true}},"eventProtocolParameters":{"eventProtocol":"JSON"}}},"eventInputParameters":{"FirstConsumer":{"carrierTechnologyParameters":{"carrierTechnology":"FILE","parameters":{"standardIo":true}},"eventProtocolParameters":{"eventProtocol":"JSON"}}}}}}]}}
index 3cf43c5..3f82438 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2020 Nordix Foundation.
+ *  Modifications Copyright (C) 2020,2022 Nordix Foundation.
  *  Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
@@ -39,8 +39,8 @@ import org.onap.policy.common.parameters.annotations.Valid;
  * for each of those executors.
  *
  * <p>The context parameters for the engine are held in a {@link ContextParameters} instance. This instance holds the
- * parameters for context schema handling that will be used by the engine as well as the context album distribution,
- * locking, and persistence parameters.
+ * parameters for context schema handling that will be used by the engine as well as the context album distribution and
+ * locking parameters.
  *
  * <p>In Apex, an engine can be configured to use many logic flavours. The executors for each logic flavour are
  * identified by their name. Each logic flavour executor must have an instance of {@link ExecutorParameters} defined for
index 52edb31..490b9ac 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2019 Nordix Foundation.
+ *  Modifications Copyright (C) 2019,2022 Nordix Foundation.
  *  Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
@@ -57,6 +57,5 @@ public final class AadmDomainModelSaver {
         final ApexModelSaver<AxPolicyModel> aadmModelSaver = new ApexModelSaver<>(AxPolicyModel.class, aadmPolicyModel,
                         args[0]);
         aadmModelSaver.apexModelWriteJson();
-        aadmModelSaver.apexModelWriteXml();
     }
 }
index f0f0cea..e35d9d2 100644 (file)
@@ -50,11 +50,6 @@ public class AadmModelTest {
         assertEquals(VALID_MODEL_STRING, result.toString());
     }
 
-    @Test
-    public void testModelWriteReadXml() throws Exception {
-        testApexModel.testApexModelWriteReadXml();
-    }
-
     @Test
     public void testModelWriteReadJson() throws Exception {
         testApexModel.testApexModelWriteReadJson();
index 0ebff49..3400fa3 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2019 Nordix Foundation.
+ *  Modifications Copyright (C) 2019,2022 Nordix Foundation.
  *  Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
@@ -57,13 +57,11 @@ public final class AdaptiveDomainModelSaver {
         final ApexModelSaver<AxPolicyModel> adModelSaver = new ApexModelSaver<>(AxPolicyModel.class, adPolicyModel,
                         args[0]);
         adModelSaver.apexModelWriteJson();
-        adModelSaver.apexModelWriteXml();
 
         // Save Auto Learn model
         final AxPolicyModel alPolicyModel = new AdaptiveDomainModelFactory().getAutoLearnPolicyModel();
         final ApexModelSaver<AxPolicyModel> alModelSaver = new ApexModelSaver<>(AxPolicyModel.class, alPolicyModel,
                         args[0]);
         alModelSaver.apexModelWriteJson();
-        alModelSaver.apexModelWriteXml();
     }
 }
index 310b43f..4f9c58c 100644 (file)
@@ -49,11 +49,6 @@ public class AnomalyDetectionModelTest {
         assertEquals(VALID_MODEL_STRING, result.toString());
     }
 
-    @Test
-    public void testModelWriteReadXml() throws Exception {
-        testApexModel.testApexModelWriteReadXml();
-    }
-
     @Test
     public void testModelWriteReadJson() throws Exception {
         testApexModel.testApexModelWriteReadJson();
index 5154514..c69fa06 100644 (file)
@@ -49,11 +49,6 @@ public class AutoLearnModelTest {
         assertEquals(VALID_MODEL_STRING, result.toString());
     }
 
-    @Test
-    public void testModelWriteReadXml() throws Exception {
-        testApexModel.testApexModelWriteReadXml();
-    }
-
     @Test
     public void testModelWriteReadJson() throws Exception {
         testApexModel.testApexModelWriteReadJson();
index 1bd67f9..2472cb4 100644 (file)
@@ -1,6 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
+ *  Modifications Copyright (C) 2022 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -62,17 +63,6 @@ public class MfpModelTest {
         assertTrue("Model did not validate cleanly", result.isOk());
     }
 
-    /**
-     * Test model write and read XML.
-     *
-     * @throws Exception if there is an error
-     */
-    @Test
-    public void testModelWriteReadXml() throws Exception {
-        testApexModel1.testApexModelWriteReadXml();
-        testApexModel2.testApexModelWriteReadXml();
-    }
-
     /**
      * Test model write and read JSON.
      *
index 8b5d2ef..a6c85fb 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2019-2020 Nordix Foundation.
+ *  Modifications Copyright (C) 2019-2020,2022 Nordix Foundation.
  *  Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
@@ -235,7 +235,6 @@ public class OnapVCpeSimEndpoint {
 
             if (appcResponse != null) {
                 LOGGER.info("\n*** CONTROLLER RESPONSE START ***");
-                System.err.println(appcResponse);
                 LOGGER.info("\n*** CONTROLLER RESPONSE END ***");
 
                 return Response.status(200).entity(appcResponse).build();
index 4d79302..45d9978 100644 (file)
   ============LICENSE_END=========================================================
 -->
 
-<project
-    xmlns="http://maven.apache.org/POM/4.0.0"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
         <dependency>
             <groupId>org.onap.policy.common</groupId>
             <artifactId>utils</artifactId>
+            <exclusions>
+                <exclusion>
+                    <groupId>javax.xml.bind</groupId>
+                    <artifactId>jaxb-api</artifactId>
+                </exclusion>
+            </exclusions>
         </dependency>
         <dependency>
             <groupId>org.onap.policy.apex-pdp.model</groupId>
             <scope>test</scope>
         </dependency>
     </dependencies>
-
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>org.codehaus.mojo</groupId>
-                <artifactId>exec-maven-plugin</artifactId>
-                <executions>
-                    <execution>
-                        <id>generate-xml-schema</id>
-                        <phase>process-classes</phase>
-                        <goals>
-                            <goal>java</goal>
-                        </goals>
-                        <configuration>
-                            <mainClass>org.onap.policy.apex.model.basicmodel.handling.ApexSchemaGenerator</mainClass>
-                            <classpathScope>compile</classpathScope>
-                            <arguments>
-                                <argument>org.onap.policy.apex.model.basicmodel.concepts.AxModel</argument>
-                                <argument>${project.build.directory}/model/xml/apex-basic-model.xsd</argument>
-                            </arguments>
-                        </configuration>
-                    </execution>
-                </executions>
-            </plugin>
-        </plugins>
-    </build>
-</project>
+</project>
\ No newline at end of file
index f5d4219..1efe83d 100644 (file)
@@ -23,11 +23,6 @@ package org.onap.policy.apex.model.basicmodel.concepts;
 
 import java.util.ArrayList;
 import java.util.List;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlRootElement;
-import javax.xml.bind.annotation.XmlType;
 import org.onap.policy.apex.model.basicmodel.concepts.AxValidationResult.ValidationResult;
 import org.onap.policy.common.utils.validation.Assertions;
 
@@ -39,22 +34,13 @@ import org.onap.policy.common.utils.validation.Assertions;
  * <p>Key validation checks that the name and version fields match the NAME_REGEXP and VERSION_REGEXP
  * regular expressions respectively.
  */
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlRootElement(name = "apexArtifactKey", namespace = "http://www.onap.org/policy/apex-pdp")
-
-@XmlType(name = "AxArtifactKey", namespace = "http://www.onap.org/policy/apex-pdp", propOrder =
-    { "name", "version" })
-
 public class AxArtifactKey extends AxKey {
     private static final long serialVersionUID = 8932717618579392561L;
 
     private static final String NAME_TOKEN = "name";
     private static final String VERSION_TOKEN = "version";
 
-    @XmlElement(required = true)
     private String name;
-
-    @XmlElement(required = true)
     private String version;
 
     /**
index 0e2c6be..37fe30b 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2019 Nordix Foundation.
+ *  Modifications Copyright (C) 2019,2022 Nordix Foundation.
  *  Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
@@ -24,7 +24,6 @@ package org.onap.policy.apex.model.basicmodel.concepts;
 
 import java.io.Serializable;
 import java.util.List;
-import javax.xml.bind.annotation.XmlType;
 import org.onap.policy.common.utils.validation.Assertions;
 
 /**
@@ -33,9 +32,6 @@ import org.onap.policy.common.utils.validation.Assertions;
  *
  * @author Liam Fallon (liam.fallon@ericsson.com)
  */
-
-@XmlType(name = "AxConcept", namespace = "http://www.onap.org/policy/apex-pdp")
-
 public abstract class AxConcept implements Serializable, Comparable<AxConcept> {
     private static final long serialVersionUID = -7434939557282697490L;
 
@@ -85,6 +81,12 @@ public abstract class AxConcept implements Serializable, Comparable<AxConcept> {
      */
     public abstract void clean();
 
+    /**
+     * Builds references used by a concept.
+     */
+    public void buildReferences() {
+    }
+
     /**
      * {@inheritDoc}.
      */
index 9b96d33..bd3b18e 100644 (file)
 
 package org.onap.policy.apex.model.basicmodel.concepts;
 
+import com.google.gson.annotations.SerializedName;
 import java.util.List;
 import java.util.Random;
 import java.util.UUID;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlRootElement;
-import javax.xml.bind.annotation.XmlType;
 import org.apache.commons.lang3.StringUtils;
 import org.onap.policy.apex.model.basicmodel.concepts.AxValidationResult.ValidationResult;
 import org.onap.policy.common.utils.validation.Assertions;
@@ -41,16 +37,9 @@ import org.onap.policy.common.utils.validation.Assertions;
  * <p>Validation checks that all fields are defined and that the key is valid. It also observes that descriptions are
  * blank and warns if the UUID is a zero UUID.
  */
-
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlRootElement(name = "apexKeyInfo", namespace = "http://www.onap.org/policy/apex-pdp")
-@XmlType(name = "AxKeyInfo", namespace = "http://www.onap.org/policy/apex-pdp",
-        propOrder = { "key", "uuid", "description" })
-
 public class AxKeyInfo extends AxConcept {
     private static final long serialVersionUID = -4023935924068914308L;
 
-    private static final int MAX_DESCRIPTION_LENGTH_8192 = 8192;
     private static final int UUID_BYTE_LENGTH_16 = 16;
 
     /*
@@ -58,13 +47,11 @@ public class AxKeyInfo extends AxConcept {
      */
     private static final Random sharedRandom = new Random();    // NOSONAR
 
-    @XmlElement(name = "key", required = true)
     private AxArtifactKey key;
 
-    @XmlElement(name = "UUID", required = true)
+    @SerializedName("UUID")
     private UUID uuid;
 
-    @XmlElement(required = true)
     private String description;
 
     /**
index d1cc99a..439b296 100644 (file)
@@ -30,11 +30,6 @@ import java.util.Set;
 import java.util.TreeMap;
 import java.util.TreeSet;
 import java.util.UUID;
-import javax.xml.bind.Unmarshaller;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlType;
 import org.onap.policy.apex.model.basicmodel.concepts.AxValidationResult.ValidationResult;
 import org.onap.policy.common.utils.validation.Assertions;
 
@@ -48,16 +43,10 @@ import org.onap.policy.common.utils.validation.Assertions;
  * the map is defined, that the key in each map entry matches the key if each entry value, and that no duplicate UUIDs
  * exist. Each key information entry is then validated individually.
  */
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlType(name = "AxKeyInformation", namespace = "http://www.onap.org/policy/apex-pdp",
-        propOrder = { "key", "keyInfoMap" })
-
 public class AxKeyInformation extends AxConcept implements AxConceptGetter<AxKeyInfo> {
     private static final long serialVersionUID = -2746380769017043888L;
 
-    @XmlElement(name = "key", required = true)
     private AxArtifactKey key;
-
     private Map<AxArtifactKey, AxKeyInfo> keyInfoMap;
 
     /**
@@ -101,22 +90,6 @@ public class AxKeyInformation extends AxConcept implements AxConceptGetter<AxKey
         this.keyInfoMap.putAll(keyInfoMap);
     }
 
-    /**
-     * When a model is unmarshalled from disk or from the database, the key information map is returned as a raw Hash
-     * Map. This method is called by JAXB after unmarshaling and is used to convert the hash map to a
-     * {@link NavigableMap} so that it will work with the {@link AxConceptGetter} interface.
-     *
-     * @param unmarshaler the unmarshaler that is unmarshaling the model
-     * @param parent the parent object of this object in the unmarshaler
-     */
-    public void afterUnmarshal(final Unmarshaller unmarshaler, final Object parent) {
-        // The map must be navigable to allow name and version searching,
-        // unmarshaling returns a hash map
-        final NavigableMap<AxArtifactKey, AxKeyInfo> navigablekeyInfoMap = new TreeMap<>();
-        navigablekeyInfoMap.putAll(keyInfoMap);
-        keyInfoMap = navigablekeyInfoMap;
-    }
-
     /**
      * This method generates default key information for all keys found in the concept passed in as a parameter that do
      * not already have key information.
@@ -159,6 +132,14 @@ public class AxKeyInformation extends AxConcept implements AxConceptGetter<AxKey
         return keyList;
     }
 
+    /**
+     * {@inheritDoc}.
+     */
+    @Override
+    public void buildReferences() {
+        keyInfoMap.values().stream().forEach(keyInfo -> keyInfo.buildReferences());
+    }
+
     /**
      * Sets the key of this concept.
      *
@@ -218,7 +199,7 @@ public class AxKeyInformation extends AxConcept implements AxConceptGetter<AxKey
     }
 
     /**
-     * Validate an key information entry.
+     * Validate a key information entry.
      *
      * @param keyInfoEntry the key information entry
      * @param uuidSet the set of UUIDs encountered in validation so far, the UUID of this entry is added to the set
index 5f63b9a..ce52b14 100644 (file)
@@ -25,14 +25,7 @@ package org.onap.policy.apex.model.basicmodel.concepts;
 import java.util.List;
 import java.util.Set;
 import java.util.TreeSet;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlRootElement;
-import javax.xml.bind.annotation.XmlType;
-import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
 import org.onap.policy.apex.model.basicmodel.concepts.AxValidationResult.ValidationResult;
-import org.onap.policy.apex.model.basicmodel.handling.KeyInfoMarshalFilter;
 import org.onap.policy.apex.model.basicmodel.service.ModelService;
 import org.onap.policy.common.utils.validation.Assertions;
 
@@ -47,25 +40,13 @@ import org.onap.policy.common.utils.validation.Assertions;
  * {@link AxArtifactKey} and {@link AxReferenceKey} usage references a key that exists. Finally, a check is made to
  * ensure that an {@link AxArtifactKey} instance exists for every {@link AxKeyInfo} instance.
  */
-
-@XmlRootElement(name = "apexModel", namespace = "http://www.onap.org/policy/apex-pdp")
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlType(name = "AxModel", namespace = "http://www.onap.org/policy/apex-pdp", propOrder =
-    { "key", "keyInformation" })
-
 public class AxModel extends AxConcept {
     private static final String IS_A_NULL_KEY = " is a null key";
 
     private static final long serialVersionUID = -771659065637205430L;
 
-    @XmlElement(name = "key", required = true)
     private AxArtifactKey key;
-
-    // @formatter:off
-    @XmlElement(name = "keyInformation", required = true)
-    @XmlJavaTypeAdapter(KeyInfoMarshalFilter.class)
     private AxKeyInformation keyInformation;
-    // @formatter:on
 
     /**
      * The Default Constructor creates this concept with a NULL artifact key.
index 6c671d3..b37bc47 100644 (file)
@@ -23,11 +23,6 @@ package org.onap.policy.apex.model.basicmodel.concepts;
 
 import java.util.ArrayList;
 import java.util.List;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlRootElement;
-import javax.xml.bind.annotation.XmlType;
 import org.onap.policy.apex.model.basicmodel.concepts.AxValidationResult.ValidationResult;
 import org.onap.policy.common.utils.validation.Assertions;
 
@@ -48,11 +43,6 @@ import org.onap.policy.common.utils.validation.Assertions;
  * VERSION_REGEXP regular expressions respectively and that the local name fields match the
  * LOCAL_NAME_REGEXP regular expression.
  */
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlRootElement(name = "apexReferenceKey", namespace = "http://www.onap.org/policy/apex-pdp")
-@XmlType(name = "AxReferenceKey", namespace = "http://www.onap.org/policy/apex-pdp", propOrder = { "parentKeyName",
-    "parentKeyVersion", "parentLocalName", "localName" })
-
 public class AxReferenceKey extends AxKey {
     private static final String PARENT_KEY_NAME = "parentKeyName";
     private static final String PARENT_KEY_VERSION = "parentKeyVersion";
@@ -61,28 +51,25 @@ public class AxReferenceKey extends AxKey {
 
     private static final long serialVersionUID = 8932717618579392561L;
 
-    /** Regular expression to specify the structure of local names in reference keys. */
+    /**
+     * Regular expression to specify the structure of local names in reference keys.
+     */
     public static final String LOCAL_NAME_REGEXP = "[A-Za-z0-9\\-_\\.]+|^$";
 
-    /** Regular expression to specify the structure of IDs in reference keys. */
+    /**
+     * Regular expression to specify the structure of IDs in reference keys.
+     */
     public static final String REFERENCE_KEY_ID_REGEXP =
-                    "[A-Za-z0-9\\-_]+:[0-9].[0-9].[0-9]:[A-Za-z0-9\\-_]+:[A-Za-z0-9\\-_]+";
+        "[A-Za-z0-9\\-_]+:[0-9].[0-9].[0-9]:[A-Za-z0-9\\-_]+:[A-Za-z0-9\\-_]+";
 
     private static final int PARENT_NAME_FIELD = 0;
     private static final int PARENT_VERSION_FIELD = 1;
     private static final int PARENT_LOCAL_NAME_FIELD = 2;
     private static final int LOCAL_NAME_FIELD = 3;
 
-    @XmlElement(required = true)
     private String parentKeyName;
-
-    @XmlElement(required = true)
     private String parentKeyVersion;
-
-    @XmlElement(required = true)
     private String parentLocalName;
-
-    @XmlElement(required = true)
     private String localName;
 
     /**
@@ -95,19 +82,17 @@ public class AxReferenceKey extends AxKey {
     /**
      * The Copy Constructor creates a key by copying another key.
      *
-     * @param referenceKey
-     *        the reference key to copy from
+     * @param referenceKey the reference key to copy from
      */
     public AxReferenceKey(final AxReferenceKey referenceKey) {
         this(referenceKey.getParentKeyName(), referenceKey.getParentKeyVersion(), referenceKey.getParentLocalName(),
-                        referenceKey.getLocalName());
+            referenceKey.getLocalName());
     }
 
     /**
      * Constructor to create a null reference key for the specified parent artifact key.
      *
-     * @param axArtifactKey
-     *        the parent artifact key of this reference key
+     * @param axArtifactKey the parent artifact key of this reference key
      */
     public AxReferenceKey(final AxArtifactKey axArtifactKey) {
         this(axArtifactKey.getName(), axArtifactKey.getVersion(), NULL_KEY_NAME, NULL_KEY_NAME);
@@ -116,10 +101,8 @@ public class AxReferenceKey extends AxKey {
     /**
      * Constructor to create a reference key for the given parent artifact key with the given local name.
      *
-     * @param axArtifactKey
-     *        the parent artifact key of this reference key
-     * @param localName
-     *        the local name of this reference key
+     * @param axArtifactKey the parent artifact key of this reference key
+     * @param localName     the local name of this reference key
      */
     public AxReferenceKey(final AxArtifactKey axArtifactKey, final String localName) {
         this(axArtifactKey, NULL_KEY_NAME, localName);
@@ -128,10 +111,8 @@ public class AxReferenceKey extends AxKey {
     /**
      * Constructor to create a reference key for the given parent reference key with the given local name.
      *
-     * @param parentReferenceKey
-     *        the parent reference key of this reference key
-     * @param localName
-     *        the local name of this reference key
+     * @param parentReferenceKey the parent reference key of this reference key
+     * @param localName          the local name of this reference key
      */
     public AxReferenceKey(final AxReferenceKey parentReferenceKey, final String localName) {
         this(parentReferenceKey.getParentArtifactKey(), parentReferenceKey.getLocalName(), localName);
@@ -141,12 +122,9 @@ public class AxReferenceKey extends AxKey {
      * Constructor to create a reference key for the given parent reference key (specified by the parent reference key's
      * artifact key and local name) with the given local name.
      *
-     * @param axArtifactKey
-     *        the artifact key of the parent reference key of this reference key
-     * @param parentLocalName
-     *        the local name of the parent reference key of this reference key
-     * @param localName
-     *        the local name of this reference key
+     * @param axArtifactKey   the artifact key of the parent reference key of this reference key
+     * @param parentLocalName the local name of the parent reference key of this reference key
+     * @param localName       the local name of this reference key
      */
     public AxReferenceKey(final AxArtifactKey axArtifactKey, final String parentLocalName, final String localName) {
         this(axArtifactKey.getName(), axArtifactKey.getVersion(), parentLocalName, localName);
@@ -156,12 +134,9 @@ public class AxReferenceKey extends AxKey {
      * Constructor to create a reference key for the given parent artifact key (specified by the parent artifact key's
      * name and version) with the given local name.
      *
-     * @param parentKeyName
-     *        the name of the parent artifact key of this reference key
-     * @param parentKeyVersion
-     *        the version of the parent artifact key of this reference key
-     * @param localName
-     *        the local name of this reference key
+     * @param parentKeyName    the name of the parent artifact key of this reference key
+     * @param parentKeyVersion the version of the parent artifact key of this reference key
+     * @param localName        the local name of this reference key
      */
     public AxReferenceKey(final String parentKeyName, final String parentKeyVersion, final String localName) {
         this(parentKeyName, parentKeyVersion, NULL_KEY_NAME, localName);
@@ -171,31 +146,26 @@ public class AxReferenceKey extends AxKey {
      * Constructor to create a reference key for the given parent key (specified by the parent key's name, version nad
      * local name) with the given local name.
      *
-     * @param parentKeyName
-     *        the parent key name of this reference key
-     * @param parentKeyVersion
-     *        the parent key version of this reference key
-     * @param parentLocalName
-     *        the parent local name of this reference key
-     * @param localName
-     *        the local name of this reference key
+     * @param parentKeyName    the parent key name of this reference key
+     * @param parentKeyVersion the parent key version of this reference key
+     * @param parentLocalName  the parent local name of this reference key
+     * @param localName        the local name of this reference key
      */
     public AxReferenceKey(final String parentKeyName, final String parentKeyVersion, final String parentLocalName,
-                    final String localName) {
+                          final String localName) {
         super();
         this.parentKeyName = Assertions.validateStringParameter(PARENT_KEY_NAME, parentKeyName, NAME_REGEXP);
         this.parentKeyVersion = Assertions.validateStringParameter(PARENT_KEY_VERSION, parentKeyVersion,
-                        VERSION_REGEXP);
+            VERSION_REGEXP);
         this.parentLocalName = Assertions.validateStringParameter(PARENT_LOCAL_NAME, parentLocalName,
-                        LOCAL_NAME_REGEXP);
+            LOCAL_NAME_REGEXP);
         this.localName = Assertions.validateStringParameter(LOCAL_NAME, localName, LOCAL_NAME_REGEXP);
     }
 
     /**
      * Constructor to create a key from the specified key ID.
      *
-     * @param id
-     *        the key ID in a format that respects the KEY_ID_REGEXP
+     * @param id the key ID in a format that respects the KEY_ID_REGEXP
      */
     public AxReferenceKey(final String id) {
         final var conditionedId = Assertions.validateStringParameter("id", id, REFERENCE_KEY_ID_REGEXP);
@@ -208,13 +178,13 @@ public class AxReferenceKey extends AxKey {
 
         // Initiate the new key
         parentKeyName = Assertions.validateStringParameter(PARENT_KEY_NAME, nameVersionNameArray[PARENT_NAME_FIELD],
-                        NAME_REGEXP);
+            NAME_REGEXP);
         parentKeyVersion = Assertions.validateStringParameter(PARENT_KEY_VERSION,
-                        nameVersionNameArray[PARENT_VERSION_FIELD], VERSION_REGEXP);
+            nameVersionNameArray[PARENT_VERSION_FIELD], VERSION_REGEXP);
         parentLocalName = Assertions.validateStringParameter(PARENT_LOCAL_NAME,
-                        nameVersionNameArray[PARENT_LOCAL_NAME_FIELD], LOCAL_NAME_REGEXP);
+            nameVersionNameArray[PARENT_LOCAL_NAME_FIELD], LOCAL_NAME_REGEXP);
         localName = Assertions.validateStringParameter(LOCAL_NAME, nameVersionNameArray[LOCAL_NAME_FIELD],
-                        LOCAL_NAME_REGEXP);
+            LOCAL_NAME_REGEXP);
     }
 
     /**
@@ -224,7 +194,7 @@ public class AxReferenceKey extends AxKey {
      */
     public static AxReferenceKey getNullKey() {
         return new AxReferenceKey(AxKey.NULL_KEY_NAME, AxKey.NULL_KEY_VERSION, AxKey.NULL_KEY_NAME,
-                        AxKey.NULL_KEY_NAME);
+            AxKey.NULL_KEY_NAME);
     }
 
     /**
@@ -274,8 +244,7 @@ public class AxReferenceKey extends AxKey {
     /**
      * Sets the parent artifact key of this reference key.
      *
-     * @param parentKey
-     *        the parent artifact key of this reference key
+     * @param parentKey the parent artifact key of this reference key
      */
     public void setParentArtifactKey(final AxArtifactKey parentKey) {
         Assertions.argumentNotNull(parentKey, "parentKey may not be null");
@@ -288,8 +257,7 @@ public class AxReferenceKey extends AxKey {
     /**
      * Sets the parent reference key of this reference key.
      *
-     * @param parentKey
-     *        the parent reference key of this reference key
+     * @param parentKey the parent reference key of this reference key
      */
     public void setParentReferenceKey(final AxReferenceKey parentKey) {
         Assertions.argumentNotNull(parentKey, "parentKey may not be null");
@@ -311,8 +279,7 @@ public class AxReferenceKey extends AxKey {
     /**
      * Sets the parent key name of this reference key.
      *
-     * @param parentKeyName
-     *        the parent key name of this reference key
+     * @param parentKeyName the parent key name of this reference key
      */
     public void setParentKeyName(final String parentKeyName) {
         this.parentKeyName = Assertions.validateStringParameter(PARENT_KEY_NAME, parentKeyName, NAME_REGEXP);
@@ -330,12 +297,11 @@ public class AxReferenceKey extends AxKey {
     /**
      * Sets the parent key version of this reference key.
      *
-     * @param parentKeyVersion
-     *        the parent key version of this reference key
+     * @param parentKeyVersion the parent key version of this reference key
      */
     public void setParentKeyVersion(final String parentKeyVersion) {
         this.parentKeyVersion = Assertions.validateStringParameter(PARENT_KEY_VERSION, parentKeyVersion,
-                        VERSION_REGEXP);
+            VERSION_REGEXP);
     }
 
     /**
@@ -350,12 +316,11 @@ public class AxReferenceKey extends AxKey {
     /**
      * Sets the parent local name of this reference key.
      *
-     * @param parentLocalName
-     *        the parent local name of this reference key
+     * @param parentLocalName the parent local name of this reference key
      */
     public void setParentLocalName(final String parentLocalName) {
         this.parentLocalName = Assertions.validateStringParameter(PARENT_LOCAL_NAME, parentLocalName,
-                        LOCAL_NAME_REGEXP);
+            LOCAL_NAME_REGEXP);
     }
 
     /**
@@ -370,8 +335,7 @@ public class AxReferenceKey extends AxKey {
     /**
      * Sets the local name of this reference key.
      *
-     * @param localName
-     *        the local name of this reference key
+     * @param localName the local name of this reference key
      */
     public void setLocalName(final String localName) {
         this.localName = Assertions.validateStringParameter(LOCAL_NAME, localName, LOCAL_NAME_REGEXP);
@@ -409,31 +373,31 @@ public class AxReferenceKey extends AxKey {
     @Override
     public AxValidationResult validate(final AxValidationResult result) {
         final var parentNameValidationErrorMessage = Assertions.getStringParameterValidationMessage(PARENT_KEY_NAME,
-                        parentKeyName, NAME_REGEXP);
+            parentKeyName, NAME_REGEXP);
         if (parentNameValidationErrorMessage != null) {
             result.addValidationMessage(new AxValidationMessage(this, this.getClass(), ValidationResult.INVALID,
-                            "parentKeyName invalid-" + parentNameValidationErrorMessage));
+                "parentKeyName invalid-" + parentNameValidationErrorMessage));
         }
 
         final var parentKeyVersionValidationErrorMessage = Assertions
-                        .getStringParameterValidationMessage(PARENT_KEY_VERSION, parentKeyVersion, VERSION_REGEXP);
+            .getStringParameterValidationMessage(PARENT_KEY_VERSION, parentKeyVersion, VERSION_REGEXP);
         if (parentKeyVersionValidationErrorMessage != null) {
             result.addValidationMessage(new AxValidationMessage(this, this.getClass(), ValidationResult.INVALID,
-                            "parentKeyVersion invalid-" + parentKeyVersionValidationErrorMessage));
+                "parentKeyVersion invalid-" + parentKeyVersionValidationErrorMessage));
         }
 
         final var parentLocalNameValidationErrorMessage = Assertions
-                        .getStringParameterValidationMessage(PARENT_LOCAL_NAME, parentLocalName, LOCAL_NAME_REGEXP);
+            .getStringParameterValidationMessage(PARENT_LOCAL_NAME, parentLocalName, LOCAL_NAME_REGEXP);
         if (parentLocalNameValidationErrorMessage != null) {
             result.addValidationMessage(new AxValidationMessage(this, this.getClass(), ValidationResult.INVALID,
-                            "parentLocalName invalid-" + parentLocalNameValidationErrorMessage));
+                "parentLocalName invalid-" + parentLocalNameValidationErrorMessage));
         }
 
         final var localNameValidationErrorMessage = Assertions.getStringParameterValidationMessage(LOCAL_NAME,
-                        localName, LOCAL_NAME_REGEXP);
+            localName, LOCAL_NAME_REGEXP);
         if (localNameValidationErrorMessage != null) {
             result.addValidationMessage(new AxValidationMessage(this, this.getClass(), ValidationResult.INVALID,
-                            "localName invalid-" + localNameValidationErrorMessage));
+                "localName invalid-" + localNameValidationErrorMessage));
         }
 
         return result;
index 294a664..347e46a 100644 (file)
@@ -1,6 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
+ *  Modifications Copyright (C) 2022 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  *
  * @author Liam Fallon (liam.fallon@ericsson.com)
  */
-
-@XmlSchema(namespace = "http://www.onap.org/policy/apex-pdp", elementFormDefault = XmlNsForm.QUALIFIED,
-        xmlns = { @XmlNs(namespaceURI = "http://www.onap.org/policy/apex-pdp", prefix = "") })
-
 package org.onap.policy.apex.model.basicmodel.concepts;
-
-import javax.xml.bind.annotation.XmlNs;
-import javax.xml.bind.annotation.XmlNsForm;
-import javax.xml.bind.annotation.XmlSchema;
diff --git a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelCustomGsonMapAdapter.java b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelCustomGsonMapAdapter.java
new file mode 100644 (file)
index 0000000..cb67590
--- /dev/null
@@ -0,0 +1,118 @@
+/*-
+ * ============LICENSE_START=======================================================
+ *  Copyright (C) 2022 Nordix Foundation.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.policy.apex.model.basicmodel.handling;
+
+import com.google.gson.JsonArray;
+import com.google.gson.JsonDeserializationContext;
+import com.google.gson.JsonDeserializer;
+import com.google.gson.JsonElement;
+import com.google.gson.JsonObject;
+import com.google.gson.JsonParseException;
+import com.google.gson.JsonSerializationContext;
+import com.google.gson.JsonSerializer;
+import java.lang.reflect.ParameterizedType;
+import java.lang.reflect.Type;
+import java.util.AbstractMap;
+import java.util.Map;
+import java.util.Map.Entry;
+import java.util.TreeMap;
+import java.util.stream.Collectors;
+import java.util.stream.StreamSupport;
+
+@SuppressWarnings("rawtypes")
+public class ApexModelCustomGsonMapAdapter implements JsonSerializer<Map>, JsonDeserializer<Map> {
+    private static final String MAP_ENTRY_KEY = "entry";
+
+    @SuppressWarnings("unchecked")
+    @Override
+    public Map deserialize(JsonElement jsonElement, Type typeOfT, JsonDeserializationContext context)
+        throws JsonParseException {
+
+        if (!(jsonElement instanceof JsonObject)) {
+            throw new JsonParseException("could not parse JSON map, map is not a JsonObject");
+        }
+
+        JsonObject jsonObject = (JsonObject) jsonElement;
+
+        if (jsonObject.size() != 1) {
+            throw new JsonParseException("could not parse JSON map, map must be in a JsonObject with a single member");
+        }
+
+        JsonArray mapEntryArray = (JsonArray) jsonObject.get(MAP_ENTRY_KEY);
+        if (mapEntryArray == null) {
+            throw new JsonParseException("could not parse JSON map, map \"entry\" in JsonObject not found");
+        }
+
+        return new TreeMap(
+            StreamSupport
+                .stream(mapEntryArray.spliterator(), true)
+                .map(element -> deserializeMapEntry(element, typeOfT, context))
+                .collect(Collectors.toMap(entry -> entry.getKey(), entry -> entry.getValue()))
+        );
+    }
+
+    @Override
+    public JsonElement serialize(Map sourceMap, Type typeOfSrc, JsonSerializationContext context) {
+
+        // A map is stored in a JsonArray
+        JsonArray mapEntryArray = new JsonArray();
+
+        for (Object mapEntryObject : sourceMap.entrySet()) {
+            Entry mapEntry = (Entry) mapEntryObject;
+            mapEntryArray.add(serializeMapEntry(mapEntry, typeOfSrc, context));
+        }
+
+        JsonObject returnObject = new JsonObject();
+        returnObject.add(MAP_ENTRY_KEY, mapEntryArray);
+
+        return returnObject;
+    }
+
+    @SuppressWarnings("unchecked")
+    private static Entry deserializeMapEntry(JsonElement element, Type typeOfT, JsonDeserializationContext context) {
+        // Get the types of the map
+        ParameterizedType pt = (ParameterizedType) typeOfT;
+
+        // Type of the key and value of the map
+        Type keyType = pt.getActualTypeArguments()[0];
+        Type valueType = pt.getActualTypeArguments()[1];
+
+        // Deserialize the key and value
+        return new AbstractMap.SimpleEntry(
+            context.deserialize(element.getAsJsonObject().get("key"), keyType),
+            context.deserialize(element.getAsJsonObject().get("value"), valueType));
+    }
+
+    private static JsonElement serializeMapEntry(Entry sourceEntry, Type typeOfSrc, JsonSerializationContext context) {
+        // Get the types of the map
+        ParameterizedType pt = (ParameterizedType) typeOfSrc;
+
+        // Type of the key and value of the map
+        Type keyType = pt.getActualTypeArguments()[0];
+        Type valueType = pt.getActualTypeArguments()[1];
+
+        JsonObject entryObject = new JsonObject();
+        entryObject.add("key", context.serialize(sourceEntry.getKey(), keyType));
+        entryObject.add("value", context.serialize(sourceEntry.getValue(), valueType));
+
+        return entryObject;
+    }
+}
diff --git a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelCustomGsonRefereceKeyAdapter.java b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelCustomGsonRefereceKeyAdapter.java
new file mode 100644 (file)
index 0000000..d731c86
--- /dev/null
@@ -0,0 +1,50 @@
+/*-
+ * ============LICENSE_START=======================================================
+ *  Copyright (C) 2022 Nordix Foundation.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.policy.apex.model.basicmodel.handling;
+
+import com.google.gson.JsonDeserializationContext;
+import com.google.gson.JsonDeserializer;
+import com.google.gson.JsonElement;
+import com.google.gson.JsonObject;
+import com.google.gson.JsonParseException;
+import java.lang.reflect.Type;
+import org.onap.policy.apex.model.basicmodel.concepts.AxReferenceKey;
+
+public class ApexModelCustomGsonRefereceKeyAdapter implements JsonDeserializer<AxReferenceKey> {
+
+    @Override
+    public AxReferenceKey deserialize(JsonElement jsonElement, Type typeOfT, JsonDeserializationContext context)
+        throws JsonParseException {
+
+        if (jsonElement instanceof JsonObject) {
+            return new AxReferenceKey(
+                jsonElement.getAsJsonObject().get("parentKeyName").getAsString(),
+                jsonElement.getAsJsonObject().get("parentKeyVersion").getAsString(),
+                jsonElement.getAsJsonObject().get("parentLocalName").getAsString(),
+                jsonElement.getAsJsonObject().get("localName").getAsString()
+            );
+        } else {
+            AxReferenceKey returnKey = new AxReferenceKey();
+            returnKey.setLocalName(jsonElement.getAsString());
+            return returnKey;
+        }
+    }
+}
index 908ad31..54b5651 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2021 Nordix Foundation.
+ *  Modifications Copyright (C) 2021-2022 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -23,6 +23,8 @@ package org.onap.policy.apex.model.basicmodel.handling;
 
 import java.io.File;
 import java.io.FileOutputStream;
+import lombok.Getter;
+import lombok.Setter;
 import org.onap.policy.apex.model.basicmodel.concepts.ApexException;
 import org.onap.policy.apex.model.basicmodel.concepts.AxModel;
 import org.slf4j.ext.XLogger;
@@ -34,42 +36,21 @@ import org.slf4j.ext.XLoggerFactory;
  * @author Liam Fallon (liam.fallon@ericsson.com)
  * @param <M> the type of Apex model to write to file, must be a sub class of {@link AxModel}
  */
+@Getter
+@Setter
 public class ApexModelFileWriter<M extends AxModel> {
     private static final XLogger LOGGER = XLoggerFactory.getXLogger(ApexModelFileWriter.class);
 
     // Should models being written to files be valid
-    private boolean validateFlag;
+    private boolean validate;
 
     /**
      * Constructor, set the validation flag.
      *
-     * @param validateFlag indicates if validation be performed prior to output
+     * @param validate indicates if validation be performed prior to output
      */
-    public ApexModelFileWriter(final boolean validateFlag) {
-        this.validateFlag = validateFlag;
-    }
-
-    /**
-     * Write a model to an XML file.
-     *
-     * @param model The model to write
-     * @param rootModelClass The concept class
-     * @param modelFileName The name of the file to write to
-     * @throws ApexException thrown on errors
-     */
-    public void apexModelWriteXmlFile(final M model, final Class<M> rootModelClass, final String modelFileName)
-                    throws ApexException {
-        LOGGER.debug("running apexModelWriteXMLFile . . .");
-
-        final ApexModelWriter<M> modelWriter = new ApexModelWriter<>(rootModelClass);
-        modelWriter.setValidateFlag(validateFlag);
-        modelWriter.getCDataFieldSet().add("description");
-        modelWriter.getCDataFieldSet().add("logic");
-        modelWriter.getCDataFieldSet().add("uiLogic");
-
-        writeModelFile(model, modelWriter, modelFileName);
-
-        LOGGER.debug("ran apexModelWriteXMLFile");
+    public ApexModelFileWriter(final boolean validate) {
+        this.validate = validate;
     }
 
     /**
@@ -85,32 +66,13 @@ public class ApexModelFileWriter<M extends AxModel> {
         LOGGER.debug("running apexModelWriteJSONFile . . .");
 
         final ApexModelWriter<M> modelWriter = new ApexModelWriter<>(rootModelClass);
-        modelWriter.setJsonOutput(true);
-        modelWriter.setValidateFlag(validateFlag);
+        modelWriter.setValidate(validate);
 
         writeModelFile(model, modelWriter, modelFileName);
 
         LOGGER.debug("ran apexModelWriteJSONFile");
     }
 
-    /**
-     * Checks if the validation flag is set.
-     *
-     * @return true, the validation flag is set
-     */
-    public boolean isValidateFlag() {
-        return validateFlag;
-    }
-
-    /**
-     * Sets the validate flag.
-     *
-     * @param validateFlag the validate flag value
-     */
-    public void setValidateFlag(final boolean validateFlag) {
-        this.validateFlag = validateFlag;
-    }
-
     /**
      * Write a model to a file using a model writer.
      *
index 7e136f6..a9bd2fe 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2019-2021 Nordix Foundation.
+ *  Modifications Copyright (C) 2019-2022 Nordix Foundation.
  *  Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
 
 package org.onap.policy.apex.model.basicmodel.handling;
 
+import com.google.gson.Gson;
+import com.google.gson.GsonBuilder;
 import java.io.BufferedReader;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.InputStreamReader;
-import java.io.StringReader;
-import java.util.regex.Pattern;
-import javax.xml.XMLConstants;
-import javax.xml.bind.JAXBElement;
-import javax.xml.bind.JAXBException;
-import javax.xml.bind.Unmarshaller;
-import javax.xml.transform.stream.StreamSource;
-import javax.xml.validation.SchemaFactory;
-import org.eclipse.persistence.jaxb.JAXBContextFactory;
-import org.eclipse.persistence.jaxb.MarshallerProperties;
-import org.eclipse.persistence.oxm.MediaType;
+import java.util.Map;
+import lombok.Getter;
+import lombok.Setter;
 import org.onap.policy.apex.model.basicmodel.concepts.AxConcept;
+import org.onap.policy.apex.model.basicmodel.concepts.AxReferenceKey;
 import org.onap.policy.apex.model.basicmodel.concepts.AxValidationResult;
-import org.onap.policy.common.utils.resources.ResourceUtils;
 import org.onap.policy.common.utils.resources.TextFileUtils;
 import org.onap.policy.common.utils.validation.Assertions;
 import org.slf4j.ext.XLogger;
 import org.slf4j.ext.XLoggerFactory;
 
 /**
- * This class reads an Apex concept from an XML file into a Java Apex Concept {@link AxConcept}.
+ * This class reads an Apex concept from a file into a Java Apex Concept {@link AxConcept}.
  *
  * @author Liam Fallon (liam.fallon@ericsson.com)
  * @param <C> the type of Apex concept to read, must be a sub class of {@link AxConcept}
  */
+@Getter
+@Setter
 public class ApexModelReader<C extends AxConcept> {
     // Get a reference to the logger
     private static final XLogger LOGGER = XLoggerFactory.getXLogger(ApexModelReader.class);
 
-    // Regular expressions for checking input types
-    // (starts with <?xml...>
-    private static final String XML_INPUT_TYPE_REGEXP = "^\\s*<\\?xml.*>\\s*";
-    // starts with some kind of bracket [ or (
-    private static final String JSON_INPUT_TYPE_REGEXP = "^\\s*[\\(\\{\\[][\\s\\S]*[\\)\\}\\]]";
-    // or {, then has something, then has
-    // and has a close bracket
+    // Use GSON to deserialize JSON
+    private static Gson gson = new GsonBuilder()
+        .registerTypeAdapter(AxReferenceKey.class, new ApexModelCustomGsonRefereceKeyAdapter())
+        .registerTypeAdapter(Map.class, new ApexModelCustomGsonMapAdapter())
+        .setPrettyPrinting()
+        .create();
 
     // Â The root class of the concept we are reading
     private final Class<C> rootConceptClass;
 
-    // The unmarshaller for the Apex concepts
-    private Unmarshaller unmarshaller = null;
-
     // All read concepts are validated after reading if this flag is set
-    private boolean validateFlag = true;
+    private boolean validate = true;
 
     /**
      * Constructor, initiates the reader with validation on.
@@ -81,17 +73,6 @@ public class ApexModelReader<C extends AxConcept> {
     public ApexModelReader(final Class<C> rootConceptClass) throws ApexModelException {
         // Save the root concept class
         this.rootConceptClass = rootConceptClass;
-
-        try {
-            final var jaxbContext = JAXBContextFactory.createContext(new Class[] {rootConceptClass}, null);
-
-            // Set up the unmarshaller to carry out validation
-            unmarshaller = jaxbContext.createUnmarshaller();
-            unmarshaller.setEventHandler(new javax.xml.bind.helpers.DefaultValidationEventHandler());
-        } catch (final JAXBException e) {
-            LOGGER.error("Unable to set JAXB context", e);
-            throw new ApexModelException("Unable to set JAXB context", e);
-        }
     }
 
     /**
@@ -103,36 +84,11 @@ public class ApexModelReader<C extends AxConcept> {
      */
     public ApexModelReader(final Class<C> rootConceptClass, final boolean validate) throws ApexModelException {
         this(rootConceptClass);
-        this.validateFlag = validate;
-    }
-
-    /**
-     * Set the schema to use for reading XML files.
-     *
-     * @param schemaFileName the schema file to use
-     * @throws ApexModelException if the schema cannot be set
-     */
-    public void setSchema(final String schemaFileName) throws ApexModelException {
-        // Has a schema been set
-        if (schemaFileName != null) {
-            try {
-                // Set the concept schema
-                final var schemaUrl = ResourceUtils.getUrlResource(schemaFileName);
-                final var apexConceptSchema =
-                        SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI).newSchema(schemaUrl);
-                unmarshaller.setSchema(apexConceptSchema);
-            } catch (final Exception e) {
-                LOGGER.error("Unable to load schema ", e);
-                throw new ApexModelException("Unable to load schema", e);
-            }
-        } else {
-            // Clear the schema
-            unmarshaller.setSchema(null);
-        }
+        this.validate = validate;
     }
 
     /**
-     * This method checks the specified Apex concept XML file and reads it into an Apex concept.
+     * This method checks the specified Apex concept file and reads it into an Apex concept.
      *
      * @param apexConceptStream the apex concept stream
      * @return the Apex concept
@@ -179,28 +135,23 @@ public class ApexModelReader<C extends AxConcept> {
 
         LOGGER.entry("reading Apex concept from string . . .");
 
-        final var apexString = apexConceptString.trim();
-
-        // Set the type of input for this stream
-        setInputType(apexString);
-
-        // The Apex Concept
         C apexConcept = null;
-
-        // Use JAXB to read and verify the Apex concept XML file
         try {
-            // Load the configuration file
-            final var source = new StreamSource(new StringReader(apexString));
-            final JAXBElement<C> rootElement = unmarshaller.unmarshal(source, rootConceptClass);
-            apexConcept = rootElement.getValue();
-        } catch (final JAXBException e) {
-            throw new ApexModelException("Unable to unmarshal Apex concept ", e);
+            apexConcept = gson.fromJson(apexConceptString, rootConceptClass);
+        } catch (final Exception je) {
+            throw new ApexModelException("Unable to unmarshal Apex concept ", je);
+        }
+
+        if (apexConcept == null) {
+            throw new ApexModelException("Unable to unmarshal Apex concept, unmarshaled model is null ");
         }
 
         LOGGER.debug("reading of Apex concept {} completed");
 
+        apexConcept.buildReferences();
+
         // Check if the concept should be validated
-        if (validateFlag) {
+        if (validate) {
             // Validate the configuration file
             final AxValidationResult validationResult = apexConcept.validate(new AxValidationResult());
             if (validationResult.isValid()) {
@@ -215,54 +166,4 @@ public class ApexModelReader<C extends AxConcept> {
             return apexConcept;
         }
     }
-
-    /**
-     * Gets the value of the validation flag.
-     *
-     * @return the validation flag value
-     */
-    public boolean getValidateFlag() {
-        return validateFlag;
-    }
-
-    /**
-     * Sets the validation flag.
-     *
-     * @param validateFlag the validation flag value
-     */
-    public void setValidateFlag(final boolean validateFlag) {
-        this.validateFlag = validateFlag;
-    }
-
-    /**
-     * Set the type of input for the concept reader.
-     *
-     * @param apexConceptString The stream with
-     * @throws ApexModelException on errors setting input type
-     */
-    private void setInputType(final String apexConceptString) throws ApexModelException {
-        // Check the input type
-        if (Pattern.compile(JSON_INPUT_TYPE_REGEXP).matcher(apexConceptString).find()) {
-            // is json
-            try {
-                unmarshaller.setProperty(MarshallerProperties.MEDIA_TYPE, MediaType.APPLICATION_JSON);
-                unmarshaller.setProperty(MarshallerProperties.JSON_INCLUDE_ROOT, true);
-            } catch (final Exception e) {
-                LOGGER.warn("JAXB error setting marshaller for JSON Input", e);
-                throw new ApexModelException("JAXB error setting unmarshaller for JSON input", e);
-            }
-        } else if (Pattern.compile(XML_INPUT_TYPE_REGEXP).matcher(apexConceptString).find()) {
-            // is xml
-            try {
-                unmarshaller.setProperty(MarshallerProperties.MEDIA_TYPE, MediaType.APPLICATION_XML);
-            } catch (final Exception e) {
-                LOGGER.warn("JAXB error setting marshaller for XML Input", e);
-                throw new ApexModelException("JAXB error setting unmarshaller for XML input", e);
-            }
-        } else {
-            LOGGER.warn("format of input for Apex concept is neither JSON nor XML");
-            throw new ApexModelException("format of input for Apex concept is neither JSON nor XML");
-        }
-    }
-
 }
index dea32df..79d69bd 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2019-2021 Nordix Foundation.
+ *  Modifications Copyright (C) 2019-2022 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -29,7 +29,7 @@ import org.slf4j.ext.XLogger;
 import org.slf4j.ext.XLoggerFactory;
 
 /**
- * This class is used to save Apex models to file in XML or JSON format.
+ * This class is used to save Apex models to file in JSON format.
  *
  * @author Liam Fallon (liam.fallon@ericsson.com)
  * @param <M> the type of Apex model to save to file, must be a sub class of {@link AxModel}
@@ -51,7 +51,7 @@ public class ApexModelSaver<M extends AxModel> {
      * @param rootModelClass the class of the model, a sub class of {@link AxModel}
      * @param model the model to write, an instance of a sub class of {@link AxModel}
      * @param writePath the directory to which models will be written. The name of the written model will be the Model
-     *        Name for its key with the suffix {@code .xml} or {@code .json}.
+     *        Name for its key with the suffix {@code .json}.
      */
     public ApexModelSaver(final Class<M> rootModelClass, final M model, final String writePath) {
         Assertions.argumentNotNull(rootModelClass, "argument rootModelClass may not be null");
@@ -63,21 +63,6 @@ public class ApexModelSaver<M extends AxModel> {
         this.writePath = writePath;
     }
 
-    /**
-     * Write an Apex model to a file in XML format. The model will be written to {@code <writePath/modelKeyName.xml>}
-     *
-     * @throws ApexException on errors writing the Apex model
-     */
-    public void apexModelWriteXml() throws ApexException {
-        LOGGER.debug("running apexModelWriteXML . . .");
-
-        // Write the file to disk
-        final var xmlFile = new File(writePath + File.separatorChar + model.getKey().getName() + ".xml");
-        new ApexModelFileWriter<M>(true).apexModelWriteXmlFile(model, rootModelClass, xmlFile.getPath());
-
-        LOGGER.debug("ran apexModelWriteXML");
-    }
-
     /**
      * Write an Apex model to a file in JSON format. The model will be written to {@code <writePath/modelKeyName.json>}
      *
index de6a72f..a9df23a 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2019-2021 Nordix Foundation.
+ *  Modifications Copyright (C) 2019-2022 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -22,6 +22,8 @@
 package org.onap.policy.apex.model.basicmodel.handling;
 
 import java.io.ByteArrayOutputStream;
+import lombok.Getter;
+import lombok.Setter;
 import org.onap.policy.apex.model.basicmodel.concepts.ApexException;
 import org.onap.policy.apex.model.basicmodel.concepts.AxConcept;
 import org.onap.policy.common.utils.validation.Assertions;
@@ -34,19 +36,21 @@ import org.slf4j.ext.XLoggerFactory;
  * @author Liam Fallon (liam.fallon@ericsson.com)
  * @param <C> the type of Apex concept to write to a string, must be a sub class of {@link AxConcept}
  */
+@Getter
+@Setter
 public class ApexModelStringWriter<C extends AxConcept> {
     private static final XLogger LOGGER = XLoggerFactory.getXLogger(ApexModelStringWriter.class);
 
     // Should concepts being written to files be valid
-    private boolean validateFlag;
+    private boolean validate;
 
     /**
      * Constructor, set the validation flag.
      *
-     * @param validateFlag Should validation be performed prior to output
+     * @param validate Should validation be performed prior to output
      */
-    public ApexModelStringWriter(final boolean validateFlag) {
-        this.validateFlag = validateFlag;
+    public ApexModelStringWriter(final boolean validate) {
+        this.validate = validate;
     }
 
     /**
@@ -54,46 +58,14 @@ public class ApexModelStringWriter<C extends AxConcept> {
      *
      * @param concept The concept to write
      * @param rootConceptClass The concept class
-     * @param jsonFlag writes JSON if true, and a generic string if false
      * @return The string with the concept
      * @throws ApexException thrown on errors
      */
-    public String writeString(final C concept, final Class<C> rootConceptClass, final boolean jsonFlag)
+    public String writeString(final C concept, final Class<C> rootConceptClass)
                     throws ApexException {
         Assertions.argumentNotNull(concept, "concept may not be null");
 
-        if (jsonFlag) {
-            return writeJsonString(concept, rootConceptClass);
-        } else {
-            return concept.toString();
-        }
-    }
-
-    /**
-     * Write a concept to an XML string.
-     *
-     * @param concept The concept to write
-     * @param rootConceptClass The concept class
-     * @return The string with the concept
-     * @throws ApexException thrown on errors
-     */
-    public String writeXmlString(final C concept, final Class<C> rootConceptClass) throws ApexException {
-        LOGGER.debug("running writeXMLString . . .");
-
-        final ApexModelWriter<C> conceptWriter = new ApexModelWriter<>(rootConceptClass);
-        conceptWriter.setValidateFlag(validateFlag);
-        conceptWriter.getCDataFieldSet().add("description");
-        conceptWriter.getCDataFieldSet().add("logic");
-        conceptWriter.getCDataFieldSet().add("uiLogic");
-
-        try (var baOutputStream = new ByteArrayOutputStream()) {
-            conceptWriter.write(concept, baOutputStream);
-            return baOutputStream.toString();
-        } catch (final Exception e) {
-            LOGGER.warn("error writing XML string", e);
-            throw new ApexException("error writing XML string", e);
-        }
-
+        return writeJsonString(concept, rootConceptClass);
     }
 
     /**
@@ -108,8 +80,7 @@ public class ApexModelStringWriter<C extends AxConcept> {
         LOGGER.debug("running writeJSONString . . .");
 
         final ApexModelWriter<C> conceptWriter = new ApexModelWriter<>(rootConceptClass);
-        conceptWriter.setJsonOutput(true);
-        conceptWriter.setValidateFlag(validateFlag);
+        conceptWriter.setValidate(validate);
 
         try (var baOutputStream = new ByteArrayOutputStream()) {
             conceptWriter.write(concept, baOutputStream);
@@ -120,22 +91,4 @@ public class ApexModelStringWriter<C extends AxConcept> {
         }
 
     }
-
-    /**
-     * Checks if is validate flag.
-     *
-     * @return true, if checks if is validate flag
-     */
-    public boolean isValidateFlag() {
-        return validateFlag;
-    }
-
-    /**
-     * Sets the validate flag.
-     *
-     * @param validateFlag the validate flag
-     */
-    public void setValidateFlag(final boolean validateFlag) {
-        this.validateFlag = validateFlag;
-    }
 }
index 9e43f76..3496226 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2019-2021 Nordix Foundation.
+ *  Modifications Copyright (C) 2019-2022 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
 
 package org.onap.policy.apex.model.basicmodel.handling;
 
+import com.google.gson.Gson;
+import com.google.gson.GsonBuilder;
+import java.io.IOException;
 import java.io.OutputStream;
 import java.io.OutputStreamWriter;
 import java.io.Writer;
-import java.util.Set;
-import java.util.TreeSet;
-import javax.xml.XMLConstants;
-import javax.xml.bind.JAXBException;
-import javax.xml.bind.Marshaller;
-import javax.xml.parsers.DocumentBuilderFactory;
-import javax.xml.parsers.ParserConfigurationException;
-import javax.xml.transform.OutputKeys;
-import javax.xml.transform.Transformer;
-import javax.xml.transform.TransformerConfigurationException;
-import javax.xml.transform.TransformerException;
-import javax.xml.transform.TransformerFactory;
-import javax.xml.transform.dom.DOMSource;
-import javax.xml.transform.stream.StreamResult;
-import org.eclipse.persistence.jaxb.JAXBContextFactory;
-import org.eclipse.persistence.jaxb.MarshallerProperties;
-import org.eclipse.persistence.oxm.MediaType;
+import java.util.Map;
+import lombok.Getter;
+import lombok.Setter;
 import org.onap.policy.apex.model.basicmodel.concepts.AxConcept;
+import org.onap.policy.apex.model.basicmodel.concepts.AxReferenceKey;
 import org.onap.policy.apex.model.basicmodel.concepts.AxValidationResult;
 import org.onap.policy.common.utils.validation.Assertions;
 import org.slf4j.ext.XLogger;
 import org.slf4j.ext.XLoggerFactory;
 
 /**
- * This class writes an Apex concept to an XML file or JSON file from a Java Apex Concept.
+ * This class writes an Apex concept to a file from a Java Apex Concept.
  *
  * @param <C> the type of Apex concept to write, must be a sub class of {@link AxConcept}
  * @author John Keeney (john.keeney@ericsson.com)
  */
+@Getter
+@Setter
 public class ApexModelWriter<C extends AxConcept> {
 
     private static final String CONCEPT_MAY_NOT_BE_NULL = "concept may not be null";
     private static final String CONCEPT_WRITER_MAY_NOT_BE_NULL = "concept writer may not be null";
     private static final String CONCEPT_STREAM_MAY_NOT_BE_NULL = "concept stream may not be null";
 
+    // Use GSON to serialize JSON
+    private static Gson gson = new GsonBuilder()
+        .registerTypeAdapter(AxReferenceKey.class, new ApexModelCustomGsonRefereceKeyAdapter())
+        .registerTypeAdapter(Map.class, new ApexModelCustomGsonMapAdapter())
+        .setPrettyPrinting()
+        .create();
+
     // Get a reference to the logger
     private static final XLogger LOGGER = XLoggerFactory.getXLogger(ApexModelWriter.class);
 
-    // Writing as JSON or XML
-    private boolean jsonOutput = false;
-
-    // The list of fields to output as CDATA
-    private final Set<String> cdataFieldSet = new TreeSet<>();
-
-    // The Marshaller for the Apex concepts
-    private Marshaller marshaller = null;
+    // Â The root class of the concept we are reading
+    private final Class<C> rootConceptClass;
 
     // All written concepts are validated before writing if this flag is set
-    private boolean validateFlag = true;
+    private boolean validate = true;
 
     /**
-     * Constructor, initiates the writer.
+     * Constructor, initiates the writer with validation on.
      *
      * @param rootConceptClass the root concept class for concept reading
-     * @throws ApexModelException the apex concept writer exception
+     * @throws ApexModelException the apex concept reader exception
      */
     public ApexModelWriter(final Class<C> rootConceptClass) throws ApexModelException {
-        // Set up Eclipselink for XML and JSON output
-        System.setProperty("javax.xml.bind.context.factory", "org.eclipse.persistence.jaxb.JAXBContextFactory");
-
-        try {
-            final var jaxbContext = JAXBContextFactory.createContext(new Class[]{rootConceptClass}, null);
-
-            // Set up the unmarshaller to carry out validation
-            marshaller = jaxbContext.createMarshaller();
-            marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);
-            marshaller.setEventHandler(new javax.xml.bind.helpers.DefaultValidationEventHandler());
-        } catch (final JAXBException e) {
-            throw new ApexModelException("JAXB marshaller creation exception", e);
-        }
-    }
-
-    /**
-     * The set of fields to be output as CDATA.
-     *
-     * @return the set of fields
-     */
-    public Set<String> getCDataFieldSet() {
-        return cdataFieldSet;
-    }
-
-    /**
-     * Return true if JSON output enabled, XML output if false.
-     *
-     * @return true for JSON output
-     */
-    public boolean isJsonOutput() {
-        return jsonOutput;
-    }
-
-    /**
-     * Set the value of JSON output, true for JSON output, false for XML output.
-     *
-     * @param jsonOutput true for JSON output
-     * @throws ApexModelException on errors setting output type
-     */
-    public void setJsonOutput(final boolean jsonOutput) throws ApexModelException {
-        this.jsonOutput = jsonOutput;
-
-        // Set up output specific parameters
-        if (this.jsonOutput) {
-            try {
-                marshaller.setProperty(MarshallerProperties.MEDIA_TYPE, MediaType.APPLICATION_JSON);
-                marshaller.setProperty(MarshallerProperties.JSON_INCLUDE_ROOT, true);
-            } catch (final Exception e) {
-                throw new ApexModelException("JAXB error setting marshaller for JSON output", e);
-            }
-        } else {
-            try {
-                marshaller.setProperty(MarshallerProperties.MEDIA_TYPE, MediaType.APPLICATION_XML);
-            } catch (final Exception e) {
-                throw new ApexModelException("JAXB error setting marshaller for XML output", e);
-            }
-        }
+        // Save the root concept class
+        this.rootConceptClass = rootConceptClass;
     }
 
     /**
      * This method validates the Apex concept then writes it into a stream.
      *
-     * @param concept           the concept to write
+     * @param concept the concept to write
      * @param apexConceptStream the stream to write to
      * @throws ApexModelException on validation or writing exceptions
      */
@@ -157,7 +95,7 @@ public class ApexModelWriter<C extends AxConcept> {
     /**
      * This method validates the Apex concept then writes it into a writer.
      *
-     * @param concept           the concept to write
+     * @param concept the concept to write
      * @param apexConceptWriter the writer to write to
      * @throws ApexModelException on validation or writing exceptions
      */
@@ -166,84 +104,23 @@ public class ApexModelWriter<C extends AxConcept> {
         Assertions.argumentNotNull(apexConceptWriter, CONCEPT_WRITER_MAY_NOT_BE_NULL);
 
         // Check if we should validate the concept
-        if (validateFlag) {
+        if (validate) {
             // Validate the concept first
             final AxValidationResult validationResult = concept.validate(new AxValidationResult());
             if (!validationResult.isValid()) {
                 String message =
-                    "Apex concept xml (" + concept.getKey().getId() + ") validation failed: " + validationResult
-                        .toString();
+                    "Apex concept (" + concept.getKey().getId() + ") validation failed: " + validationResult.toString();
                 throw new ApexModelException(message);
             }
         }
 
-        if (jsonOutput) {
-            writeJson(concept, apexConceptWriter);
-        } else {
-            writeXml(concept, apexConceptWriter);
-        }
-    }
-
-    /**
-     * This method writes the Apex concept into a writer in XML format.
-     *
-     * @param concept           the concept to write
-     * @param apexConceptWriter the writer to write to
-     * @throws ApexModelException on validation or writing exceptions
-     */
-    private void writeXml(final C concept, final Writer apexConceptWriter) throws ApexModelException {
-        Assertions.argumentNotNull(concept, CONCEPT_MAY_NOT_BE_NULL);
-
-        LOGGER.debug("writing Apex concept XML . . .");
-
-        try {
-            // Write the concept into a DOM document, then transform to add CDATA fields and pretty
-            // print, then write out the result
-            final var docBuilderFactory = DocumentBuilderFactory.newInstance();
-            docBuilderFactory.setAttribute(XMLConstants.ACCESS_EXTERNAL_DTD, "");
-            docBuilderFactory.setAttribute(XMLConstants.ACCESS_EXTERNAL_SCHEMA, "");
-
-            docBuilderFactory.setFeature(XMLConstants.FEATURE_SECURE_PROCESSING, true);
-            final var document = docBuilderFactory.newDocumentBuilder().newDocument();
-
-            // Marshal the concept into the empty document.
-            marshaller.marshal(concept, document);
-
-            final var domTransformer = getTransformer();
-
-            // Convert the cDataFieldSet into a space delimited string
-            domTransformer.setOutputProperty(OutputKeys.CDATA_SECTION_ELEMENTS,
-                cdataFieldSet.toString().replaceAll("[\\[\\]\\,]", " "));
-            domTransformer.transform(new DOMSource(document), new StreamResult(apexConceptWriter));
-        } catch (JAXBException | TransformerException | ParserConfigurationException e) {
-            throw new ApexModelException("Unable to marshal Apex concept to XML", e);
-        }
-        LOGGER.debug("wrote Apex concept XML");
-    }
-
-    private Transformer getTransformer() throws TransformerConfigurationException {
-        // Transform the DOM to the output stream
-        final var transformerFactory = TransformerFactory.newInstance();
-        transformerFactory.setAttribute(XMLConstants.ACCESS_EXTERNAL_DTD, "");
-        transformerFactory.setAttribute(XMLConstants.ACCESS_EXTERNAL_STYLESHEET, "");
-
-        final var domTransformer = transformerFactory.newTransformer();
-
-        // Pretty print
-        try {
-            domTransformer.setOutputProperty(OutputKeys.INDENT, "yes");
-            // May fail if not using XALAN XSLT engine. But not in any way vital
-            domTransformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "2");
-        } catch (final Exception ignore) {
-            LOGGER.trace("Unable to set indent property", ignore);
-        }
-        return domTransformer;
+        writeJson(concept, apexConceptWriter);
     }
 
     /**
      * This method writes the Apex concept into a writer in JSON format.
      *
-     * @param concept           the concept to write
+     * @param concept the concept to write
      * @param apexConceptWriter the writer to write to
      * @throws ApexModelException on validation or writing exceptions
      */
@@ -252,29 +129,20 @@ public class ApexModelWriter<C extends AxConcept> {
 
         LOGGER.debug("writing Apex concept JSON . . .");
 
+        String modelJsonString = null;
         try {
-            marshaller.marshal(concept, apexConceptWriter);
-        } catch (final JAXBException e) {
-            throw new ApexModelException("Unable to marshal Apex concept to JSON", e);
+            modelJsonString = gson.toJson(concept, rootConceptClass);
+        } catch (Exception je) {
+            throw new ApexModelException("Unable to marshal Apex concept to JSON", je);
         }
-        LOGGER.debug("wrote Apex concept JSON");
-    }
 
-    /**
-     * Gets the validation flag value.
-     *
-     * @return the validation flag value
-     */
-    public boolean getValidateFlag() {
-        return validateFlag;
-    }
+        try {
+            apexConceptWriter.write(modelJsonString);
+            apexConceptWriter.close();
+        } catch (IOException ioe) {
+            throw new ApexModelException("Unable to write Apex concept as JSON", ioe);
+        }
 
-    /**
-     * Sets the validation flag.
-     *
-     * @param validateFlag the validation flag value
-     */
-    public void setValidateFlag(final boolean validateFlag) {
-        this.validateFlag = validateFlag;
+        LOGGER.debug("wrote Apex concept JSON");
     }
 }
diff --git a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/ApexSchemaGenerator.java b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/ApexSchemaGenerator.java
deleted file mode 100644 (file)
index d5f3478..0000000
+++ /dev/null
@@ -1,161 +0,0 @@
-/*
- * ============LICENSE_START=======================================================
- *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2020-2021 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.model.basicmodel.handling;
-
-import java.io.File;
-import java.io.IOException;
-import java.io.PrintStream;
-import java.io.StringWriter;
-import javax.xml.bind.JAXBContext;
-import javax.xml.bind.JAXBException;
-import javax.xml.bind.SchemaOutputResolver;
-import javax.xml.transform.Result;
-import javax.xml.transform.stream.StreamResult;
-import org.slf4j.ext.XLogger;
-import org.slf4j.ext.XLoggerFactory;
-
-/**
- * This class generates the XML model schema from the given Apex concept classes.
- *
- * @author Liam Fallon (liam.fallon@ericsson.com)
- */
-public class ApexSchemaGenerator {
-    // Get a reference to the logger
-    private static final XLogger LOGGER = XLoggerFactory.getXLogger(ApexSchemaGenerator.class);
-
-    /**
-     * A Main method to allow schema generation from the command line or from maven or scripts.
-     *
-     * @param args the command line arguments, usage is {@code ApexSchemaGenerator apex-root-class [schema-file-name]}
-     */
-    public static void main(final String[] args) {
-        PrintStream printStream = null;
-
-        if (args.length == 1) {
-            printStream = System.out;
-        } else if (args.length == 2) {
-            final var schemaFile = new File(args[1]);
-
-            try {
-                schemaFile.getParentFile().mkdirs();
-                printStream = new PrintStream(schemaFile);
-            } catch (final Exception e) {
-                LOGGER.error("error on Apex schema output", e);
-                return;
-            }
-        } else {
-            LOGGER.error("usage: ApexSchemaGenerator apex-root-class [schema-file-name]");
-            return;
-        }
-
-        // Get the schema
-        final String schema = new ApexSchemaGenerator().generate(args[0]);
-
-        // Output the schema
-        printStream.println(schema);
-
-        printStream.close();
-    }
-
-    /**
-     * Generates the XML schema (XSD) for the Apex model described using JAXB annotations.
-     *
-     * @param rootClassName the name of the root class for schema generation
-     * @return The schema
-     */
-    public String generate(final String rootClassName) {
-        JAXBContext jaxbContext;
-        try {
-            jaxbContext = JAXBContext.newInstance(Class.forName(rootClassName));
-        } catch (final ClassNotFoundException e) {
-            LOGGER.error("could not create JAXB context, root class " + rootClassName + " not found", e);
-            return null;
-        } catch (final JAXBException e) {
-            LOGGER.error("could not create JAXB context", e);
-            return null;
-        }
-
-        final var sor = new ApexSchemaOutputResolver();
-        try {
-            jaxbContext.generateSchema(sor);
-        } catch (final IOException e) {
-            LOGGER.error("error generating the Apex schema (XSD) file", e);
-            return null;
-        }
-
-        var schemaString = sor.getSchema();
-        schemaString = fixForUnqualifiedBug(schemaString);
-
-        return schemaString;
-    }
-
-    /**
-     * There is a bug in schema generation that does not specify the elements from Java Maps as being unqualified. This
-     * method "hacks" those elements in the schema to fix this, the elements being {@code entry}, {@code key}, and
-     * {@code value}
-     *
-     * @param schemaString The schema in which elements should be fixed
-     * @return the string
-     */
-    private String fixForUnqualifiedBug(final String schemaString) {
-        // Fix the "entry" element
-        var newSchemaString = schemaString.replace(
-                        "<xs:element name=\"entry\" minOccurs=\"0\" maxOccurs=\"unbounded\">",
-                        "<xs:element name=\"entry\" minOccurs=\"0\" maxOccurs=\"unbounded\" form=\"unqualified\">");
-
-        // Fix the "key" element
-        newSchemaString = newSchemaString.replace("<xs:element name=\"key\"",
-                        "<xs:element name=\"key\" form=\"unqualified\"");
-
-        // Fix the "value" element
-        newSchemaString = newSchemaString.replace("<xs:element name=\"value\"",
-                        "<xs:element name=\"value\" form=\"unqualified\"");
-
-        return newSchemaString;
-    }
-
-    /**
-     * This inner class is used to receive the output of schema generation from the JAXB schema generator.
-     */
-    private class ApexSchemaOutputResolver extends SchemaOutputResolver {
-        private final StringWriter stringWriter = new StringWriter();
-
-        /**
-         * {@inheritDoc}.
-         */
-        @Override
-        public Result createOutput(final String namespaceUri, final String suggestedFileName) throws IOException {
-            final var result = new StreamResult(stringWriter);
-            result.setSystemId(suggestedFileName);
-            return result;
-        }
-
-        /**
-         * Get the schema from the string writer.
-         *
-         * @return the schema generated by JAXB
-         */
-        public String getSchema() {
-            return stringWriter.toString();
-        }
-    }
-}
diff --git a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/KeyInfoMarshalFilter.java b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/KeyInfoMarshalFilter.java
deleted file mode 100644 (file)
index cfc385d..0000000
+++ /dev/null
@@ -1,104 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2019 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.model.basicmodel.handling;
-
-import java.util.Collection;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
-import java.util.TreeMap;
-import javax.xml.bind.annotation.adapters.XmlAdapter;
-import org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey;
-import org.onap.policy.apex.model.basicmodel.concepts.AxKey;
-import org.onap.policy.apex.model.basicmodel.concepts.AxKeyInfo;
-import org.onap.policy.apex.model.basicmodel.concepts.AxKeyInformation;
-
-/**
- * This class implements a filter to prevent some keyinfo information being marshalled when a model is serialised.
- */
-public class KeyInfoMarshalFilter extends XmlAdapter<AxKeyInformation, AxKeyInformation> {
-
-    private List<AxKey> filterList = new LinkedList<>();
-
-    /**
-     * Adds a key to the list to be filtered.
-     *
-     * @param key the key to add to the filter list
-     */
-    public void addFilterKey(AxKey key) {
-        filterList.add(key);
-    }
-
-    /**
-     * Remove a key from the list to be filtered.
-     *
-     * @param key the key to remove from the filter list
-     * @return true if the passed key was in the filter list and has been removed.
-     */
-    public boolean removeFilterKey(AxKey key) {
-        return filterList.remove(key);
-    }
-
-    /**
-     * Adds some keys to the list to be filtered.
-     *
-     * @param keys the keys to add to the filter list
-     */
-    public void addFilterKeys(Collection<? extends AxKey> keys) {
-        filterList.addAll(keys);
-    }
-
-    /**
-     * Decide whether to unmarshall some keyinfos - Always.
-     *
-     * @param val the keyinfo
-     * @return the keyinfo
-     * @throws Exception if there is some problem unmarshalling
-     * @see javax.xml.bind.annotation.adapters.XmlAdapter#unmarshal(Object)
-     */
-    @Override
-    public AxKeyInformation unmarshal(AxKeyInformation val) throws Exception {
-        return val;
-    }
-
-    /**
-     * Select which keyinfo entries will be marshalled - i.e. those not in the filter list.
-     *
-     * @param val the keyinfo
-     * @return the keyinfo
-     * @throws Exception if there is some problem with the marshalling
-     * @see javax.xml.bind.annotation.adapters.XmlAdapter#marshal(Object)
-     */
-    @Override
-    public AxKeyInformation marshal(AxKeyInformation val) throws Exception {
-        if (val == null || val.getKeyInfoMap() == null || val.getKeyInfoMap().isEmpty() || filterList.isEmpty()) {
-            return val;
-        }
-        //create a new keyinfo clone to avoid removing keyinfo entries from the original model
-        AxKeyInformation ret = new AxKeyInformation(val);
-        Map<AxArtifactKey, AxKeyInfo> retmap = new TreeMap<>(ret.getKeyInfoMap());
-        for (AxKey key : filterList) {
-            retmap.remove(key);
-        }
-        ret.setKeyInfoMap(retmap);
-        return ret;
-    }
-}
index 081cff5..3d6dab3 100644 (file)
@@ -1,6 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
+ *  Modifications Copyright (C) 2022 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * SPDX-License-Identifier: Apache-2.0
  * ============LICENSE_END=========================================================
  */
-
-/**
- * Contains a number of utility classes for handling APEX {@link org.onap.policy.apex.model.basicmodel.concepts.AxModel}
- * models and {@link org.onap.policy.apex.model.basicmodel.concepts.AxConcept} concepts. Classes to read and write
- * models to files, strings, and databases are included, as well as classes to generate XML schemas for models.
- *
- * @author Liam Fallon (liam.fallon@ericsson.com)
- */
-
-@XmlSchema(namespace = "http://www.onap.org/policy/apex-pdp", elementFormDefault = XmlNsForm.QUALIFIED,
-        xmlns = { @XmlNs(namespaceURI = "http://www.onap.org/policy/apex-pdp", prefix = "") })
-
 package org.onap.policy.apex.model.basicmodel.handling;
-
-import javax.xml.bind.annotation.XmlNs;
-import javax.xml.bind.annotation.XmlNsForm;
-import javax.xml.bind.annotation.XmlSchema;
index e540646..8ad405e 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2019 Nordix Foundation.
+ *  Modifications Copyright (C) 2019,2022 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -24,7 +24,7 @@
  * the model for APEX concepts anywhere in the system.
  *
  * <p>It also provides handling support to models, allowing them to be read and written to file and databases in JSON
- * and XML format.
+ * format.
  *
  * @author Liam Fallon (liam.fallon@ericsson.com)
  */
index 5dbf694..9dde47d 100644 (file)
@@ -44,7 +44,7 @@ import org.slf4j.ext.XLoggerFactory;
 public class TestApexModel<M extends AxModel> {
     private static final String MODEL_IS_INVALID = "model is invalid ";
     private static final String ERROR_PROCESSING_FILE = "error processing file ";
-    private static final String TEST_MODEL_UNEQUAL_STR = "test model does not equal model read from XML file ";
+    private static final String TEST_MODEL_UNEQUAL_STR = "test model does not equal model read from file ";
     private static final String TEMP_FILE_CREATE_ERR_STR = "error creating temporary file for Apex model";
 
     private static final XLogger LOGGER = XLoggerFactory.getXLogger(TestApexModel.class);
@@ -76,55 +76,6 @@ public class TestApexModel<M extends AxModel> {
         return modelCreator.getModel();
     }
 
-    /**
-     * Test write and read in XML format.
-     *
-     * @throws ApexException on write/read errors
-     */
-    public final void testApexModelWriteReadXml() throws ApexException {
-        LOGGER.debug("running testApexModelWriteReadXML . . .");
-
-        final var model = modelCreator.getModel();
-
-        // Write the file to disk
-        File xmlFile;
-
-        try {
-            xmlFile = File.createTempFile("ApexModel", ".xml");
-            xmlFile.deleteOnExit();
-        } catch (final Exception e) {
-            LOGGER.warn(TEMP_FILE_CREATE_ERR_STR, e);
-            throw new ApexException(TEMP_FILE_CREATE_ERR_STR, e);
-        }
-        new ApexModelFileWriter<M>(true).apexModelWriteXmlFile(model, rootModelClass, xmlFile.getPath());
-
-        // Read the file from disk
-        final ApexModelReader<M> modelReader = new ApexModelReader<>(rootModelClass);
-
-        try {
-            final var apexModelUrl = ResourceUtils.getLocalFile(xmlFile.getAbsolutePath());
-            final var fileModel = modelReader.read(apexModelUrl.openStream());
-            checkModelEquality(model, fileModel, TEST_MODEL_UNEQUAL_STR + xmlFile.getAbsolutePath());
-        } catch (final Exception e) {
-            LOGGER.warn(ERROR_PROCESSING_FILE + xmlFile.getAbsolutePath(), e);
-            throw new ApexException(ERROR_PROCESSING_FILE + xmlFile.getAbsolutePath(), e);
-        }
-
-        final ApexModelWriter<M> modelWriter = new ApexModelWriter<>(rootModelClass);
-        modelWriter.getCDataFieldSet().add("description");
-        modelWriter.getCDataFieldSet().add("logic");
-        modelWriter.getCDataFieldSet().add("uiLogic");
-
-        final var baOutputStream = new ByteArrayOutputStream();
-        modelWriter.write(model, baOutputStream);
-        final var baInputStream = new ByteArrayInputStream(baOutputStream.toByteArray());
-        final var byteArrayModel = modelReader.read(baInputStream);
-
-        checkModelEquality(model, byteArrayModel, "test model does not equal XML marshalled and unmarshalled model");
-
-        LOGGER.debug("ran testApexModelWriteReadXML");
-    }
-
     /**
      * Test write and read in JSON format.
      *
@@ -138,7 +89,7 @@ public class TestApexModel<M extends AxModel> {
         // Write the file to disk
         File jsonFile;
         try {
-            jsonFile = File.createTempFile("ApexModel", ".xml");
+            jsonFile = File.createTempFile("ApexModel", ".json");
             jsonFile.deleteOnExit();
         } catch (final Exception e) {
             LOGGER.warn(TEMP_FILE_CREATE_ERR_STR, e);
@@ -159,7 +110,6 @@ public class TestApexModel<M extends AxModel> {
         }
 
         final ApexModelWriter<M> modelWriter = new ApexModelWriter<>(rootModelClass);
-        modelWriter.setJsonOutput(true);
 
         final var baOutputStream = new ByteArrayOutputStream();
         modelWriter.write(model, baOutputStream);
diff --git a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/xml/AxReferenceKeyAdapter.java b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/xml/AxReferenceKeyAdapter.java
deleted file mode 100644 (file)
index 8515f57..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2021 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.model.basicmodel.xml;
-
-import java.io.Serializable;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlType;
-import javax.xml.bind.annotation.adapters.XmlAdapter;
-import org.onap.policy.apex.model.basicmodel.concepts.AxReferenceKey;
-
-/**
- * This class manages marshaling and unmarshaling of Apex {@link AxReferenceKey} concepts using JAXB. The local name in
- * reference keys must have specific handling.
- */
-@XmlAccessorType(XmlAccessType.PROPERTY)
-@XmlType(namespace = "http://www.onap.org/policy/apex-pdp")
-public class AxReferenceKeyAdapter extends XmlAdapter<String, AxReferenceKey> implements Serializable {
-
-    private static final long serialVersionUID = -3480405083900107029L;
-
-    /**
-     * {@inheritDoc}.
-     */
-    @Override
-    public final String marshal(final AxReferenceKey key) throws Exception {
-        return key.getLocalName();
-    }
-
-    /**
-     * {@inheritDoc}.
-     */
-    @Override
-    public final AxReferenceKey unmarshal(final String key) throws Exception {
-        final var axReferenceKey = new AxReferenceKey();
-        axReferenceKey.setLocalName(key);
-        return axReferenceKey;
-    }
-}
diff --git a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/xml/package-info.java b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/xml/package-info.java
deleted file mode 100644 (file)
index 290209d..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- *  Copyright (C) 2016-2018 Ericsson. 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.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-/**
- * Contains utility classes for managing marshaling and unmarshaling of APEX models using JAXB.
- *
- * @author Liam Fallon (liam.fallon@ericsson.com)
- */
-
-@XmlSchema(namespace = "http://www.onap.org/policy/apex-pdp", elementFormDefault = XmlNsForm.QUALIFIED,
-        xmlns = { @XmlNs(namespaceURI = "http://www.onap.org/policy/apex-pdp", prefix = "") })
-
-package org.onap.policy.apex.model.basicmodel.xml;
-
-import javax.xml.bind.annotation.XmlNs;
-import javax.xml.bind.annotation.XmlNsForm;
-import javax.xml.bind.annotation.XmlSchema;
diff --git a/model/basic-model/src/main/resources/xml/example.xsd b/model/basic-model/src/main/resources/xml/example.xsd
deleted file mode 100644 (file)
index 75ecdc3..0000000
+++ /dev/null
@@ -1,100 +0,0 @@
-<?xml version="1.0" standalone="yes"?>
-<!--
-  ============LICENSE_START=======================================================
-   Copyright (C) 2016-2018 Ericsson. 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.
-  You may obtain a copy of the License at
-  
-       http://www.apache.org/licenses/LICENSE-2.0
-  
-  Unless required by applicable law or agreed to in writing, software
-  distributed under the License is distributed on an "AS IS" BASIS,
-  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  See the License for the specific language governing permissions and
-  limitations under the License.
-  
-  SPDX-License-Identifier: Apache-2.0
-  ============LICENSE_END=========================================================
--->
-<xs:schema elementFormDefault="qualified" version="1.0" targetNamespace="http://www.onap.org/policy/apex-pdp" xmlns="http://www.onap.org/policy/apex-pdp" xmlns:tns="http://www.onap.org/policy/apex-pdp" xmlns:xs="http://www.w3.org/2001/XMLSchema">
-
-  <xs:element name="apexArtifactKey" type="AxArtifactKey"/>
-
-  <xs:element name="apexKeyInfo" type="AxKeyInfo"/>
-
-  <xs:element name="apexModel" type="AxModel"/>
-
-  <xs:complexType name="AxModel">
-    <xs:complexContent>
-      <xs:extension base="AxConcept">
-        <xs:sequence>
-          <xs:element name="key" form="unqualified" type="AxArtifactKey"/>
-          <xs:element name="keyInformation" type="AxKeyInformation"/>
-        </xs:sequence>
-      </xs:extension>
-    </xs:complexContent>
-  </xs:complexType>
-
-  <xs:complexType name="AxConcept" abstract="true">
-    <xs:sequence/>
-  </xs:complexType>
-
-  <xs:complexType name="AxArtifactKey">
-    <xs:complexContent>
-      <xs:extension base="axKey">
-        <xs:sequence>
-          <xs:element name="name" type="xs:string"/>
-          <xs:element name="version" type="xs:string"/>
-        </xs:sequence>
-      </xs:extension>
-    </xs:complexContent>
-  </xs:complexType>
-
-  <xs:complexType name="axKey" abstract="true">
-    <xs:complexContent>
-      <xs:extension base="AxConcept">
-        <xs:sequence/>
-      </xs:extension>
-    </xs:complexContent>
-  </xs:complexType>
-
-  <xs:complexType name="AxKeyInformation">
-    <xs:complexContent>
-      <xs:extension base="AxConcept">
-        <xs:sequence>
-          <xs:element name="key" form="unqualified" type="AxArtifactKey"/>
-          <xs:element name="keyInfoMap">
-            <xs:complexType>
-              <xs:sequence>
-                <xs:element name="entry" minOccurs="0" maxOccurs="unbounded" form="unqualified">
-                  <xs:complexType>
-                    <xs:sequence>
-                      <xs:element name="key" form="unqualified" minOccurs="0" type="AxArtifactKey"/>
-                      <xs:element name="value" form="unqualified" minOccurs="0" type="AxKeyInfo"/>
-                    </xs:sequence>
-                  </xs:complexType>
-                </xs:element>
-              </xs:sequence>
-            </xs:complexType>
-          </xs:element>
-        </xs:sequence>
-      </xs:extension>
-    </xs:complexContent>
-  </xs:complexType>
-
-  <xs:complexType name="AxKeyInfo">
-    <xs:complexContent>
-      <xs:extension base="AxConcept">
-        <xs:sequence>
-          <xs:element name="key" form="unqualified" type="AxArtifactKey"/>
-          <xs:element name="UUID" type="xs:string"/>
-          <xs:element name="description" type="xs:string"/>
-        </xs:sequence>
-      </xs:extension>
-    </xs:complexContent>
-  </xs:complexType>
-</xs:schema>
-
-
index cd8b52c..2b16e89 100644 (file)
@@ -23,17 +23,11 @@ package org.onap.policy.apex.model.basicmodel.concepts;
 
 import java.util.Arrays;
 import java.util.List;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
-import org.onap.policy.apex.model.basicmodel.xml.AxReferenceKeyAdapter;
 
 public class DummyEntity extends AxConcept {
     private static final long serialVersionUID = -2962570563281067894L;
 
-    @XmlElement(name = "key", required = true)
-    @XmlJavaTypeAdapter(AxReferenceKeyAdapter.class)
     protected AxReferenceKey key;
-
     private double doubleValue;
 
     public DummyEntity() {
index 331e57f..0f8f956 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2020 Nordix Foundation
+ *  Modifications Copyright (C) 2020,2022 Nordix Foundation
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -36,33 +36,27 @@ public class ApexModelFileWriterTest {
     public void testModelFileWriter() throws IOException, ApexException {
         ApexModelFileWriter<AxModel> modelFileWriter = new ApexModelFileWriter<>(true);
 
-        modelFileWriter.setValidateFlag(true);
-        assertTrue(modelFileWriter.isValidateFlag());
+        modelFileWriter.setValidate(true);
+        assertTrue(modelFileWriter.isValidate());
 
         File tempFile = File.createTempFile("ApexFileWriterTest", "test");
         File tempDir = tempFile.getParentFile();
 
         File jsonTempFile = new File(tempDir.getAbsolutePath() + "/aaa/ApexFileWriterTest.json");
-        File xmlTempFile = new File(tempDir.getAbsolutePath() + "/ccc/ApexFileWriterTest.xml");
 
         AxModel model = new DummyApexBasicModelCreator().getModel();
 
         modelFileWriter.apexModelWriteJsonFile(model, AxModel.class, jsonTempFile.getAbsolutePath());
-        modelFileWriter.apexModelWriteXmlFile(model, AxModel.class, xmlTempFile.getAbsolutePath());
 
         jsonTempFile.delete();
-        xmlTempFile.delete();
         new File(tempDir.getAbsolutePath() + "/aaa").delete();
         new File(tempDir.getAbsolutePath() + "/ccc").delete();
 
         jsonTempFile = new File(tempDir.getAbsolutePath() + "/aaa/bbb/ApexFileWriterTest.json");
-        xmlTempFile = new File(tempDir.getAbsolutePath() + "/ccc/ddd/ApexFileWriterTest.xml");
 
         modelFileWriter.apexModelWriteJsonFile(model, AxModel.class, jsonTempFile.getAbsolutePath());
-        modelFileWriter.apexModelWriteXmlFile(model, AxModel.class, xmlTempFile.getAbsolutePath());
 
         jsonTempFile.delete();
-        xmlTempFile.delete();
 
         new File(tempDir.getAbsolutePath() + "/aaa/bbb").delete();
         new File(tempDir.getAbsolutePath() + "/aaa").delete();
@@ -70,19 +64,14 @@ public class ApexModelFileWriterTest {
         new File(tempDir.getAbsolutePath() + "/ccc").delete();
 
         File dirA = new File(tempDir.getAbsolutePath() + "/aaa");
-        //File dirB = new File(tempDir.getAbsolutePath() + "/aaa/bbb");
+        // File dirB = new File(tempDir.getAbsolutePath() + "/aaa/bbb");
         dirA.createNewFile();
-        //dirB.createNewFile();
+        // dirB.createNewFile();
 
         jsonTempFile = new File(tempDir.getAbsolutePath() + "/aaa/bbb/ApexFileWriterTest.json");
-        jsonTempFile = new File(tempDir.getAbsolutePath() + "/aaa/bbb/ApexFileWriterTest.xml");
         final File jsonTempFile01 = jsonTempFile;
-        assertThatThrownBy(() -> modelFileWriter.apexModelWriteJsonFile(model, AxModel.class,
-                jsonTempFile01.getAbsolutePath()))
-                .hasMessageContaining("could not create directory");
-
-        assertThatThrownBy(() -> modelFileWriter.apexModelWriteXmlFile(model, AxModel.class,
-                jsonTempFile01.getAbsolutePath()))
+        assertThatThrownBy(
+            () -> modelFileWriter.apexModelWriteJsonFile(model, AxModel.class, jsonTempFile01.getAbsolutePath()))
                 .hasMessageContaining("could not create directory");
 
         dirA.delete();
@@ -93,15 +82,10 @@ public class ApexModelFileWriterTest {
         fileB.createNewFile();
 
         jsonTempFile = new File(tempDir.getAbsolutePath() + "/aaa/bbb/ApexFileWriterTest.json");
-        jsonTempFile = new File(tempDir.getAbsolutePath() + "/aaa/bbb/ApexFileWriterTest.xml");
 
         File jsonTempFile02 = jsonTempFile;
-        assertThatThrownBy(() -> modelFileWriter.apexModelWriteJsonFile(model, AxModel.class,
-                jsonTempFile02.getAbsolutePath()))
-                .hasMessageContaining("error processing file");
-
-        assertThatThrownBy(() -> modelFileWriter.apexModelWriteXmlFile(model, AxModel.class,
-                jsonTempFile02.getAbsolutePath()))
+        assertThatThrownBy(
+            () -> modelFileWriter.apexModelWriteJsonFile(model, AxModel.class, jsonTempFile02.getAbsolutePath()))
                 .hasMessageContaining("error processing file");
 
         fileB.delete();
index d75f202..1152771 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2020 Nordix Foundation
+ *  Modifications Copyright (C) 2020,2022 Nordix Foundation
  *  Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
@@ -34,45 +34,33 @@ import java.io.File;
 import java.io.FileInputStream;
 import java.io.FileReader;
 import java.io.IOException;
-import java.lang.reflect.Field;
-import javax.xml.bind.JAXBException;
-import javax.xml.bind.PropertyException;
-import javax.xml.bind.Unmarshaller;
-import javax.xml.transform.stream.StreamSource;
 import org.junit.Test;
 import org.junit.runner.RunWith;
-import org.mockito.Mock;
-import org.mockito.Mockito;
-import org.mockito.MockitoAnnotations;
 import org.mockito.runners.MockitoJUnitRunner;
 import org.onap.policy.apex.model.basicmodel.concepts.ApexException;
 import org.onap.policy.apex.model.basicmodel.concepts.AxModel;
 
 @RunWith(MockitoJUnitRunner.class)
 public class ApexModelReaderTest {
-    @Mock
-    private Unmarshaller unmarshallerMock;
-
     @Test
     public void testModelReader() throws IOException, ApexException {
         AxModel model = new DummyApexBasicModelCreator().getModel();
         AxModel invalidModel = new DummyApexBasicModelCreator().getInvalidModel();
 
         ApexModelWriter<AxModel> modelWriter = new ApexModelWriter<AxModel>(AxModel.class);
-        modelWriter.setValidateFlag(true);
-        modelWriter.setJsonOutput(true);
+        modelWriter.setValidate(true);
 
         ByteArrayOutputStream baos = new ByteArrayOutputStream();
         modelWriter.write(model, baos);
 
         ByteArrayOutputStream baosInvalid = new ByteArrayOutputStream();
-        modelWriter.setValidateFlag(false);
+        modelWriter.setValidate(false);
         modelWriter.write(invalidModel, baosInvalid);
 
         ApexModelReader<AxModel> modelReader = new ApexModelReader<AxModel>(AxModel.class, true);
 
-        modelReader.setValidateFlag(true);
-        assertTrue(modelReader.getValidateFlag());
+        modelReader.setValidate(true);
+        assertTrue(modelReader.isValidate());
 
         ByteArrayInputStream bais = new ByteArrayInputStream(baos.toByteArray());
         AxModel readModel = modelReader.read(bais);
@@ -81,26 +69,24 @@ public class ApexModelReaderTest {
         ByteArrayInputStream baisInvalid = new ByteArrayInputStream(baosInvalid.toByteArray());
         assertThatThrownBy(() -> modelReader.read(baisInvalid))
             .hasMessageStartingWith("Apex concept validation failed");
-        modelReader.setValidateFlag(false);
-        assertFalse(modelReader.getValidateFlag());
+        modelReader.setValidate(false);
+        assertFalse(modelReader.isValidate());
 
         ByteArrayInputStream bais2 = new ByteArrayInputStream(baos.toByteArray());
         AxModel readModel2 = modelReader.read(bais2);
         assertEquals(model, readModel2);
 
-        modelWriter.setJsonOutput(false);
-
-        ByteArrayOutputStream baosXml = new ByteArrayOutputStream();
-        modelWriter.write(model, baosXml);
+        ByteArrayOutputStream baosJson = new ByteArrayOutputStream();
+        modelWriter.write(model, baosJson);
 
-        ByteArrayInputStream baisXml = new ByteArrayInputStream(baosXml.toByteArray());
-        AxModel readModelXml = modelReader.read(baisXml);
-        assertEquals(model, readModelXml);
+        ByteArrayInputStream baisJson = new ByteArrayInputStream(baosJson.toByteArray());
+        AxModel readModelJson = modelReader.read(baisJson);
+        assertEquals(model, readModelJson);
 
         String dummyString = "SomeDummyText";
         ByteArrayInputStream baisDummy = new ByteArrayInputStream(dummyString.getBytes());
         assertThatThrownBy(() -> modelReader.read(baisDummy))
-            .hasMessage("format of input for Apex concept is neither JSON nor XML");
+            .hasMessageContaining("Unable to unmarshal Apex concept");
         ByteArrayInputStream nullBais = null;
         assertThatThrownBy(() -> modelReader.read(nullBais))
             .hasMessage("concept stream may not be null");
@@ -115,42 +101,5 @@ public class ApexModelReaderTest {
         assertThatThrownBy(() -> modelReader.read(br))
              .hasMessage("Unable to read Apex concept ");
         tempFile.delete();
-        modelReader.setSchema(null);
-
-        final File tempFileA = File.createTempFile("Apex", "Dummy");
-        assertThatThrownBy(() -> modelReader.setSchema(tempFileA.getCanonicalPath()))
-            .hasMessage("Unable to load schema");
-        tempFile.delete();
-        modelReader.setSchema("xml/example.xsd");
-    }
-
-    @Test
-    public void testSetInputTypeError() throws ApexModelException,
-        NoSuchFieldException, SecurityException, IllegalArgumentException, IllegalAccessException {
-        MockitoAnnotations.initMocks(this);
-
-        ApexModelReader<AxModel> modelReader = new ApexModelReader<AxModel>(AxModel.class, true);
-
-        Field marshallerField = modelReader.getClass().getDeclaredField("unmarshaller");
-        marshallerField.setAccessible(true);
-        marshallerField.set(modelReader, unmarshallerMock);
-        marshallerField.setAccessible(false);
-
-        assertThatThrownBy(() -> {
-            Mockito.doThrow(new JAXBException("Exception marshalling to JSON")).when(unmarshallerMock)
-                .unmarshal((StreamSource) Mockito.anyObject(), Mockito.anyObject());
-
-            modelReader.read("{Hello}");
-        }).hasMessage("Unable to unmarshal Apex concept ");
-        assertThatThrownBy(() -> {
-            Mockito.doThrow(new PropertyException("Exception setting JAXB property")).when(unmarshallerMock)
-                .setProperty(Mockito.anyString(), Mockito.anyString());
-            modelReader.read("{Hello}");
-        }).hasMessage("JAXB error setting unmarshaller for JSON input");
-        assertThatThrownBy(() -> {
-            Mockito.doThrow(new PropertyException("Exception setting JAXB property")).when(unmarshallerMock)
-                .setProperty(Mockito.anyString(), Mockito.anyString());
-            modelReader.read("<?xml version=\"1.0\" encoding=\"UTF-8\"?>");
-        }).hasMessage("JAXB error setting unmarshaller for XML input");
     }
 }
index ad89783..c95106a 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2020 Nordix Foundation
+ *  Modifications Copyright (C) 2020,2022 Nordix Foundation
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -41,14 +41,12 @@ public class ApexModelSaverTest {
         Path tempPath = Files.createTempDirectory("ApexTest");
         assertNotNull(tempPath);
 
-        ApexModelSaver<AxModel> modelSaver = new ApexModelSaver<AxModel>(AxModel.class, model,
-                        tempPath.toAbsolutePath().toString());
+        ApexModelSaver<AxModel> modelSaver =
+            new ApexModelSaver<AxModel>(AxModel.class, model, tempPath.toAbsolutePath().toString());
         assertNotNull(modelSaver);
-        modelSaver.apexModelWriteXml();
         modelSaver.apexModelWriteJson();
 
         Files.deleteIfExists(new File(tempPath.toAbsolutePath() + "/BasicModel.json").toPath());
-        Files.deleteIfExists(new File(tempPath.toAbsolutePath() + "/BasicModel.xml").toPath());
         Files.deleteIfExists(tempPath);
     }
 }
index 0b8d789..13e72d3 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2020 Nordix Foundation
+ *  Modifications Copyright (C) 2020,2022 Nordix Foundation
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -38,33 +38,26 @@ public class ApexModelStringWriterTest {
         AxModel basicModel = new DummyApexBasicModelCreator().getModel();
         assertNotNull(basicModel);
 
-        AxKeyInfo intKeyInfo   = basicModel.getKeyInformation().get("IntegerKIKey");
+        AxKeyInfo intKeyInfo = basicModel.getKeyInformation().get("IntegerKIKey");
         AxKeyInfo floatKeyInfo = basicModel.getKeyInformation().get("FloatKIKey");
 
         // Ensure marshalling is OK
         ApexModelStringWriter<AxKeyInfo> stringWriter = new ApexModelStringWriter<AxKeyInfo>(true);
 
-        assertNotNull(stringWriter.writeJsonString(intKeyInfo,   AxKeyInfo.class));
+        assertNotNull(stringWriter.writeJsonString(intKeyInfo, AxKeyInfo.class));
         assertNotNull(stringWriter.writeJsonString(floatKeyInfo, AxKeyInfo.class));
 
-        assertNotNull(stringWriter.writeString(intKeyInfo,   AxKeyInfo.class, true));
-        assertNotNull(stringWriter.writeString(floatKeyInfo, AxKeyInfo.class, true));
+        assertNotNull(stringWriter.writeString(intKeyInfo, AxKeyInfo.class));
+        assertNotNull(stringWriter.writeString(floatKeyInfo, AxKeyInfo.class));
 
-        assertNotNull(stringWriter.writeString(intKeyInfo,   AxKeyInfo.class, false));
-        assertNotNull(stringWriter.writeString(floatKeyInfo, AxKeyInfo.class, false));
+        assertNotNull(stringWriter.writeString(intKeyInfo, AxKeyInfo.class));
+        assertNotNull(stringWriter.writeString(floatKeyInfo, AxKeyInfo.class));
 
-        assertNotNull(stringWriter.writeXmlString(intKeyInfo,   AxKeyInfo.class));
-        assertNotNull(stringWriter.writeXmlString(floatKeyInfo, AxKeyInfo.class));
-
-        assertThatThrownBy(() -> stringWriter.writeString(null, AxKeyInfo.class, true))
-            .hasMessage("concept may not be null");
-        assertThatThrownBy(() -> stringWriter.writeString(null, AxKeyInfo.class, false))
-            .hasMessage("concept may not be null");
+        assertThatThrownBy(() -> stringWriter.writeString(null, AxKeyInfo.class)).hasMessage("concept may not be null");
+        assertThatThrownBy(() -> stringWriter.writeString(null, AxKeyInfo.class)).hasMessage("concept may not be null");
         assertThatThrownBy(() -> stringWriter.writeJsonString(null, AxKeyInfo.class))
             .hasMessage("error writing JSON string");
-        assertThatThrownBy(() -> stringWriter.writeXmlString(null, AxKeyInfo.class))
-            .hasMessage("error writing XML string");
-        stringWriter.setValidateFlag(true);
-        assertTrue(stringWriter.isValidateFlag());
+        stringWriter.setValidate(true);
+        assertTrue(stringWriter.isValidate());
     }
 }
index 147eb20..0638559 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2020 Nordix Foundation
+ *  Modifications Copyright (C) 2020,2022 Nordix Foundation
  *  Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
 package org.onap.policy.apex.model.basicmodel.handling;
 
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
 
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
-import java.io.Writer;
-import java.lang.reflect.Field;
-import javax.xml.bind.JAXBException;
-import javax.xml.bind.Marshaller;
-import javax.xml.bind.PropertyException;
 import org.junit.Test;
 import org.junit.runner.RunWith;
-import org.mockito.Mock;
-import org.mockito.Mockito;
-import org.mockito.MockitoAnnotations;
 import org.mockito.runners.MockitoJUnitRunner;
 import org.onap.policy.apex.model.basicmodel.concepts.ApexException;
 import org.onap.policy.apex.model.basicmodel.concepts.AxModel;
-import org.w3c.dom.Document;
 
 @RunWith(MockitoJUnitRunner.class)
 public class ApexModelWriterTest {
-    @Mock
-    private Marshaller marshallerMock;
-
     @Test
     public void testModelWriter() throws IOException, ApexException {
         ApexModelWriter<AxModel> modelWriter = new ApexModelWriter<AxModel>(AxModel.class);
 
-        modelWriter.setValidateFlag(true);
-        assertTrue(modelWriter.getValidateFlag());
-        assertEquals(0, modelWriter.getCDataFieldSet().size());
-
-        assertFalse(modelWriter.isJsonOutput());
-        modelWriter.setJsonOutput(true);
-        assertTrue(modelWriter.isJsonOutput());
-        modelWriter.setJsonOutput(false);
-        assertFalse(modelWriter.isJsonOutput());
+        modelWriter.setValidate(true);
+        assertTrue(modelWriter.isValidate());
 
         ByteArrayOutputStream baos = new ByteArrayOutputStream();
 
         AxModel model = new DummyApexBasicModelCreator().getModel();
 
         modelWriter.write(model, baos);
-        modelWriter.setJsonOutput(true);
-        modelWriter.write(model, baos);
-        modelWriter.setJsonOutput(false);
 
-        modelWriter.setValidateFlag(false);
+        modelWriter.setValidate(false);
         modelWriter.write(model, baos);
-        modelWriter.setJsonOutput(true);
-        modelWriter.write(model, baos);
-        modelWriter.setJsonOutput(false);
 
-        modelWriter.setValidateFlag(true);
+        modelWriter.setValidate(true);
         model.getKeyInformation().getKeyInfoMap().clear();
         assertThatThrownBy(() -> modelWriter.write(model, baos))
-            .hasMessageContaining("Apex concept xml (BasicModel:0.0.1) validation failed");
+            .hasMessageContaining("Apex concept (BasicModel:0.0.1) validation failed");
         model.getKeyInformation().generateKeyInfo(model);
 
         assertThatThrownBy(() -> modelWriter.write(null, baos))
@@ -91,73 +64,4 @@ public class ApexModelWriterTest {
         assertThatThrownBy(() -> modelWriter.write(model, nullBaos))
             .hasMessage("concept stream may not be null");
     }
-
-    @Test
-    public void testSetOutputTypeError() throws ApexModelException, NoSuchFieldException, SecurityException,
-            IllegalArgumentException, IllegalAccessException, PropertyException {
-        MockitoAnnotations.initMocks(this);
-
-        ApexModelWriter<AxModel> modelWriter = new ApexModelWriter<AxModel>(AxModel.class);
-
-        Field marshallerField = modelWriter.getClass().getDeclaredField("marshaller");
-        marshallerField.setAccessible(true);
-        marshallerField.set(modelWriter, marshallerMock);
-        marshallerField.setAccessible(false);
-        Mockito.doThrow(new PropertyException("Exception setting JAXB property")).when(marshallerMock)
-            .setProperty(Mockito.anyString(), Mockito.anyString());
-        assertThatThrownBy(() -> modelWriter.setJsonOutput(true))
-            .hasMessage("JAXB error setting marshaller for JSON output");
-        Mockito.doThrow(new PropertyException("Exception setting JAXB property")).when(marshallerMock)
-            .setProperty(Mockito.anyString(), Mockito.anyString());
-        assertThatThrownBy(() -> modelWriter.setJsonOutput(false))
-            .hasMessage("JAXB error setting marshaller for XML output");
-    }
-
-    @Test
-    public void testOutputJsonError() throws ApexModelException, NoSuchFieldException, SecurityException,
-            IllegalArgumentException, IllegalAccessException, JAXBException {
-        MockitoAnnotations.initMocks(this);
-
-        ApexModelWriter<AxModel> modelWriter = new ApexModelWriter<AxModel>(AxModel.class);
-
-        Field marshallerField = modelWriter.getClass().getDeclaredField("marshaller");
-        marshallerField.setAccessible(true);
-        marshallerField.set(modelWriter, marshallerMock);
-        marshallerField.setAccessible(false);
-
-        modelWriter.setValidateFlag(false);
-        modelWriter.setJsonOutput(true);
-
-        ByteArrayOutputStream baos = new ByteArrayOutputStream();
-        AxModel model = new DummyApexBasicModelCreator().getModel();
-        Mockito.doThrow(new JAXBException("Exception marshalling to JSON")).when(marshallerMock)
-            .marshal((AxModel) Mockito.anyObject(), (Writer) Mockito.anyObject());
-        assertThatThrownBy(() -> modelWriter.write(model, baos)).hasMessage("Unable to marshal Apex concept to JSON");
-    }
-
-    @Test
-    public void testOutputXmlError() throws ApexModelException, NoSuchFieldException, SecurityException,
-            IllegalArgumentException, IllegalAccessException, JAXBException {
-        MockitoAnnotations.initMocks(this);
-
-        ApexModelWriter<AxModel> modelWriter = new ApexModelWriter<AxModel>(AxModel.class);
-        modelWriter.setJsonOutput(false);
-
-        Field marshallerField = modelWriter.getClass().getDeclaredField("marshaller");
-        marshallerField.setAccessible(true);
-        marshallerField.set(modelWriter, marshallerMock);
-        marshallerField.setAccessible(false);
-
-        modelWriter.setValidateFlag(false);
-        modelWriter.setJsonOutput(false);
-
-        ByteArrayOutputStream baos = new ByteArrayOutputStream();
-        AxModel model = new DummyApexBasicModelCreator().getModel();
-
-        Mockito.doThrow(new JAXBException("Exception marshalling to JSON")).when(marshallerMock)
-            .marshal((AxModel) Mockito.anyObject(), (Document) Mockito.anyObject());
-
-        assertThatThrownBy(() -> modelWriter.write(model, baos))
-            .hasMessage("Unable to marshal Apex concept to XML");
-    }
 }
diff --git a/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/ApexSchemaGeneratorTest.java b/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/ApexSchemaGeneratorTest.java
deleted file mode 100644 (file)
index 3385830..0000000
+++ /dev/null
@@ -1,95 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- *  Copyright (C) 2016-2018 Ericsson. 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.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.model.basicmodel.handling;
-
-import static org.junit.Assert.assertTrue;
-
-import java.io.ByteArrayOutputStream;
-import java.io.File;
-import java.io.FileDescriptor;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.PrintStream;
-import org.junit.After;
-import org.junit.Test;
-
-public class ApexSchemaGeneratorTest {
-    private final PrintStream stdout = System.out;
-
-    @After
-    public void tearDown() throws Exception {
-        System.setOut(stdout);
-    }
-
-    @Test
-    public void test() throws IOException {
-        final ByteArrayOutputStream baos0 = new ByteArrayOutputStream();
-        System.setOut(new PrintStream(baos0));
-
-        final String[] args0 = {};
-        ApexSchemaGenerator.main(args0);
-        assertTrue(baos0.toString().contains("usage: ApexSchemaGenerator apex-root-class [schema-file-name]"));
-        System.setOut(new PrintStream(new FileOutputStream(FileDescriptor.out)));
-
-        final ByteArrayOutputStream baos1 = new ByteArrayOutputStream();
-        System.setOut(new PrintStream(baos1));
-
-        final String[] args1 = { "hello", "goodbye", "here" };
-        ApexSchemaGenerator.main(args1);
-        assertTrue(baos1.toString().contains("usage: ApexSchemaGenerator apex-root-class [schema-file-name]"));
-        System.setOut(new PrintStream(new FileOutputStream(FileDescriptor.out)));
-
-        final ByteArrayOutputStream baos2 = new ByteArrayOutputStream();
-        System.setOut(new PrintStream(baos2));
-
-        final String[] args2 = { "hello", "goodbye" };
-        ApexSchemaGenerator.main(args2);
-        assertTrue(baos2.toString().contains("error on Apex schema output"));
-        System.setOut(new PrintStream(new FileOutputStream(FileDescriptor.out)));
-
-        final ByteArrayOutputStream baos3 = new ByteArrayOutputStream();
-        System.setOut(new PrintStream(baos3));
-
-        final String[] args3 = { "hello" };
-        ApexSchemaGenerator.main(args3);
-        assertTrue(baos3.toString().contains("could not create JAXB context, root class hello not found"));
-        System.setOut(new PrintStream(new FileOutputStream(FileDescriptor.out)));
-
-        final ByteArrayOutputStream baos4 = new ByteArrayOutputStream();
-        System.setOut(new PrintStream(baos4));
-
-        final String[] args4 = { "org.onap.policy.apex.model.basicmodel.concepts.AxModel" };
-        ApexSchemaGenerator.main(args4);
-        assertTrue(baos4.toString().contains("targetNamespace=\"http://www.onap.org/policy/apex-pdp\""));
-        System.setOut(new PrintStream(new FileOutputStream(FileDescriptor.out)));
-
-        final ByteArrayOutputStream baos5 = new ByteArrayOutputStream();
-        System.setOut(new PrintStream(baos5));
-
-        final File tempFile = File.createTempFile("ApexSchemaGeneratorTest", "xsd");
-        tempFile.deleteOnExit();
-        final String[] args5 =
-            { "org.onap.policy.apex.model.basicmodel.concepts.AxModel", tempFile.getCanonicalPath() };
-
-        ApexSchemaGenerator.main(args5);
-        assertTrue(tempFile.length() > 100);
-    }
-}
index bb9776f..68f7558 100644 (file)
@@ -109,11 +109,6 @@ public class SupportApexBasicModelTest {
         assertEquals(INVALID_MODEL_MALSTRUCTURED_STRING, result.toString());
     }
 
-    @Test
-    public void testModelWriteReadXml() throws Exception {
-        testApexModel.testApexModelWriteReadXml();
-    }
-
     @Test
     public void testModelWriteReadJson() throws Exception {
         testApexModel.testApexModelWriteReadJson();
index 5fc678a..d55a9da 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2020-2021 Nordix Foundation
+ *  Modifications Copyright (C) 2020-2022 Nordix Foundation
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -43,7 +43,6 @@ public class SupportBasicModelTest {
         testApexModel.testApexModelVaidateMalstructured();
 
         testApexModel.testApexModelWriteReadJson();
-        testApexModel.testApexModelWriteReadXml();
     }
 
     @Test
@@ -102,14 +101,11 @@ public class SupportBasicModelTest {
     }
 
     @Test
-    public void testModelCreator1XmlJson() throws ApexException {
+    public void testModelCreator1Json() throws ApexException {
         final TestApexModel<AxModel> testApexModel = new TestApexModel<AxModel>(AxModel.class,
             new SupportApexModelCreator1());
 
         assertThatThrownBy(() -> testApexModel.testApexModelWriteReadJson())
             .hasMessageStartingWith("error processing file");
-
-        assertThatThrownBy(() -> testApexModel.testApexModelWriteReadXml())
-            .hasMessageStartingWith("error processing file");
     }
 }
index 006c583..1783fc0 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2020-2021 Nordix Foundation.
+ *  Modifications Copyright (C) 2020-2022 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -156,19 +156,19 @@ public class SupportConceptGetterTest {
         ApexModelReader<AxModel> modelReader = new ApexModelReader<AxModel>(AxModel.class);
         ApexModelFileWriter<AxModel> modelWriter = new ApexModelFileWriter<AxModel>(true);
 
-        modelReader.setValidateFlag(false);
-        modelWriter.setValidateFlag(false);
+        modelReader.setValidate(false);
+        modelWriter.setValidate(false);
 
-        File tempXmlFile = File.createTempFile("ApexModel", "xml");
-        modelWriter.apexModelWriteJsonFile(basicModel, AxModel.class, tempXmlFile.getCanonicalPath());
+        File tempJsonFile = File.createTempFile("ApexModel", "json");
+        modelWriter.apexModelWriteJsonFile(basicModel, AxModel.class, tempJsonFile.getCanonicalPath());
 
-        FileInputStream xmlFileInputStream = new FileInputStream(tempXmlFile);
-        AxModel readXmlModel = modelReader.read(xmlFileInputStream);
-        xmlFileInputStream.close();
-        assertEquals(basicModel, readXmlModel);
-        assertEquals(intKI91, readXmlModel.getKeyInformation().get("IntegerKIKey91"));
-        assertNotNull(readXmlModel.getKeyInformation().get("FloatKIKey"));
-        tempXmlFile.delete();
+        FileInputStream jsonFileInputStream = new FileInputStream(tempJsonFile);
+        AxModel readJsonModel = modelReader.read(jsonFileInputStream);
+        jsonFileInputStream.close();
+        assertEquals(basicModel, readJsonModel);
+        assertEquals(intKI91, readJsonModel.getKeyInformation().get("IntegerKIKey91"));
+        assertNotNull(readJsonModel.getKeyInformation().get("FloatKIKey"));
+        tempJsonFile.delete();
     }
 
     private AxModel setTestBasicModel() {
diff --git a/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/xml/AxReferenceKeyAdapterTest.java b/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/xml/AxReferenceKeyAdapterTest.java
deleted file mode 100644 (file)
index 12a67c8..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- * ============LICENSE_START=======================================================
- *  Copyright (C) 2016-2018 Ericsson. 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.
- * You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * 
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.model.basicmodel.xml;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-
-import org.junit.Test;
-import org.onap.policy.apex.model.basicmodel.concepts.AxReferenceKey;
-
-public class AxReferenceKeyAdapterTest {
-
-    @Test
-    public void test() throws Exception {
-        AxReferenceKeyAdapter arka = new AxReferenceKeyAdapter();
-        assertNotNull(arka);
-        
-        AxReferenceKey rkey = new AxReferenceKey("Name", "0.0.1", "PLN", "LN");
-        
-        String rkeyString = arka.marshal(rkey);
-        assertEquals("LN", rkeyString);
-        assertEquals(rkey.getLocalName(), arka.unmarshal(rkeyString).getLocalName());
-    }
-}
index f38067c..f208081 100644 (file)
@@ -1,6 +1,7 @@
 <!--
   ============LICENSE_START=======================================================
    Copyright (C) 2016-2018 Ericsson. All rights reserved.
+   Modifications Copyright (C) 2022 Nordix Foundation.
   ================================================================================
   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
             <version>${project.version}</version>
         </dependency>
     </dependencies>
-
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>org.codehaus.mojo</groupId>
-                <artifactId>exec-maven-plugin</artifactId>
-                <executions>
-                    <execution>
-                        <id>generate-xml-schema</id>
-                        <phase>process-classes</phase>
-                        <goals>
-                            <goal>java</goal>
-                        </goals>
-                        <configuration>
-                            <mainClass>org.onap.policy.apex.model.basicmodel.handling.ApexSchemaGenerator</mainClass>
-                            <classpathScope>compile</classpathScope>
-                            <arguments>
-                                <argument>org.onap.policy.apex.model.contextmodel.concepts.AxContextModel</argument>
-                                <argument>${project.build.directory}/model/xml/apex-context-model.xsd</argument>
-                            </arguments>
-                        </configuration>
-                    </execution>
-                </executions>
-            </plugin>
-        </plugins>
-    </build>
 </project>
index d7d8a1d..db64f88 100644 (file)
 package org.onap.policy.apex.model.contextmodel.concepts;
 
 import java.util.List;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlRootElement;
-import javax.xml.bind.annotation.XmlType;
 import lombok.EqualsAndHashCode;
 import lombok.Getter;
 import lombok.Setter;
@@ -66,11 +61,6 @@ import org.onap.policy.common.utils.validation.Assertions;
 @ToString
 @EqualsAndHashCode(callSuper = false)
 
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlRootElement(name = "apexContextAlbum", namespace = "http://www.onap.org/policy/apex-pdp")
-@XmlType(name = "AxContextAlbum", namespace = "http://www.onap.org/policy/apex-pdp", propOrder =
-    { "key", "scope", "isWritable", "itemSchema" })
-
 public class AxContextAlbum extends AxConcept {
     private static final String SCOPE_STRING = "scope";
 
@@ -84,17 +74,12 @@ public class AxContextAlbum extends AxConcept {
     /** The value of scope for a context album for which a scope has not been specified. */
     public static final String SCOPE_UNDEFINED = "UNDEFINED";
 
-    @XmlElement(name = "key", required = true)
     private AxArtifactKey key;
-
-    @XmlElement(name = SCOPE_STRING, required = true)
     private String scope;
 
-    @XmlElement(name = "isWritable", required = true)
     @Setter
     private boolean isWritable;
 
-    @XmlElement(name = "itemSchema", required = true)
     private AxArtifactKey itemSchema;
 
     /**
index 65247ab..54e3ce4 100644 (file)
@@ -28,11 +28,6 @@ import java.util.Map.Entry;
 import java.util.NavigableMap;
 import java.util.Set;
 import java.util.TreeMap;
-import javax.xml.bind.Unmarshaller;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlType;
 import lombok.AccessLevel;
 import lombok.EqualsAndHashCode;
 import lombok.Getter;
@@ -61,18 +56,11 @@ import org.onap.policy.common.utils.validation.Assertions;
 @Getter
 @ToString
 @EqualsAndHashCode(callSuper = false)
-
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlType(name = "AxContextAlbums", namespace = "http://www.onap.org/policy/apex-pdp", propOrder =
-    { "key", "albums" })
-
 public final class AxContextAlbums extends AxConcept implements AxConceptGetter<AxContextAlbum> {
     private static final long serialVersionUID = -4844259809024470975L;
 
-    @XmlElement(name = "key", required = true)
     private AxArtifactKey key;
 
-    @XmlElement(name = "albums", required = true)
     @Getter(AccessLevel.NONE)
     private Map<AxArtifactKey, AxContextAlbum> albums;
 
@@ -119,25 +107,6 @@ public final class AxContextAlbums extends AxConcept implements AxConceptGetter<
         this.albums.putAll(albums);
     }
 
-    /**
-     * When a model is unmarshalled from disk or from the database, the context album map is returned as a raw hash map.
-     * This method is called by JAXB after unmarshaling and is used to convert the hash map to a {@link NavigableMap} so
-     * that it will work with the {@link AxConceptGetter} interface.
-     *
-     * @param unmarsaller the unmarshaler that is unmarshaling the model
-     * @param parent the parent object of this object in the unmarshaler
-     */
-    public void afterUnmarshal(final Unmarshaller unmarsaller, final Object parent) {
-        Assertions.argumentNotNull(unmarsaller, "unmarsaller should not be null");
-        Assertions.argumentNotNull(parent, "parent should not be null");
-
-        // The map must be navigable to allow name and version searching, unmarshaling returns a
-        // hash map
-        final NavigableMap<AxArtifactKey, AxContextAlbum> navigableAlbums = new TreeMap<>();
-        navigableAlbums.putAll(albums);
-        albums = navigableAlbums;
-    }
-
     /**
      * {@inheritDoc}.
      */
@@ -152,6 +121,14 @@ public final class AxContextAlbums extends AxConcept implements AxConceptGetter<
         return keyList;
     }
 
+    /**
+     * {@inheritDoc}.
+     */
+    @Override
+    public void buildReferences() {
+        albums.values().stream().forEach(album -> album.buildReferences());
+    }
+
     /**
      * Sets the key of the context album container.
      *
index e171493..1effe80 100644 (file)
 package org.onap.policy.apex.model.contextmodel.concepts;
 
 import java.util.List;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlRootElement;
-import javax.xml.bind.annotation.XmlType;
 import lombok.EqualsAndHashCode;
 import lombok.Getter;
 import lombok.ToString;
@@ -52,19 +47,10 @@ import org.onap.policy.common.utils.validation.Assertions;
 @Getter
 @ToString(callSuper = true)
 @EqualsAndHashCode(callSuper = true)
-
-@XmlRootElement(name = "apexContextModel", namespace = "http://www.onap.org/policy/apex-pdp")
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlType(name = "AxContextModel", namespace = "http://www.onap.org/policy/apex-pdp",
-        propOrder = { "schemas", "albums" })
-
 public class AxContextModel extends AxModel {
     private static final long serialVersionUID = 8800599637708309945L;
 
-    @XmlElement(name = "schemas", required = true)
     private AxContextSchemas schemas;
-
-    @XmlElement(name = "albums", required = true)
     private AxContextAlbums albums;
 
     /**
index a1560c0..61434ca 100644 (file)
 package org.onap.policy.apex.model.contextmodel.concepts;
 
 import java.util.List;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlRootElement;
-import javax.xml.bind.annotation.XmlType;
 import lombok.AccessLevel;
 import lombok.Getter;
 import lombok.ToString;
@@ -59,12 +54,6 @@ import org.onap.policy.common.utils.validation.Assertions;
  */
 @Getter
 @ToString
-
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlRootElement(name = "apexContextSchema", namespace = "http://www.onap.org/policy/apex-pdp")
-@XmlType(name = "AxContextSchema", namespace = "http://www.onap.org/policy/apex-pdp", propOrder =
-    { "key", "schemaFlavour", "schemaDefinition" })
-
 public class AxContextSchema extends AxConcept {
     private static final String SCHEMA_FLAVOUR = "schemaFlavour";
     private static final String WHITESPACE_REGEXP = "\\s+$";
@@ -80,13 +69,9 @@ public class AxContextSchema extends AxConcept {
     /** The maximum permissible size of a schema definition. */
     public static final int MAX_SCHEMA_SIZE = 32672; // The maximum size supported by Apache Derby
 
-    @XmlElement(name = "key", required = true)
     private AxArtifactKey key;
-
-    @XmlElement(required = true)
     private String schemaFlavour;
 
-    @XmlElement(name = "schemaDefinition", required = true)
     @Getter(AccessLevel.NONE)
     private String schemaDefinition;
 
index a5b56f2..5b79a3d 100644 (file)
@@ -28,11 +28,6 @@ import java.util.Map.Entry;
 import java.util.NavigableMap;
 import java.util.Set;
 import java.util.TreeMap;
-import javax.xml.bind.Unmarshaller;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlType;
 import lombok.AccessLevel;
 import lombok.EqualsAndHashCode;
 import lombok.Getter;
@@ -60,18 +55,11 @@ import org.onap.policy.common.utils.validation.Assertions;
 @Getter
 @ToString
 @EqualsAndHashCode(callSuper = false)
-
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlType(name = "AxContextSchemas", namespace = "http://www.onap.org/policy/apex-pdp", propOrder =
-    { "key", "schemas" })
-
 public class AxContextSchemas extends AxConcept implements AxConceptGetter<AxContextSchema> {
     private static final long serialVersionUID = -3203734282886453582L;
 
-    @XmlElement(name = "key", required = true)
     private AxArtifactKey key;
 
-    @XmlElement(name = "schemas", required = true)
     @Getter(AccessLevel.NONE)
     private Map<AxArtifactKey, AxContextSchema> schemas;
 
@@ -105,7 +93,7 @@ public class AxContextSchemas extends AxConcept implements AxConceptGetter<AxCon
     /**
      * This Constructor creates a {@link AxContextSchemas} object with all its fields defined.
      *
-     * @param key the key of the context schema container
+     * @param key     the key of the context schema container
      * @param schemas a map of the schemas to insert in the context schema container
      */
     public AxContextSchemas(final AxArtifactKey key, final Map<AxArtifactKey, AxContextSchema> schemas) {
@@ -118,22 +106,6 @@ public class AxContextSchemas extends AxConcept implements AxConceptGetter<AxCon
         this.schemas.putAll(schemas);
     }
 
-    /**
-     * When a model is unmarshalled from disk or from the database, the context schema map is returned as a raw hash
-     * map. This method is called by JAXB after unmarshaling and is used to convert the hash map to a
-     * {@link NavigableMap} so that it will work with the {@link AxConceptGetter} interface.
-     *
-     * @param unmarshaller the unmarshaler that is unmarshaling the model
-     * @param parent the parent object of this object in the unmarshaler
-     */
-    public void afterUnmarshal(final Unmarshaller unmarshaller, final Object parent) {
-        // The map must be navigable to allow name and version searching, unmarshaling returns a
-        // hash map
-        final NavigableMap<AxArtifactKey, AxContextSchema> navigableContextSchemas = new TreeMap<>();
-        navigableContextSchemas.putAll(schemas);
-        schemas = navigableContextSchemas;
-    }
-
     /**
      * {@inheritDoc}.
      */
@@ -145,6 +117,14 @@ public class AxContextSchemas extends AxConcept implements AxConceptGetter<AxCon
         return keyList;
     }
 
+    /**
+     * {@inheritDoc}.
+     */
+    @Override
+    public void buildReferences() {
+        schemas.values().stream().forEach(schema -> schema.buildReferences());
+    }
+
     /**
      * Sets the key of the context schema container.
      *
@@ -185,30 +165,30 @@ public class AxContextSchemas extends AxConcept implements AxConceptGetter<AxCon
 
         if (key.equals(AxArtifactKey.getNullKey())) {
             result.addValidationMessage(new AxValidationMessage(key, this.getClass(), ValidationResult.INVALID,
-                            "key is a null key"));
+                "key is a null key"));
         }
 
         result = key.validate(result);
 
         if (schemas.size() == 0) {
             result.addValidationMessage(new AxValidationMessage(key, this.getClass(), ValidationResult.INVALID,
-                            "contextSchemas may not be empty"));
+                "contextSchemas may not be empty"));
         } else {
             for (final Entry<AxArtifactKey, AxContextSchema> contextSchemaEntry : schemas.entrySet()) {
                 if (contextSchemaEntry.getKey().equals(AxArtifactKey.getNullKey())) {
                     result.addValidationMessage(new AxValidationMessage(key, this.getClass(), ValidationResult.INVALID,
-                                    "key on schemas entry " + contextSchemaEntry.getKey()
-                                                    + " may not be the null key"));
+                        "key on schemas entry " + contextSchemaEntry.getKey()
+                            + " may not be the null key"));
                 } else if (contextSchemaEntry.getValue() == null) {
                     result.addValidationMessage(new AxValidationMessage(key, this.getClass(), ValidationResult.INVALID,
-                                    "value on schemas entry " + contextSchemaEntry.getKey() + " may not be null"));
+                        "value on schemas entry " + contextSchemaEntry.getKey() + " may not be null"));
                 } else {
                     if (!contextSchemaEntry.getKey().equals(contextSchemaEntry.getValue().getKey())) {
                         result.addValidationMessage(
-                                        new AxValidationMessage(key, this.getClass(), ValidationResult.INVALID,
-                                                        "key on schemas entry " + contextSchemaEntry.getKey()
-                                                                        + " does not equal entry key "
-                                                                        + contextSchemaEntry.getValue().getKey()));
+                            new AxValidationMessage(key, this.getClass(), ValidationResult.INVALID,
+                                "key on schemas entry " + contextSchemaEntry.getKey()
+                                    + " does not equal entry key "
+                                    + contextSchemaEntry.getValue().getKey()));
                     }
 
                     result = contextSchemaEntry.getValue().validate(result);
@@ -247,7 +227,7 @@ public class AxContextSchemas extends AxConcept implements AxConceptGetter<AxCon
         final Map<AxArtifactKey, AxContextSchema> newcontextSchemas = new TreeMap<>();
         for (final Entry<AxArtifactKey, AxContextSchema> contextSchemasEntry : schemas.entrySet()) {
             newcontextSchemas.put(new AxArtifactKey(contextSchemasEntry.getKey()),
-                            new AxContextSchema(contextSchemasEntry.getValue()));
+                new AxContextSchema(contextSchemasEntry.getValue()));
         }
         copy.setSchemasMap(newcontextSchemas);
 
@@ -302,7 +282,7 @@ public class AxContextSchemas extends AxConcept implements AxConceptGetter<AxCon
     @Override
     public AxContextSchema get(final String conceptKeyName, final String conceptKeyVersion) {
         return new AxConceptGetterImpl<>((NavigableMap<AxArtifactKey, AxContextSchema>) schemas).get(conceptKeyName,
-                        conceptKeyVersion);
+            conceptKeyVersion);
     }
 
     /**
@@ -319,6 +299,6 @@ public class AxContextSchemas extends AxConcept implements AxConceptGetter<AxCon
     @Override
     public Set<AxContextSchema> getAll(final String conceptKeyName, final String conceptKeyVersion) {
         return new AxConceptGetterImpl<>((NavigableMap<AxArtifactKey, AxContextSchema>) schemas).getAll(conceptKeyName,
-                        conceptKeyVersion);
+            conceptKeyVersion);
     }
 }
index a18065e..998469b 100644 (file)
@@ -117,11 +117,6 @@ public class ApexContextModelTest {
         assertEquals(INVALID_MODEL_MALSTRUCTURED_STRING, result.toString());
     }
 
-    @Test
-    public void testModelWriteReadXml() throws Exception {
-        testApexModel.testApexModelWriteReadXml();
-    }
-
     @Test
     public void testModelWriteReadJson() throws Exception {
         testApexModel.testApexModelWriteReadJson();
diff --git a/model/context-model/src/test/resources/json/ContextModel.json b/model/context-model/src/test/resources/json/ContextModel.json
deleted file mode 100644 (file)
index 2c93ef1..0000000
+++ /dev/null
@@ -1,156 +0,0 @@
-{
-   "apexContextModel" : {
-      "key" : {
-         "name" : "contextModel",
-         "version" : "0.0.1"
-      },
-      "keyInformation" : {
-         "key" : {
-            "name" : "KeyInfoMapKey",
-            "version" : "0.0.1"
-         },
-         "keyInfoMap" : {
-            "keyInfoEntry" : [ {
-               "key" : {
-                  "name" : "StringType",
-                  "version" : "0.0.1"
-               },
-               "UUID" : "00000000-0000-0000-0000-000000000000",
-               "description" : "axContextType0"
-            }, {
-               "key" : {
-                  "name" : "MapType",
-                  "version" : "0.0.1"
-               },
-               "UUID" : "00000000-0000-0000-0000-000000000001",
-               "description" : "axContextType1"
-            }, {
-               "key" : {
-                  "name" : "contextMap0",
-                  "version" : "0.0.1"
-               },
-               "UUID" : "00000000-0000-0000-0000-000000000002",
-               "description" : "contextMap0"
-            }, {
-               "key" : {
-                  "name" : "contextMap1",
-                  "version" : "0.0.1"
-               },
-               "UUID" : "00000000-0000-0000-0000-000000000003",
-               "description" : "contextMap1"
-            }, {
-               "key" : {
-                  "name" : "context",
-                  "version" : "0.0.1"
-               },
-               "UUID" : "00000000-0000-0000-0000-000000000004",
-               "description" : "axContext"
-            }, {
-               "key" : {
-                  "name" : "contextModel",
-                  "version" : "0.0.1"
-               },
-               "UUID" : "00000000-0000-0000-0000-000000000005",
-               "description" : "contextModel"
-            }, {
-               "key" : {
-                  "name" : "KeyInfoMapKey",
-                  "version" : "0.0.1"
-               },
-               "UUID" : "00000000-0000-0000-0000-000000000006",
-               "description" : "keyInformation"
-            } ]
-         }
-      },
-      "context" : {
-         "key" : {
-            "name" : "context",
-            "version" : "0.0.1"
-         },
-         "contextMaps" : {
-            "entry" : [ {
-               "key" : "contextMap0",
-               "value" : {
-                  "key" : {
-                     "name" : "contextMap0",
-                     "version" : "0.0.1"
-                  },
-                  "scope" : "APPLICATION",
-                  "mapType" : "BAG",
-                  "contextMap" : {
-                     "contextItem" : [ {
-                        "key" : "axContextItem0_0",
-                        "contextType" : {
-                           "key" : {
-                              "name" : "StringType",
-                              "version" : "0.0.1"
-                           },
-                           "javaType" : "org.onap.policy.apex.core.contextmodel.concepts.TestContextItem000"
-                        },
-                        "isWritable" : true,
-                        "valueString" : ""
-                     }, {
-                        "key" : "axContextItem0_1",
-                        "contextType" : {
-                           "key" : {
-                              "name" : "MapType",
-                              "version" : "0.0.1"
-                           },
-                           "javaType" : "org.onap.policy.apex.core.contextmodel.concepts.TestContextItem00A"
-                        },
-                        "isWritable" : true,
-                        "valueString" : ""
-                     }, {
-                        "key" : "axContextItem0_2",
-                        "contextType" : {
-                           "key" : {
-                              "name" : "StringType",
-                              "version" : "0.0.1"
-                           },
-                           "javaType" : "org.onap.policy.apex.core.contextmodel.concepts.TestContextItem000"
-                        },
-                        "isWritable" : true,
-                        "valueString" : ""
-                     }, {
-                        "key" : "axContextItem0_3",
-                        "contextType" : {
-                           "key" : {
-                              "name" : "MapType",
-                              "version" : "0.0.1"
-                           },
-                           "javaType" : "org.onap.policy.apex.core.contextmodel.concepts.TestContextItem00A"
-                        },
-                        "isWritable" : true,
-                        "valueString" : ""
-                     } ]
-                  }
-               }
-            }, {
-               "key" : "contextMap1",
-               "value" : {
-                  "key" : {
-                     "name" : "contextMap1",
-                     "version" : "0.0.1"
-                  },
-                  "scope" : "GLOBAL",
-                  "mapType" : "SAMETYPE",
-                  "templateContextItem" : {
-                     "key" : "axTemplateContextItem",
-                     "contextType" : {
-                        "key" : {
-                           "name" : "MapType",
-                           "version" : "0.0.1"
-                        },
-                        "javaType" : "org.onap.policy.apex.core.contextmodel.concepts.TestContextItem00A"
-                     },
-                     "isWritable" : true
-                  },
-                  "contextMap" : {
-                     "contextItem" : [ ]
-                  }
-               }
-            } ]
-         }
-      }
-   }
-}
\ No newline at end of file
index 7a1b485..9db1b20 100644 (file)
@@ -2,6 +2,7 @@
   ============LICENSE_START=======================================================
    Copyright (C) 2018 Ericsson. All rights reserved.
    Modifications Copyright (C) 2022 Bell Canada.
+   Modifications Copyright (C) 2022 Nordix Foundation.
   ================================================================================
   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
             <artifactId>simpleclient</artifactId>
         </dependency>
     </dependencies>
-
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>org.codehaus.mojo</groupId>
-                <artifactId>exec-maven-plugin</artifactId>
-                <executions>
-                    <execution>
-                        <id>generate-xml-schema</id>
-                        <phase>process-classes</phase>
-                        <goals>
-                            <goal>java</goal>
-                        </goals>
-                        <configuration>
-                            <mainClass>org.onap.policy.apex.model.basicmodel.handling.ApexSchemaGenerator</mainClass>
-                            <classpathScope>compile</classpathScope>
-                            <arguments>
-                                <argument>org.onap.policy.apex.model.enginemodel.concepts.AxEngineModel</argument>
-                                <argument>${project.build.directory}/model/xml/apex-engine-model.xsd</argument>
-                            </arguments>
-                        </configuration>
-                    </execution>
-                </executions>
-            </plugin>
-        </plugins>
-    </build>
-</project>
\ No newline at end of file
+</project>
index 97e85c5..1a590a4 100644 (file)
@@ -24,11 +24,6 @@ package org.onap.policy.apex.model.enginemodel.concepts;
 
 import java.text.SimpleDateFormat;
 import java.util.List;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlRootElement;
-import javax.xml.bind.annotation.XmlType;
 import org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey;
 import org.onap.policy.apex.model.basicmodel.concepts.AxConcept;
 import org.onap.policy.apex.model.basicmodel.concepts.AxKey;
@@ -53,20 +48,12 @@ import org.onap.policy.common.utils.validation.Assertions;
  * <p>Validation checks that the current state {@link AxEngineState} is defined and that the time stamp
  * is set on the engine model.
  */
-@XmlRootElement(name = "apexEngineModel", namespace = "http://www.onap.org/policy/apex-pdp")
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlType(name = "AxEngineModel", namespace = "http://www.onap.org/policy/apex-pdp",
-        propOrder = {"timestamp", "state", "stats"})
-
 public class AxEngineModel extends AxContextModel {
     private static final long serialVersionUID = 6381235864606564046L;
     private static final int HASH_CODE_PRIME = 32;
 
     private long timestamp;
-
-    @XmlElement(required = true)
     private AxEngineState state;
-
     private AxEngineStats stats;
 
     /**
index 63c8706..24c564b 100644 (file)
@@ -2,6 +2,7 @@
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
  *  Modifications Copyright (C) 2022 Bell Canada. All rights reserved.
+ *  Modifications Copyright (C) 2022 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
 
 package org.onap.policy.apex.model.enginemodel.concepts;
 
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlType;
-
 /**
  * This enumeration indicates the execution state of an Apex engine.
  *
  * @author Liam Fallon (liam.fallon@ericsson.com)
  */
 
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlType(name = "AxEngineState", namespace = "http://www.onap.org/policy/apex-pdp")
 public enum AxEngineState {
     /** The state of the engine is not known. */
     UNDEFINED(0),
@@ -54,4 +49,4 @@ public enum AxEngineState {
     public int getStateIdentifier() {
         return stateIdentifier;
     }
-}
\ No newline at end of file
+}
index af5e8d4..36df645 100644 (file)
@@ -26,11 +26,6 @@ import io.prometheus.client.Gauge;
 import io.prometheus.client.Histogram;
 import java.text.SimpleDateFormat;
 import java.util.List;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlRootElement;
-import javax.xml.bind.annotation.XmlType;
 import lombok.Getter;
 import org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey;
 import org.onap.policy.apex.model.basicmodel.concepts.AxConcept;
@@ -47,10 +42,6 @@ import org.onap.policy.common.utils.validation.Assertions;
  * engine, and the time stamp of the last engine start are recorded.
  */
 
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlRootElement(name = "apexEngineStats", namespace = "http://www.onap.org/policy/apex-pdp")
-@XmlType(name = "AxEngineStats", namespace = "http://www.onap.org/policy/apex-pdp", propOrder = {"key", "timeStamp",
-    "eventCount", "lastExecutionTime", "averageExecutionTime", "upTime", "lastStart"})
 public class AxEngineStats extends AxConcept {
     private static final long serialVersionUID = -6981129081962785368L;
     private static final int HASH_CODE_PRIME = 32;
@@ -71,28 +62,15 @@ public class AxEngineStats extends AxConcept {
             .name("apex_engine_last_execution_time").labelNames(ENGINE_INSTANCE_ID)
             .help("Time taken to execute the last APEX policy in seconds.").register();
 
-    @XmlElement(name = "key", required = true)
     private AxReferenceKey key;
-
-    @XmlElement(required = true)
     private long timeStamp;
-
-    @XmlElement(required = true)
     private long eventCount;
-
-    @XmlElement(required = true)
     private long lastExecutionTime;
-
-    @XmlElement(required = true)
     private double averageExecutionTime;
-
-    @XmlElement(required = true)
     private long upTime;
 
     @Getter
     private transient long lastEnterTime;
-
-    @XmlElement(required = true)
     private long lastStart;
 
     /**
index ea47c69..4557af7 100644 (file)
@@ -1,19 +1,20 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
+ *  Modifications Copyright (C) 2022 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at
- * 
+ *
  *      http://www.apache.org/licenses/LICENSE-2.0
- * 
+ *
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
- * 
+ *
  * SPDX-License-Identifier: Apache-2.0
  * ============LICENSE_END=========================================================
  */
 /**
  * Contains the concepts required to receive state information and statistcs from running APEX
  * engines.
- * 
+ *
  * @author Liam Fallon (liam.fallon@ericsson.com)
  */
-@XmlSchema(namespace = "http://www.onap.org/policy/apex-pdp", elementFormDefault = XmlNsForm.QUALIFIED,
-        xmlns = {@XmlNs(namespaceURI = "http://www.onap.org/policy/apex-pdp", prefix = "")})
-
 package org.onap.policy.apex.model.enginemodel.concepts;
-
-import javax.xml.bind.annotation.XmlNs;
-import javax.xml.bind.annotation.XmlNsForm;
-import javax.xml.bind.annotation.XmlSchema;
index 8baa59b..e7fdd2d 100644 (file)
@@ -74,11 +74,6 @@ public class ApexEngineModelTest {
         assertEquals(INVALID_MODEL_MALSTRUCTURED_STRING, result.toString());
     }
 
-    @Test
-    public void testModelWriteReadXml() throws Exception {
-        testApexModel.testApexModelWriteReadXml();
-    }
-
     @Test
     public void testModelWriteReadJson() throws Exception {
         testApexModel.testApexModelWriteReadJson();
index 5e5f848..813ebb8 100644 (file)
@@ -1,6 +1,7 @@
 <!--
   ============LICENSE_START=======================================================
    Copyright (C) 2018 Ericsson. All rights reserved.
+   Modifications Copyright (C) 2022 Nordix Foundation.
   ================================================================================
   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
             <version>${project.version}</version>
         </dependency>
     </dependencies>
-
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>org.codehaus.mojo</groupId>
-                <artifactId>exec-maven-plugin</artifactId>
-                <executions>
-                    <execution>
-                        <id>generate-xml-schema</id>
-                        <phase>process-classes</phase>
-                        <goals>
-                            <goal>java</goal>
-                        </goals>
-                        <configuration>
-                            <mainClass>org.onap.policy.apex.model.basicmodel.handling.ApexSchemaGenerator</mainClass>
-                            <classpathScope>compile</classpathScope>
-                            <arguments>
-                                <argument>org.onap.policy.apex.model.eventmodel.concepts.AxEventModel</argument>
-                                <argument>${project.build.directory}/model/xml/apex-event-model.xsd</argument>
-                            </arguments>
-                        </configuration>
-                    </execution>
-                </executions>
-            </plugin>
-        </plugins>
-    </build>
 </project>
index 8128b3d..a4c0e9d 100644 (file)
@@ -23,6 +23,7 @@
 package org.onap.policy.apex.model.eventmodel.concepts;
 
 import com.google.common.base.Strings;
+import com.google.gson.annotations.SerializedName;
 import java.util.Arrays;
 import java.util.List;
 import java.util.Map;
@@ -31,12 +32,6 @@ import java.util.Set;
 import java.util.SortedMap;
 import java.util.TreeMap;
 import java.util.TreeSet;
-import javax.xml.bind.Unmarshaller;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlRootElement;
-import javax.xml.bind.annotation.XmlType;
 import org.apache.commons.lang3.EnumUtils;
 import org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey;
 import org.onap.policy.apex.model.basicmodel.concepts.AxConcept;
@@ -69,35 +64,22 @@ import org.onap.policy.common.utils.validation.Assertions;
  * is checked to ensure it matches the event parameter key on the event. Finally, the parent key of each parameter is
  * checked to ensure it matches the event key.
  */
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlRootElement(name = "apexEvent", namespace = "http://www.onap.org/policy/apex-pdp")
-@XmlType(name = "AxEvent", namespace = "http://www.onap.org/policy/apex-pdp", propOrder =
-    { "key", "nameSpace", "source", "target", "parameterMap", "toscaPolicyState"})
-
 public class AxEvent extends AxConcept {
     private static final long serialVersionUID = -1460388382582984269L;
 
     private static final String WHITESPACE_REGEXP = "\\s+$";
 
     /** The key of the event, unique in the Apex system. */
-    @XmlElement(name = "key", required = true)
     // CHECKSTYLE:OFF: checkstyle:VisibilityMonitor
     protected AxArtifactKey key;
     // CHECKSTYLE:ON: checkstyle:VisibilityMonitor
 
-    @XmlElement(required = true)
     private String nameSpace;
-
-    @XmlElement(required = true)
     private String source;
-
-    @XmlElement(required = true)
     private String target;
 
-    @XmlElement(name = "parameter", required = true)
+    @SerializedName("parameter")
     private Map<String, AxField> parameterMap;
-
-    @XmlElement(required = false)
     private String toscaPolicyState;
 
     /**
@@ -189,14 +171,10 @@ public class AxEvent extends AxConcept {
     }
 
     /**
-     * When an event is unmarshalled from disk or from the database, the parent key in the reference keys in its
-     * parameter map are not set. This method is called by JAXB after unmarshaling and is used to set the parent key of
-     * the {@link AxField} instances in the parameter map to be the key of the event that contains them.
-     *
-     * @param unmarshaler the unmarshaler that is unmarshaling the model
-     * @param parent the parent object of this object in the unmarshaler
+     * {@inheritDoc}.
      */
-    public void afterUnmarshal(final Unmarshaller unmarshaler, final Object parent) {
+    @Override
+    public void buildReferences() {
         for (final AxField parameter : parameterMap.values()) {
             parameter.getKey().setParentArtifactKey(key);
         }
index bb43076..b91712c 100644 (file)
 package org.onap.policy.apex.model.eventmodel.concepts;
 
 import java.util.List;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlRootElement;
-import javax.xml.bind.annotation.XmlType;
 import org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey;
 import org.onap.policy.apex.model.basicmodel.concepts.AxConcept;
 import org.onap.policy.apex.model.basicmodel.concepts.AxKey;
@@ -46,18 +41,10 @@ import org.onap.policy.common.utils.validation.Assertions;
  * <p>Validation runs {@link AxModel} validation on the model. In addition, the {@link AxContextSchemas} and
  * {@link AxEvents} validation is run on the context schemas and events in the model.
  */
-
-@XmlRootElement(name = "apexEventModel", namespace = "http://www.onap.org/policy/apex-pdp")
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlType(name = "AxEventModel", namespace = "http://www.onap.org/policy/apex-pdp", propOrder = { "schemas", "events" })
-
 public class AxEventModel extends AxModel {
     private static final long serialVersionUID = 8800599637708309945L;
 
-    @XmlElement(name = "schemas", required = true)
     private AxContextSchemas schemas;
-
-    @XmlElement(name = "events", required = true)
     private AxEvents events;
 
     /**
index 26275a1..aac1562 100644 (file)
@@ -27,11 +27,6 @@ import java.util.Map.Entry;
 import java.util.NavigableMap;
 import java.util.Set;
 import java.util.TreeMap;
-import javax.xml.bind.Unmarshaller;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlType;
 import org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey;
 import org.onap.policy.apex.model.basicmodel.concepts.AxConcept;
 import org.onap.policy.apex.model.basicmodel.concepts.AxConceptGetter;
@@ -52,17 +47,10 @@ import org.onap.policy.common.utils.validation.Assertions;
  * container. Each event entry is checked to ensure that its key and value are not null and that the key matches the key
  * in the map value. Each event entry is then validated individually.
  */
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlType(name = "AxEvents", namespace = "http://www.onap.org/policy/apex-pdp", propOrder =
-    { "key", "eventMap" })
-
 public class AxEvents extends AxConcept implements AxConceptGetter<AxEvent> {
     private static final long serialVersionUID = 4290442590545820316L;
 
-    @XmlElement(name = "key", required = true)
     private AxArtifactKey key;
-
-    @XmlElement(required = true)
     private Map<AxArtifactKey, AxEvent> eventMap;
 
     /**
@@ -107,21 +95,6 @@ public class AxEvents extends AxConcept implements AxConceptGetter<AxEvent> {
         this.eventMap.putAll(eventMap);
     }
 
-    /**
-     * When a model is unmarshalled from disk or from the database, the event map is returned as a raw hash map. This
-     * method is called by JAXB after unmarshaling and is used to convert the hash map to a {@link NavigableMap} so that
-     * it will work with the {@link AxConceptGetter} interface.
-     *
-     * @param unmarshaler the unmarshaler that is unmarshaling the model
-     * @param parent the parent object of this object in the unmarshaler
-     */
-    public void afterUnmarshal(final Unmarshaller unmarshaler, final Object parent) {
-        // The map must be navigable to allow name and version searching, unmarshaling returns a hash map
-        final NavigableMap<AxArtifactKey, AxEvent> navigableEventMap = new TreeMap<>();
-        navigableEventMap.putAll(eventMap);
-        eventMap = navigableEventMap;
-    }
-
     /**
      * {@inheritDoc}.
      */
@@ -144,6 +117,14 @@ public class AxEvents extends AxConcept implements AxConceptGetter<AxEvent> {
         return keyList;
     }
 
+    /**
+     * {@inheritDoc}.
+     */
+    @Override
+    public void buildReferences() {
+        eventMap.values().stream().forEach(event -> event.buildReferences());
+    }
+
     /**
      * Sets the key of the event container.
      *
index 9f98a62..26511c9 100644 (file)
 package org.onap.policy.apex.model.eventmodel.concepts;
 
 import java.util.List;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlRootElement;
-import javax.xml.bind.annotation.XmlType;
-import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
 import org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey;
 import org.onap.policy.apex.model.basicmodel.concepts.AxConcept;
 import org.onap.policy.apex.model.basicmodel.concepts.AxKey;
@@ -37,7 +31,6 @@ import org.onap.policy.apex.model.basicmodel.concepts.AxReferenceKey;
 import org.onap.policy.apex.model.basicmodel.concepts.AxValidationMessage;
 import org.onap.policy.apex.model.basicmodel.concepts.AxValidationResult;
 import org.onap.policy.apex.model.basicmodel.concepts.AxValidationResult.ValidationResult;
-import org.onap.policy.apex.model.basicmodel.xml.AxReferenceKeyAdapter;
 import org.onap.policy.common.utils.validation.Assertions;
 
 /**
@@ -50,11 +43,6 @@ import org.onap.policy.common.utils.validation.Assertions;
  *
  * <p>Validation checks that the field key and the field schema reference key are not null.
  */
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlRootElement(name = "apexField", namespace = "http://www.onap.org/policy/apex-pdp")
-@XmlType(name = "AxField", namespace = "http://www.onap.org/policy/apex-pdp", propOrder =
-    { "key", "fieldSchemaKey", "optional" })
-
 public class AxField extends AxConcept {
     private static final String KEY_MAY_NOT_BE_NULL = "key may not be null";
     private static final String FIELD_SCHEMA_KEY_MAY_NOT_BE_NULL = "fieldSchemaKey may not be null";
@@ -64,14 +52,8 @@ public class AxField extends AxConcept {
     private static final int HASH_PRIME_0 = 1231;
     private static final int HASH_PRIME_1 = 1237;
 
-    @XmlElement(name = "key", required = true)
-    @XmlJavaTypeAdapter(AxReferenceKeyAdapter.class)
     private AxReferenceKey key;
-
-    @XmlElement(required = true)
     private AxArtifactKey fieldSchemaKey;
-
-    @XmlElement(required = false)
     private boolean optional;
 
     /**
index 2626e8b..6155c71 100644 (file)
 
 package org.onap.policy.apex.model.eventmodel.concepts;
 
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlRootElement;
-import javax.xml.bind.annotation.XmlType;
 import org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey;
 import org.onap.policy.apex.model.basicmodel.concepts.AxReferenceKey;
 
 /**
  * This class specializes the {@link AxField} class for use as input fields on events.
  */
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlRootElement(name = "apexInputField", namespace = "http://www.onap.org/policy/apex-pdp")
-@XmlType(name = "AxInputField", namespace = "http://www.onap.org/policy/apex-pdp")
-
 public class AxInputField extends AxField {
     private static final long serialVersionUID = 2090324845463750391L;
 
index a3e8352..7f34376 100644 (file)
 
 package org.onap.policy.apex.model.eventmodel.concepts;
 
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlRootElement;
-import javax.xml.bind.annotation.XmlType;
 import org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey;
 import org.onap.policy.apex.model.basicmodel.concepts.AxReferenceKey;
 
 /**
  * This class specializes the {@link AxField} class for use as output fields on events.
  */
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlRootElement(name = "apexOutputField", namespace = "http://www.onap.org/policy/apex-pdp")
-@XmlType(name = "AxOutputField", namespace = "http://www.onap.org/policy/apex-pdp")
-
 public class AxOutputField extends AxField {
     private static final long serialVersionUID = 2090324845463750391L;
 
index 7b20b39..414d22d 100644 (file)
@@ -1,6 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
+ *  Modifications Copyright (C) 2022 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  *
  * @author Liam Fallon (liam.fallon@ericsson.com)
  */
-
-@XmlSchema(namespace = "http://www.onap.org/policy/apex-pdp", elementFormDefault = XmlNsForm.QUALIFIED,
-        xmlns = { @XmlNs(namespaceURI = "http://www.onap.org/policy/apex-pdp", prefix = "") })
-
 package org.onap.policy.apex.model.eventmodel.concepts;
-
-import javax.xml.bind.annotation.XmlNs;
-import javax.xml.bind.annotation.XmlNsForm;
-import javax.xml.bind.annotation.XmlSchema;
index 111d27f..7062fcb 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2019-2020 Nordix Foundation.
+ *  Modifications Copyright (C) 2019-2020,2022 Nordix Foundation.
  *  Modifications Copyright (C) 2022 Bell Canada.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
@@ -39,6 +39,7 @@ import org.onap.policy.apex.model.basicmodel.concepts.AxValidationResult.Validat
 
 /**
  * Test events.
+ *
  * @author Liam Fallon (liam.fallon@ericsson.com)
  */
 public class EventsTest {
@@ -78,20 +79,20 @@ public class EventsTest {
         assertEquals(AxToscaPolicyProcessingStatus.ENTRY.name(), event.getToscaPolicyState());
 
         final AxField eventField =
-                new AxField(new AxReferenceKey(eventKey, "Field0"), new AxArtifactKey("Field0Schema", "0.0.1"));
+            new AxField(new AxReferenceKey(eventKey, "Field0"), new AxArtifactKey("Field0Schema", "0.0.1"));
         event.getParameterMap().put(eventField.getKey().getLocalName(), eventField);
         assertEquals(1, event.getParameterMap().size());
 
         final AxField eventFieldBadParent =
-                new AxField(new AxReferenceKey(new AxArtifactKey("OtherEvent", "0.0.01"), "Field0"),
-                        new AxArtifactKey("Field0Schema", "0.0.1"));
+            new AxField(new AxReferenceKey(new AxArtifactKey("OtherEvent", "0.0.01"), "Field0"),
+                new AxArtifactKey("Field0Schema", "0.0.1"));
 
         final AxArtifactKey newEventKey = new AxArtifactKey("NewEventName", "0.0.1");
         event.setKey(newEventKey);
         assertEquals("NewEventName:0.0.1", event.getKey().getId());
         assertEquals("NewEventName:0.0.1", event.getKeys().get(0).getId());
         assertEquals("NewEventName:0.0.1",
-                event.getParameterMap().get("Field0").getKey().getParentArtifactKey().getId());
+            event.getParameterMap().get("Field0").getKey().getParentArtifactKey().getId());
         event.setKey(eventKey);
         assertEquals("EventName:0.0.1", event.getKey().getId());
         assertEquals("EventName:0.0.1", event.getKeys().get(0).getId());
@@ -190,11 +191,13 @@ public class EventsTest {
         event.setToscaPolicyState(AxToscaPolicyProcessingStatus.ENTRY.name());
 
         event.clean();
-        event.afterUnmarshal(null, null);
+        event.buildReferences();
+        assertNotEquals(AxKey.NULL_KEY_NAME,
+            event.getParameterMap().values().iterator().next().getKey().getParentKeyName());
 
         final AxEvent clonedEvent = new AxEvent(event);
         assertEquals("AxEvent:(key=AxArtifactKey:(name=EventName,version=0.0.1),nameSpace=namespace",
-                clonedEvent.toString().substring(0, 77));
+            clonedEvent.toString().substring(0, 77));
 
         assertNotEquals(0, event.hashCode());
 
@@ -202,37 +205,38 @@ public class EventsTest {
         assertEquals(event, event); // NOSONAR
         assertEquals(event, clonedEvent);
         assertNotNull(event);
-        assertNotEquals(event, (Object) "Hello");
+
+        Object helloObj = "Hello";
+        assertNotEquals(event, helloObj);
         assertNotEquals(event, new AxEvent(AxArtifactKey.getNullKey(), "namespace", "source", "target", parameterMap,
-                        AxToscaPolicyProcessingStatus.ENTRY.name()));
+            AxToscaPolicyProcessingStatus.ENTRY.name()));
         assertNotEquals(event, new AxEvent(eventKey, "namespace1", "source", "target", parameterMap,
-                AxToscaPolicyProcessingStatus.ENTRY.name()));
+            AxToscaPolicyProcessingStatus.ENTRY.name()));
         assertNotEquals(event, new AxEvent(eventKey, "namespace", "source2", "target", parameterMap,
-                AxToscaPolicyProcessingStatus.ENTRY.name()));
+            AxToscaPolicyProcessingStatus.ENTRY.name()));
         assertNotEquals(event, new AxEvent(eventKey, "namespace", "source", "target3", parameterMap,
-                AxToscaPolicyProcessingStatus.ENTRY.name()));
+            AxToscaPolicyProcessingStatus.ENTRY.name()));
         assertNotEquals(event, new AxEvent(eventKey, "namespace", "source", "target", parameterMapEmpty,
-                AxToscaPolicyProcessingStatus.ENTRY.name()));
+            AxToscaPolicyProcessingStatus.ENTRY.name()));
         assertEquals(event, new AxEvent(eventKey, "namespace", "source", "target", parameterMap,
-                AxToscaPolicyProcessingStatus.ENTRY.name()));
+            AxToscaPolicyProcessingStatus.ENTRY.name()));
 
         assertEquals(0, event.compareTo(event));
         assertEquals(0, event.compareTo(clonedEvent));
         assertNotEquals(0, event.compareTo(new AxArtifactKey()));
         assertNotEquals(0, event.compareTo(null));
-        assertNotEquals(0, event
-                .compareTo(new AxEvent(AxArtifactKey.getNullKey(), "namespace", "source", "target", parameterMap,
-                        AxToscaPolicyProcessingStatus.ENTRY.name())));
+        assertNotEquals(0, event.compareTo(new AxEvent(AxArtifactKey.getNullKey(), "namespace", "source", "target",
+            parameterMap, AxToscaPolicyProcessingStatus.ENTRY.name())));
         assertNotEquals(0, event.compareTo(new AxEvent(eventKey, "namespace1", "source", "target", parameterMap,
-                AxToscaPolicyProcessingStatus.ENTRY.name())));
+            AxToscaPolicyProcessingStatus.ENTRY.name())));
         assertNotEquals(0, event.compareTo(new AxEvent(eventKey, "namespace", "source2", "target", parameterMap,
-                AxToscaPolicyProcessingStatus.ENTRY.name())));
+            AxToscaPolicyProcessingStatus.ENTRY.name())));
         assertNotEquals(0, event.compareTo(new AxEvent(eventKey, "namespace", "source", "target3", parameterMap,
-                AxToscaPolicyProcessingStatus.ENTRY.name())));
+            AxToscaPolicyProcessingStatus.ENTRY.name())));
         assertNotEquals(0, event.compareTo(new AxEvent(eventKey, "namespace", "source", "target", parameterMapEmpty,
-                AxToscaPolicyProcessingStatus.ENTRY.name())));
+            AxToscaPolicyProcessingStatus.ENTRY.name())));
         assertEquals(0, event.compareTo(new AxEvent(eventKey, "namespace", "source", "target", parameterMap,
-                AxToscaPolicyProcessingStatus.ENTRY.name())));
+            AxToscaPolicyProcessingStatus.ENTRY.name())));
 
         assertNotNull(event.getKeys());
 
@@ -285,17 +289,19 @@ public class EventsTest {
         assertEquals(ValidationResult.VALID, result.getValidationResult());
 
         events.clean();
-        events.afterUnmarshal(null, null);
+        event.buildReferences();
+        assertNotEquals(AxKey.NULL_KEY_NAME,
+            event.getParameterMap().values().iterator().next().getKey().getParentKeyName());
 
         final AxEvents clonedEvents = new AxEvents(events);
         assertEquals("AxEvents:(key=AxArtifactKey:(name=EventsKey,version=0.0.1),e",
-                clonedEvents.toString().substring(0, 60));
+            clonedEvents.toString().substring(0, 60));
 
         assertNotEquals(0, events.hashCode());
 
         assertEquals(events, clonedEvents);
         assertNotNull(events);
-        assertNotEquals(events, (Object) "Hello");
+        assertNotEquals(event, helloObj);
         assertNotEquals(events, new AxEvents(new AxArtifactKey()));
 
         assertEquals(0, events.compareTo(events));
@@ -314,4 +320,4 @@ public class EventsTest {
         assertEquals(1, events.getAll("EventName", "0.0.1").size());
         assertEquals(0, events.getAll("NonExistantEventsName").size());
     }
-}
\ No newline at end of file
+}
index 5f770d1..21b97c4 100644 (file)
@@ -272,11 +272,6 @@ public class ApexEventModelTest {
         assertEquals(INVALID_MODEL_MALSTRUCTURED_STRING, result.toString());
     }
 
-    @Test
-    public void testModelWriteReadXml() throws Exception {
-        testApexModel.testApexModelWriteReadXml();
-    }
-
     @Test
     public void testModelWriteReadJson() throws Exception {
         testApexModel.testApexModelWriteReadJson();
index d05d410..83e3b53 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2020 Nordix Foundation.
+ *  Modifications Copyright (C) 2020,2022 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -25,13 +25,6 @@ import java.io.PrintWriter;
 import java.io.StringWriter;
 import java.util.ArrayList;
 import java.util.List;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlAttribute;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlElementWrapper;
-import javax.xml.bind.annotation.XmlEnum;
-import javax.xml.bind.annotation.XmlRootElement;
 import lombok.Setter;
 
 /**
@@ -39,14 +32,11 @@ import lombok.Setter;
  * {@link ApexModel} API.
  */
 @Setter
-@XmlRootElement
-@XmlAccessorType(XmlAccessType.NONE)
 public class ApexApiResult {
 
     /**
      * This enumeration is used to represent the result status of a call on the {@link ApexModel} API.
      */
-    @XmlEnum(value = String.class)
     public enum Result {
         /** The method call succeeded. */
         SUCCESS,
@@ -155,7 +145,6 @@ public class ApexApiResult {
      *
      * @return true, if the result indicates the API operation succeeded
      */
-    @XmlAttribute(required = true)
     public boolean isOk() {
         return Result.isOk(result);
     }
@@ -174,7 +163,6 @@ public class ApexApiResult {
      *
      * @return the result status
      */
-    @XmlAttribute(required = true)
     public Result getResult() {
         return result;
     }
@@ -184,8 +172,6 @@ public class ApexApiResult {
      *
      * @return the list of messages returned by an API operation
      */
-    @XmlElementWrapper(required = false, nillable = true)
-    @XmlElement(nillable = true, name = "message")
     public List<String> getMessages() {
         return messages;
     }
@@ -195,7 +181,6 @@ public class ApexApiResult {
      *
      * @return the messages returned by an API operation as a single string
      */
-    @XmlElement(required = true, name = "content")
     public String getMessage() {
         final StringBuilder builder = new StringBuilder();
         for (final String message : messages) {
index d721e33..3c6e4c0 100644 (file)
@@ -56,10 +56,9 @@ public interface ApexModel extends ApexEditorApi {
      * Save an Apex model to a file.
      *
      * @param fileName the file name
-     * @param xmlFlag if true, save the file in XML format, otherwise save the file in the default JSON format
      * @return the result of the operation
      */
-    ApexApiResult saveToFile(String fileName, boolean xmlFlag);
+    ApexApiResult saveToFile(String fileName);
 
     /**
      * Read an APEX model from a location identified by a URL.
@@ -73,10 +72,9 @@ public interface ApexModel extends ApexEditorApi {
      * Write an APEX model to a location identified by a URL.
      *
      * @param urlString the URL to read the model from
-     * @param xmlFlag if true, save the file in XML format, otherwise save the file in the default JSON format
      * @return the result of the operation
      */
-    ApexApiResult writeToUrl(String urlString, boolean xmlFlag);
+    ApexApiResult writeToUrl(String urlString);
 
     /**
      * Analyse an Apex model that shows the concept usage references of a policy model.
index 5be8b02..908f562 100644 (file)
@@ -1,19 +1,20 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
+ *  Modifications Copyright (C) 2022 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at
- * 
+ *
  *      http://www.apache.org/licenses/LICENSE-2.0
- * 
+ *
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
- * 
+ *
  * SPDX-License-Identifier: Apache-2.0
  * ============LICENSE_END=========================================================
  */
@@ -34,12 +35,10 @@ public class ApexModelFactory {
      * Creates a new ApexModel object from its implementation.
      *
      * @param apexProperties default values and other configuration information for the apex model
-     * @param jsonMode set to true to return JSON strings in list and delete operations, otherwise
-     *        set to false
      * @return the apex model
      */
-    public ApexModel createApexModel(final Properties apexProperties, final boolean jsonMode) {
-        return new ApexModelImpl(setDefaultPropertyValues(apexProperties), jsonMode);
+    public ApexModel createApexModel(final Properties apexProperties) {
+        return new ApexModelImpl(setDefaultPropertyValues(apexProperties));
     }
 
     /**
index 944d95f..54b94d0 100644 (file)
@@ -54,9 +54,6 @@ public final class ApexModelImpl implements ApexModel {
     @Setter
     private AxPolicyModel policyModel = new AxPolicyModel();
 
-    // The file name for the loaded file
-    private String fileName = null;
-
     // @formatter:off
     private ModelFacade modelFacade;
     private KeyInformationFacade keyInformationFacade;
@@ -69,27 +66,24 @@ public final class ApexModelImpl implements ApexModel {
     // @formatter:on
 
     private Properties apexProperties;
-    private boolean jsonMode;
 
     /**
      * Create an implementation of the Apex editor and model APIs.
      *
      * @param apexProperties The properties to use for the model
-     * @param jsonMode set to true to return JSON strings in list and delete operations, otherwise set to false
      */
-    public ApexModelImpl(final Properties apexProperties, final boolean jsonMode) {
+    public ApexModelImpl(final Properties apexProperties) {
         this.apexProperties = apexProperties;
-        this.jsonMode = jsonMode;
 
         // @formatter:off
-        this.modelFacade          = new ModelFacade(this, apexProperties, jsonMode);
-        this.keyInformationFacade = new KeyInformationFacade(this, apexProperties, jsonMode);
-        this.contextSchemaFacade  = new ContextSchemaFacade(this, apexProperties, jsonMode);
-        this.eventFacade          = new EventFacade(this, apexProperties, jsonMode);
-        this.contextAlbumFacade   = new ContextAlbumFacade(this, apexProperties, jsonMode);
-        this.taskFacade           = new TaskFacade(this, apexProperties, jsonMode);
-        this.policyFacade         = new PolicyFacade(this, apexProperties, jsonMode);
-        this.modelHandlerFacade   = new ModelHandlerFacade(this, apexProperties, jsonMode);
+        this.modelFacade          = new ModelFacade(this, apexProperties);
+        this.keyInformationFacade = new KeyInformationFacade(this, apexProperties);
+        this.contextSchemaFacade  = new ContextSchemaFacade(this, apexProperties);
+        this.eventFacade          = new EventFacade(this, apexProperties);
+        this.contextAlbumFacade   = new ContextAlbumFacade(this, apexProperties);
+        this.taskFacade           = new TaskFacade(this, apexProperties);
+        this.policyFacade         = new PolicyFacade(this, apexProperties);
+        this.modelHandlerFacade   = new ModelHandlerFacade(this, apexProperties);
         // @formatter:on
     }
 
@@ -101,17 +95,15 @@ public final class ApexModelImpl implements ApexModel {
         ApexModelImpl ret = new ApexModelImpl();
         // @formatter:off
         ret.policyModel          = new AxPolicyModel(policyModel);
-        ret.fileName             = this.fileName;
         ret.apexProperties       = this.apexProperties;
-        ret.jsonMode             = this.jsonMode;
-        ret.modelFacade          = new ModelFacade(ret, this.apexProperties, this.jsonMode);
-        ret.keyInformationFacade = new KeyInformationFacade(ret, this.apexProperties, this.jsonMode);
-        ret.contextSchemaFacade  = new ContextSchemaFacade(ret, this.apexProperties, this.jsonMode);
-        ret.eventFacade          = new EventFacade(ret, this.apexProperties, this.jsonMode);
-        ret.contextAlbumFacade   = new ContextAlbumFacade(ret, this.apexProperties, this.jsonMode);
-        ret.taskFacade           = new TaskFacade(ret, this.apexProperties, this.jsonMode);
-        ret.policyFacade         = new PolicyFacade(ret, this.apexProperties, this.jsonMode);
-        ret.modelHandlerFacade   = new ModelHandlerFacade(ret, this.apexProperties, this.jsonMode);
+        ret.modelFacade          = new ModelFacade(ret, this.apexProperties);
+        ret.keyInformationFacade = new KeyInformationFacade(ret, this.apexProperties);
+        ret.contextSchemaFacade  = new ContextSchemaFacade(ret, this.apexProperties);
+        ret.eventFacade          = new EventFacade(ret, this.apexProperties);
+        ret.contextAlbumFacade   = new ContextAlbumFacade(ret, this.apexProperties);
+        ret.taskFacade           = new TaskFacade(ret, this.apexProperties);
+        ret.policyFacade         = new PolicyFacade(ret, this.apexProperties);
+        ret.modelHandlerFacade   = new ModelHandlerFacade(ret, this.apexProperties);
         // @formatter:on
 
         return ret;
@@ -770,7 +762,6 @@ public final class ApexModelImpl implements ApexModel {
     @Override
     // CHECKSTYLE:OFF: checkstyle:HiddenField
     public ApexApiResult loadFromFile(final String fileName) {
-        this.fileName = fileName;
         return modelHandlerFacade.loadFromFile(fileName);
     }
     // CHECKSTYLE:ON: checkstyle:HiddenField
@@ -779,12 +770,8 @@ public final class ApexModelImpl implements ApexModel {
      * {@inheritDoc}.
      */
     @Override
-    public ApexApiResult saveToFile(final String saveFileName, final boolean xmlFlag) {
-        if (saveFileName == null) {
-            return modelHandlerFacade.saveToFile(fileName, xmlFlag);
-        } else {
-            return modelHandlerFacade.saveToFile(saveFileName, xmlFlag);
-        }
+    public ApexApiResult saveToFile(final String fileName) {
+        return modelHandlerFacade.saveToFile(fileName);
     }
 
     /**
@@ -799,8 +786,8 @@ public final class ApexModelImpl implements ApexModel {
      * {@inheritDoc}.
      */
     @Override
-    public ApexApiResult writeToUrl(final String urlString, final boolean xmlFlag) {
-        return modelHandlerFacade.writeToUrl(urlString, xmlFlag);
+    public ApexApiResult writeToUrl(final String urlString) {
+        return modelHandlerFacade.writeToUrl(urlString);
     }
 
     /**
index a78444d..d29f32e 100644 (file)
@@ -2,7 +2,7 @@
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
  *  Modifications Copyright (C) 2019 Samsung Electronics Co., Ltd.
- *  Modifications Copyright (C) 2019 Nordix Foundation.
+ *  Modifications Copyright (C) 2019,2022 Nordix Foundation.
  *  Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
@@ -53,24 +53,17 @@ public class ContextAlbumFacade {
     // Facade classes for working towards the real Apex model
     private final KeyInformationFacade keyInformationFacade;
 
-    // JSON output on list/delete if set
-    private final boolean jsonMode;
-
     /**
      * Constructor that creates a context album facade for the Apex Model API.
      *
      * @param apexModel the apex model
      * @param apexProperties Properties for the model
-     * @param jsonMode set to true to return JSON strings in list and delete operations, otherwise
-     *        set to false *  Modifications Copyright (C) 2019 Nordix Foundation.
-
      */
-    public ContextAlbumFacade(final ApexModel apexModel, final Properties apexProperties, final boolean jsonMode) {
+    public ContextAlbumFacade(final ApexModel apexModel, final Properties apexProperties) {
         this.apexModel = apexModel;
         this.apexProperties = apexProperties;
-        this.jsonMode = jsonMode;
 
-        keyInformationFacade = new KeyInformationFacade(apexModel, apexProperties, jsonMode);
+        keyInformationFacade = new KeyInformationFacade(apexModel, apexProperties);
     }
 
     /**
@@ -92,14 +85,14 @@ public class ContextAlbumFacade {
 
             if (apexModel.getPolicyModel().getAlbums().getAlbumsMap().containsKey(key)) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_EXISTS,
-                        CONCEPT + key.getId() + " already exists");
+                    CONCEPT + key.getId() + " already exists");
             }
 
             final AxContextSchema schema = apexModel.getPolicyModel().getSchemas().get(builder.getContextSchemaName(),
-                    builder.getContextSchemaVersion());
+                builder.getContextSchemaVersion());
             if (schema == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, CONCEPT
-                        + builder.getContextSchemaName() + ':' + builder.getContextSchemaVersion() + DOES_NOT_EXIST);
+                    + builder.getContextSchemaName() + ':' + builder.getContextSchemaVersion() + DOES_NOT_EXIST);
             }
 
             final AxContextAlbum contextAlbum = new AxContextAlbum(key);
@@ -107,17 +100,17 @@ public class ContextAlbumFacade {
             contextAlbum.setItemSchema(schema.getKey());
 
             contextAlbum
-                    .setWritable(builder.getWritable() != null && ("true".equalsIgnoreCase(builder.getWritable().trim())
-                            || "t".equalsIgnoreCase(builder.getWritable().trim())));
+                .setWritable(builder.getWritable() != null && ("true".equalsIgnoreCase(builder.getWritable().trim())
+                    || "t".equalsIgnoreCase(builder.getWritable().trim())));
 
             apexModel.getPolicyModel().getAlbums().getAlbumsMap().put(key, contextAlbum);
 
             if (apexModel.getPolicyModel().getKeyInformation().getKeyInfoMap().containsKey(key)) {
                 return keyInformationFacade.updateKeyInformation(builder.getName(), builder.getVersion(),
-                        builder.getUuid(), builder.getDescription());
+                    builder.getUuid(), builder.getDescription());
             } else {
                 return keyInformationFacade.createKeyInformation(builder.getName(), builder.getVersion(),
-                        builder.getUuid(), builder.getDescription());
+                    builder.getUuid(), builder.getDescription());
             }
         } catch (final Exception e) {
             return new ApexApiResult(ApexApiResult.Result.FAILED, e);
@@ -135,10 +128,10 @@ public class ContextAlbumFacade {
     public ApexApiResult updateContextAlbum(ContextAlbum builder) {
         try {
             final AxContextAlbum contextAlbum =
-                    apexModel.getPolicyModel().getAlbums().get(builder.getName(), builder.getVersion());
+                apexModel.getPolicyModel().getAlbums().get(builder.getName(), builder.getVersion());
             if (contextAlbum == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + builder.getName() + ':' + builder.getVersion() + DOES_NOT_EXIST);
+                    CONCEPT + builder.getName() + ':' + builder.getVersion() + DOES_NOT_EXIST);
             }
 
             if (builder.getScope() != null) {
@@ -146,22 +139,21 @@ public class ContextAlbumFacade {
             }
 
             contextAlbum
-                    .setWritable(builder.getWritable() != null && ("true".equalsIgnoreCase(builder.getWritable().trim())
-                            || "t".equalsIgnoreCase(builder.getWritable().trim())));
+                .setWritable(builder.getWritable() != null && ("true".equalsIgnoreCase(builder.getWritable().trim())
+                    || "t".equalsIgnoreCase(builder.getWritable().trim())));
 
             if (builder.getContextSchemaName() != null) {
                 final AxContextSchema schema = apexModel.getPolicyModel().getSchemas()
-                        .get(builder.getContextSchemaName(), builder.getContextSchemaVersion());
+                    .get(builder.getContextSchemaName(), builder.getContextSchemaVersion());
                 if (schema == null) {
-                    return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                            CONCEPT + builder.getContextSchemaName() + ':' + builder.getContextSchemaVersion()
-                                    + DOES_NOT_EXIST);
+                    return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, CONCEPT
+                        + builder.getContextSchemaName() + ':' + builder.getContextSchemaVersion() + DOES_NOT_EXIST);
                 }
                 contextAlbum.setItemSchema(schema.getKey());
             }
 
             return keyInformationFacade.updateKeyInformation(builder.getName(), builder.getVersion(), builder.getUuid(),
-                    builder.getDescription());
+                builder.getDescription());
         } catch (final Exception e) {
             return new ApexApiResult(ApexApiResult.Result.FAILED, e);
         }
@@ -180,13 +172,13 @@ public class ContextAlbumFacade {
             final Set<AxContextAlbum> contextAlbumSet = apexModel.getPolicyModel().getAlbums().getAll(name, version);
             if (name != null && contextAlbumSet.isEmpty()) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT_S + name + ':' + version + DO_ES_NOT_EXIST);
+                    CONCEPT_S + name + ':' + version + DO_ES_NOT_EXIST);
             }
 
             final ApexApiResult result = new ApexApiResult();
             for (final AxContextAlbum contextAlbum : contextAlbumSet) {
-                result.addMessage(new ApexModelStringWriter<AxContextAlbum>(false).writeString(contextAlbum,
-                        AxContextAlbum.class, jsonMode));
+                result.addMessage(
+                    new ApexModelStringWriter<AxContextAlbum>(false).writeString(contextAlbum, AxContextAlbum.class));
             }
             return result;
         } catch (final Exception e) {
@@ -209,20 +201,20 @@ public class ContextAlbumFacade {
                     return new ApexApiResult();
                 } else {
                     return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                            CONCEPT + key.getId() + DOES_NOT_EXIST);
+                        CONCEPT + key.getId() + DOES_NOT_EXIST);
                 }
             }
 
             final Set<AxContextAlbum> contextAlbumSet = apexModel.getPolicyModel().getAlbums().getAll(name, version);
             if (contextAlbumSet.isEmpty()) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT_S + name + ':' + version + DO_ES_NOT_EXIST);
+                    CONCEPT_S + name + ':' + version + DO_ES_NOT_EXIST);
             }
 
             final ApexApiResult result = new ApexApiResult();
             for (final AxContextAlbum contextAlbum : contextAlbumSet) {
-                result.addMessage(new ApexModelStringWriter<AxContextAlbum>(false).writeString(contextAlbum,
-                        AxContextAlbum.class, jsonMode));
+                result.addMessage(
+                    new ApexModelStringWriter<AxContextAlbum>(false).writeString(contextAlbum, AxContextAlbum.class));
                 apexModel.getPolicyModel().getAlbums().getAlbumsMap().remove(contextAlbum.getKey());
                 keyInformationFacade.deleteKeyInformation(name, version);
             }
@@ -244,14 +236,14 @@ public class ContextAlbumFacade {
             final Set<AxContextAlbum> contextAlbumSet = apexModel.getPolicyModel().getAlbums().getAll(name, version);
             if (contextAlbumSet.isEmpty()) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT_S + name + ':' + version + DO_ES_NOT_EXIST);
+                    CONCEPT_S + name + ':' + version + DO_ES_NOT_EXIST);
             }
 
             final ApexApiResult result = new ApexApiResult();
             for (final AxContextAlbum contextAlbum : contextAlbumSet) {
                 final AxValidationResult validationResult = contextAlbum.validate(new AxValidationResult());
                 result.addMessage(new ApexModelStringWriter<AxArtifactKey>(false).writeString(contextAlbum.getKey(),
-                        AxArtifactKey.class, jsonMode));
+                    AxArtifactKey.class));
                 result.addMessage(validationResult.toString());
             }
             return result;
index 00156c5..83bca5a 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2019 Nordix Foundation.
+ *  Modifications Copyright (C) 2019,2022 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -52,22 +52,17 @@ public class ContextSchemaFacade {
     // Facade classes for working towards the real Apex model
     private final KeyInformationFacade keyInformationFacade;
 
-    // JSON output on list/delete if set
-    private final boolean jsonMode;
-
     /**
      * Constructor to create the context schema facade for the Model API.
      *
      * @param apexModel the apex model
      * @param apexProperties Properties for the model
-     * @param jsonMode set to true to return JSON strings in list and delete operations, otherwise set to false
      */
-    public ContextSchemaFacade(final ApexModel apexModel, final Properties apexProperties, final boolean jsonMode) {
+    public ContextSchemaFacade(final ApexModel apexModel, final Properties apexProperties) {
         this.apexModel = apexModel;
         this.apexProperties = apexProperties;
-        this.jsonMode = jsonMode;
 
-        keyInformationFacade = new KeyInformationFacade(apexModel, apexProperties, jsonMode);
+        keyInformationFacade = new KeyInformationFacade(apexModel, apexProperties);
     }
 
     /**
@@ -82,7 +77,7 @@ public class ContextSchemaFacade {
      * @return result of the operation
      */
     public ApexApiResult createContextSchema(final String name, final String version, final String schemaFlavour,
-                    final String schemaDefinition, final String uuid, final String description) {
+        final String schemaDefinition, final String uuid, final String description) {
         try {
             Assertions.argumentNotNull(schemaFlavour, "schemaFlavour may not be null");
 
@@ -99,7 +94,7 @@ public class ContextSchemaFacade {
             }
 
             apexModel.getPolicyModel().getSchemas().getSchemasMap().put(key,
-                            new AxContextSchema(key, schemaFlavour, schemaDefinition));
+                new AxContextSchema(key, schemaFlavour, schemaDefinition));
 
             if (apexModel.getPolicyModel().getKeyInformation().getKeyInfoMap().containsKey(key)) {
                 return keyInformationFacade.updateKeyInformation(name, version, uuid, description);
@@ -123,12 +118,12 @@ public class ContextSchemaFacade {
      * @return result of the operation
      */
     public ApexApiResult updateContextSchema(final String name, final String version, final String schemaFlavour,
-                    final String schemaDefinition, final String uuid, final String description) {
+        final String schemaDefinition, final String uuid, final String description) {
         try {
             final AxContextSchema schema = apexModel.getPolicyModel().getSchemas().get(name, version);
             if (schema == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                                CONCEPT + name + ':' + version + DOES_NOT_EXIST);
+                    CONCEPT + name + ':' + version + DOES_NOT_EXIST);
             }
 
             if (schemaFlavour != null) {
@@ -157,13 +152,13 @@ public class ContextSchemaFacade {
             final Set<AxContextSchema> schemaSet = apexModel.getPolicyModel().getSchemas().getAll(name, version);
             if (name != null && schemaSet.isEmpty()) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                                CONCEPT_S + name + ':' + version + DO_ES_NOT_EXIST);
+                    CONCEPT_S + name + ':' + version + DO_ES_NOT_EXIST);
             }
 
             final ApexApiResult result = new ApexApiResult();
             for (final AxContextSchema schema : schemaSet) {
-                result.addMessage(new ApexModelStringWriter<AxContextSchema>(false).writeString(schema,
-                                AxContextSchema.class, jsonMode));
+                result.addMessage(
+                    new ApexModelStringWriter<AxContextSchema>(false).writeString(schema, AxContextSchema.class));
             }
             return result;
         } catch (final Exception e) {
@@ -182,28 +177,28 @@ public class ContextSchemaFacade {
         try {
             if (version != null) {
                 final AxArtifactKey key = new AxArtifactKey(name, version);
-                final AxContextSchema removedSchema = apexModel.getPolicyModel().getSchemas().getSchemasMap()
-                                .remove(key);
+                final AxContextSchema removedSchema =
+                    apexModel.getPolicyModel().getSchemas().getSchemasMap().remove(key);
                 if (removedSchema != null) {
                     return new ApexApiResult(ApexApiResult.Result.SUCCESS,
-                                    new ApexModelStringWriter<AxContextSchema>(false).writeString(removedSchema,
-                                                    AxContextSchema.class, jsonMode));
+                        new ApexModelStringWriter<AxContextSchema>(false).writeString(removedSchema,
+                            AxContextSchema.class));
                 } else {
                     return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                                    CONCEPT + key.getId() + DOES_NOT_EXIST);
+                        CONCEPT + key.getId() + DOES_NOT_EXIST);
                 }
             }
 
             final Set<AxContextSchema> schemaSet = apexModel.getPolicyModel().getSchemas().getAll(name, version);
             if (schemaSet.isEmpty()) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                                CONCEPT_S + name + ':' + version + DO_ES_NOT_EXIST);
+                    CONCEPT_S + name + ':' + version + DO_ES_NOT_EXIST);
             }
 
             final ApexApiResult result = new ApexApiResult();
             for (final AxContextSchema schema : schemaSet) {
-                result.addMessage(new ApexModelStringWriter<AxContextSchema>(false).writeString(schema,
-                                AxContextSchema.class, jsonMode));
+                result.addMessage(
+                    new ApexModelStringWriter<AxContextSchema>(false).writeString(schema, AxContextSchema.class));
                 apexModel.getPolicyModel().getSchemas().getSchemasMap().remove(schema.getKey());
                 keyInformationFacade.deleteKeyInformation(name, version);
             }
@@ -225,14 +220,14 @@ public class ContextSchemaFacade {
             final Set<AxContextSchema> schemaSet = apexModel.getPolicyModel().getSchemas().getAll(name, version);
             if (schemaSet.isEmpty()) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                                CONCEPT_S + name + ':' + version + DO_ES_NOT_EXIST);
+                    CONCEPT_S + name + ':' + version + DO_ES_NOT_EXIST);
             }
 
             final ApexApiResult result = new ApexApiResult();
             for (final AxContextSchema schema : schemaSet) {
                 final AxValidationResult validationResult = schema.validate(new AxValidationResult());
-                result.addMessage(new ApexModelStringWriter<AxArtifactKey>(false).writeString(schema.getKey(),
-                                AxArtifactKey.class, jsonMode));
+                result.addMessage(
+                    new ApexModelStringWriter<AxArtifactKey>(false).writeString(schema.getKey(), AxArtifactKey.class));
                 result.addMessage(validationResult.toString());
             }
             return result;
index f1f9393..336f27b 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2019 Nordix Foundation.
+ *  Modifications Copyright (C) 2019,2022 Nordix Foundation.
  *  Modifications Copyright (C) 2022 Bell Canada.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
@@ -57,23 +57,17 @@ public class EventFacade {
     // Facade classes for working towards the real Apex model
     private final KeyInformationFacade keyInformationFacade;
 
-    // JSON output on list/delete if set
-    private final boolean jsonMode;
-
     /**
      * Constructor to create an event facade for the Model API.
      *
      * @param apexModel the apex model
      * @param apexProperties Properties for the model
-     * @param jsonMode set to true to return JSON strings in list and delete operations, otherwise
-     *        set to false
      */
-    public EventFacade(final ApexModel apexModel, final Properties apexProperties, final boolean jsonMode) {
+    public EventFacade(final ApexModel apexModel, final Properties apexProperties) {
         this.apexModel = apexModel;
         this.apexProperties = apexProperties;
-        this.jsonMode = jsonMode;
 
-        keyInformationFacade = new KeyInformationFacade(apexModel, apexProperties, jsonMode);
+        keyInformationFacade = new KeyInformationFacade(apexModel, apexProperties);
     }
 
     /**
@@ -90,8 +84,8 @@ public class EventFacade {
      * @return result of the operation
      */
     public ApexApiResult createEvent(final String name, final String version, final String nameSpace,
-            final String source, final String target, final String uuid, final String description,
-            final String toscaPolicyState) {
+        final String source, final String target, final String uuid, final String description,
+        final String toscaPolicyState) {
         try {
             final AxArtifactKey key = new AxArtifactKey();
             key.setName(name);
@@ -140,13 +134,13 @@ public class EventFacade {
      * @return result of the operation
      */
     public ApexApiResult updateEvent(final String name, final String version, final String nameSpace,
-            final String source, final String target, final String uuid, final String description,
-            final String toscaPolicyState) {
+        final String source, final String target, final String uuid, final String description,
+        final String toscaPolicyState) {
         try {
             final AxEvent event = apexModel.getPolicyModel().getEvents().get(name, version);
             if (event == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + name + ':' + version + DOES_NOT_EXIST);
+                    CONCEPT + name + ':' + version + DOES_NOT_EXIST);
             }
 
             if (nameSpace != null) {
@@ -180,13 +174,12 @@ public class EventFacade {
             final Set<AxEvent> eventSet = apexModel.getPolicyModel().getEvents().getAll(name, version);
             if (name != null && eventSet.isEmpty()) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT_S + name + ':' + version + DO_ES_NOT_EXIST);
+                    CONCEPT_S + name + ':' + version + DO_ES_NOT_EXIST);
             }
 
             final ApexApiResult result = new ApexApiResult();
             for (final AxEvent event : eventSet) {
-                result.addMessage(
-                        new ApexModelStringWriter<AxEvent>(false).writeString(event, AxEvent.class, jsonMode));
+                result.addMessage(new ApexModelStringWriter<AxEvent>(false).writeString(event, AxEvent.class));
             }
             return result;
         } catch (final Exception e) {
@@ -207,24 +200,23 @@ public class EventFacade {
                 final AxArtifactKey key = new AxArtifactKey(name, version);
                 final AxEvent removedEvent = apexModel.getPolicyModel().getEvents().getEventMap().remove(key);
                 if (removedEvent != null) {
-                    return new ApexApiResult(ApexApiResult.Result.SUCCESS, new ApexModelStringWriter<AxEvent>(false)
-                            .writeString(removedEvent, AxEvent.class, jsonMode));
+                    return new ApexApiResult(ApexApiResult.Result.SUCCESS,
+                        new ApexModelStringWriter<AxEvent>(false).writeString(removedEvent, AxEvent.class));
                 } else {
                     return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                            CONCEPT + key.getId() + DOES_NOT_EXIST);
+                        CONCEPT + key.getId() + DOES_NOT_EXIST);
                 }
             }
 
             final Set<AxEvent> eventSet = apexModel.getPolicyModel().getEvents().getAll(name, version);
             if (eventSet.isEmpty()) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT_S + name + ':' + version + DO_ES_NOT_EXIST);
+                    CONCEPT_S + name + ':' + version + DO_ES_NOT_EXIST);
             }
 
             final ApexApiResult result = new ApexApiResult();
             for (final AxEvent event : eventSet) {
-                result.addMessage(
-                        new ApexModelStringWriter<AxEvent>(false).writeString(event, AxEvent.class, jsonMode));
+                result.addMessage(new ApexModelStringWriter<AxEvent>(false).writeString(event, AxEvent.class));
                 apexModel.getPolicyModel().getEvents().getEventMap().remove(event.getKey());
                 keyInformationFacade.deleteKeyInformation(name, version);
             }
@@ -246,14 +238,14 @@ public class EventFacade {
             final Set<AxEvent> eventSet = apexModel.getPolicyModel().getEvents().getAll(name, version);
             if (eventSet.isEmpty()) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT_S + name + ':' + version + DO_ES_NOT_EXIST);
+                    CONCEPT_S + name + ':' + version + DO_ES_NOT_EXIST);
             }
 
             final ApexApiResult result = new ApexApiResult();
             for (final AxEvent event : eventSet) {
                 final AxValidationResult validationResult = event.validate(new AxValidationResult());
-                result.addMessage(new ApexModelStringWriter<AxArtifactKey>(false).writeString(event.getKey(),
-                        AxArtifactKey.class, jsonMode));
+                result.addMessage(
+                    new ApexModelStringWriter<AxArtifactKey>(false).writeString(event.getKey(), AxArtifactKey.class));
                 result.addMessage(validationResult.toString());
             }
             return result;
@@ -275,28 +267,28 @@ public class EventFacade {
      * @return result of the operation
      */
     public ApexApiResult createEventPar(final String name, final String version, final String parName,
-            final String contextSchemaName, final String contextSchemaVersion, final boolean optional) {
+        final String contextSchemaName, final String contextSchemaVersion, final boolean optional) {
         try {
             Assertions.argumentNotNull(parName, "parName may not be null");
 
             final AxEvent event = apexModel.getPolicyModel().getEvents().get(name, version);
             if (event == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + name + ':' + version + DOES_NOT_EXIST);
+                    CONCEPT + name + ':' + version + DOES_NOT_EXIST);
             }
 
             final AxReferenceKey refKey = new AxReferenceKey(event.getKey(), parName);
 
             if (event.getParameterMap().containsKey(refKey.getLocalName())) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_EXISTS,
-                        CONCEPT + refKey.getId() + ALREADY_EXISTS);
+                    CONCEPT + refKey.getId() + ALREADY_EXISTS);
             }
 
             final AxContextSchema schema =
-                    apexModel.getPolicyModel().getSchemas().get(contextSchemaName, contextSchemaVersion);
+                apexModel.getPolicyModel().getSchemas().get(contextSchemaName, contextSchemaVersion);
             if (schema == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + contextSchemaName + ':' + contextSchemaVersion + DOES_NOT_EXIST);
+                    CONCEPT + contextSchemaName + ':' + contextSchemaVersion + DOES_NOT_EXIST);
             }
 
             event.getParameterMap().put(refKey.getLocalName(), new AxField(refKey, schema.getKey(), optional));
@@ -319,28 +311,27 @@ public class EventFacade {
             final AxEvent event = apexModel.getPolicyModel().getEvents().get(name, version);
             if (event == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + name + ':' + version + DOES_NOT_EXIST);
+                    CONCEPT + name + ':' + version + DOES_NOT_EXIST);
             }
 
             if (parName != null) {
                 final AxField eventField = event.getParameterMap().get(parName);
                 if (eventField != null) {
                     return new ApexApiResult(ApexApiResult.Result.SUCCESS,
-                            new ApexModelStringWriter<AxField>(false).writeString(eventField, AxField.class, jsonMode));
+                        new ApexModelStringWriter<AxField>(false).writeString(eventField, AxField.class));
                 } else {
                     return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                            CONCEPT + name + ':' + version + ':' + parName + DOES_NOT_EXIST);
+                        CONCEPT + name + ':' + version + ':' + parName + DOES_NOT_EXIST);
                 }
             } else {
                 if (event.getParameterMap().size() == 0) {
                     return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                            "no parameters defined on event " + event.getKey().getId());
+                        "no parameters defined on event " + event.getKey().getId());
                 }
 
                 final ApexApiResult result = new ApexApiResult();
                 for (final AxField eventPar : event.getParameterMap().values()) {
-                    result.addMessage(
-                            new ApexModelStringWriter<AxField>(false).writeString(eventPar, AxField.class, jsonMode));
+                    result.addMessage(new ApexModelStringWriter<AxField>(false).writeString(eventPar, AxField.class));
                 }
                 return result;
             }
@@ -362,29 +353,28 @@ public class EventFacade {
             final AxEvent event = apexModel.getPolicyModel().getEvents().get(name, version);
             if (event == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + name + ':' + version + DOES_NOT_EXIST);
+                    CONCEPT + name + ':' + version + DOES_NOT_EXIST);
             }
 
             final ApexApiResult result = new ApexApiResult();
             if (parName != null) {
                 if (event.getParameterMap().containsKey(parName)) {
                     result.addMessage(new ApexModelStringWriter<AxField>(false)
-                            .writeString(event.getParameterMap().get(parName), AxField.class, jsonMode));
+                        .writeString(event.getParameterMap().get(parName), AxField.class));
                     event.getParameterMap().remove(parName);
                     return result;
                 } else {
                     return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                            CONCEPT + name + ':' + version + ':' + parName + DOES_NOT_EXIST);
+                        CONCEPT + name + ':' + version + ':' + parName + DOES_NOT_EXIST);
                 }
             } else {
                 if (event.getParameterMap().size() == 0) {
                     return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                            "no parameters defined on event " + event.getKey().getId());
+                        "no parameters defined on event " + event.getKey().getId());
                 }
 
                 for (final AxField eventPar : event.getParameterMap().values()) {
-                    result.addMessage(
-                            new ApexModelStringWriter<AxField>(false).writeString(eventPar, AxField.class, jsonMode));
+                    result.addMessage(new ApexModelStringWriter<AxField>(false).writeString(eventPar, AxField.class));
                 }
                 event.getParameterMap().clear();
                 return result;
@@ -393,4 +383,4 @@ public class EventFacade {
             return new ApexApiResult(ApexApiResult.Result.FAILED, e);
         }
     }
-}
\ No newline at end of file
+}
index b76bfdc..6875a4c 100644 (file)
@@ -2,6 +2,7 @@
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
  *  Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
+ *  Modifications Copyright (C) 2022 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -51,9 +52,6 @@ public class KeyInformationFacade {
     // Properties to use for the model
     private final Properties apexProperties;
 
-    // JSON output on list/delete if set
-    private final boolean jsonMode;
-
     /**
      * Create key information.
      *
@@ -65,7 +63,7 @@ public class KeyInformationFacade {
      * @return result of the operation
      */
     public ApexApiResult createKeyInformation(final String name, final String version, final String uuid,
-            final String description) {
+        final String description) {
         try {
             final AxArtifactKey key = new AxArtifactKey();
             key.setName(name);
@@ -107,12 +105,12 @@ public class KeyInformationFacade {
      * @return result of the operation
      */
     public ApexApiResult updateKeyInformation(final String name, final String version, final String uuid,
-            final String description) {
+        final String description) {
         try {
             final AxKeyInfo keyInfo = apexModel.getPolicyModel().getKeyInformation().get(name, version);
             if (keyInfo == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + name + ":" + version + DOES_NOT_EXIST);
+                    CONCEPT + name + ":" + version + DOES_NOT_EXIST);
             }
 
             if (description != null) {
@@ -145,13 +143,12 @@ public class KeyInformationFacade {
             final Set<AxKeyInfo> keyInfoSet = apexModel.getPolicyModel().getKeyInformation().getAll(name, version);
             if (name != null && keyInfoSet.isEmpty()) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT_S + name + ':' + version + DO_ES_NOT_EXIST);
+                    CONCEPT_S + name + ':' + version + DO_ES_NOT_EXIST);
             }
 
             final ApexApiResult result = new ApexApiResult();
             for (final AxKeyInfo keyInfo : keyInfoSet) {
-                result.addMessage(
-                        new ApexModelStringWriter<AxKeyInfo>(false).writeString(keyInfo, AxKeyInfo.class, jsonMode));
+                result.addMessage(new ApexModelStringWriter<AxKeyInfo>(false).writeString(keyInfo, AxKeyInfo.class));
             }
             return result;
         } catch (final Exception e) {
@@ -172,26 +169,25 @@ public class KeyInformationFacade {
             if (version != null) {
                 final AxArtifactKey key = new AxArtifactKey(name, version);
                 final AxKeyInfo removedKeyInfo =
-                        apexModel.getPolicyModel().getKeyInformation().getKeyInfoMap().remove(key);
+                    apexModel.getPolicyModel().getKeyInformation().getKeyInfoMap().remove(key);
                 if (removedKeyInfo != null) {
-                    return new ApexApiResult(ApexApiResult.Result.SUCCESS, new ApexModelStringWriter<AxKeyInfo>(false)
-                            .writeString(removedKeyInfo, AxKeyInfo.class, jsonMode));
+                    return new ApexApiResult(ApexApiResult.Result.SUCCESS,
+                        new ApexModelStringWriter<AxKeyInfo>(false).writeString(removedKeyInfo, AxKeyInfo.class));
                 } else {
                     return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                            CONCEPT + key.getId() + DOES_NOT_EXIST);
+                        CONCEPT + key.getId() + DOES_NOT_EXIST);
                 }
             }
 
             final Set<AxKeyInfo> keyInfoSet = apexModel.getPolicyModel().getKeyInformation().getAll(name, version);
             if (keyInfoSet.isEmpty()) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT_S + name + ':' + version + DO_ES_NOT_EXIST);
+                    CONCEPT_S + name + ':' + version + DO_ES_NOT_EXIST);
             }
 
             final ApexApiResult result = new ApexApiResult();
             for (final AxKeyInfo keyInfo : keyInfoSet) {
-                result.addMessage(
-                        new ApexModelStringWriter<AxKeyInfo>(false).writeString(keyInfo, AxKeyInfo.class, jsonMode));
+                result.addMessage(new ApexModelStringWriter<AxKeyInfo>(false).writeString(keyInfo, AxKeyInfo.class));
                 apexModel.getPolicyModel().getKeyInformation().getKeyInfoMap().remove(keyInfo.getKey());
             }
             return result;
@@ -213,14 +209,14 @@ public class KeyInformationFacade {
             final Set<AxKeyInfo> keyInfoSet = apexModel.getPolicyModel().getKeyInformation().getAll(name, version);
             if (keyInfoSet.isEmpty()) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT_S + name + ':' + version + DO_ES_NOT_EXIST);
+                    CONCEPT_S + name + ':' + version + DO_ES_NOT_EXIST);
             }
 
             final ApexApiResult result = new ApexApiResult();
             for (final AxKeyInfo keyInfo : keyInfoSet) {
                 final AxValidationResult validationResult = keyInfo.validate(new AxValidationResult());
-                result.addMessage(new ApexModelStringWriter<AxArtifactKey>(false).writeString(keyInfo.getKey(),
-                        AxArtifactKey.class, jsonMode));
+                result.addMessage(
+                    new ApexModelStringWriter<AxArtifactKey>(false).writeString(keyInfo.getKey(), AxArtifactKey.class));
                 result.addMessage(validationResult.toString());
             }
             return result;
index 2adf990..1030a5b 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2019 Nordix Foundation.
+ *  Modifications Copyright (C) 2019,2022 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -49,26 +49,20 @@ public class ModelFacade {
     // Facade classes for working towards the real Apex model
     private final KeyInformationFacade keyInformationFacade;
 
-    // JSON output on list/delete if set
-    private final boolean jsonMode;
-
     /**
      * Constructor to create a model facade for the Apex model.
      *
      * @param apexModel the apex model
      * @param apexProperties Properties for the model
-     * @param jsonMode set to true to return JSON strings in list and delete operations, otherwise
-     *        set to false
      */
-    public ModelFacade(final ApexModel apexModel, final Properties apexProperties, final boolean jsonMode) {
+    public ModelFacade(final ApexModel apexModel, final Properties apexProperties) {
         Assertions.argumentNotNull(apexModel, "apexModel may not be null");
         Assertions.argumentNotNull(apexProperties, "apexProperties may not be null");
 
         this.apexModel = apexModel;
         this.apexProperties = apexProperties;
-        this.jsonMode = jsonMode;
 
-        keyInformationFacade = new KeyInformationFacade(apexModel, apexProperties, jsonMode);
+        keyInformationFacade = new KeyInformationFacade(apexModel, apexProperties);
     }
 
     /**
@@ -81,7 +75,7 @@ public class ModelFacade {
      * @return result of the operation
      */
     public ApexApiResult createModel(final String name, final String version, final String uuid,
-            final String description) {
+        final String description) {
         try {
             final AxArtifactKey key = new AxArtifactKey();
             key.setName(name);
@@ -98,7 +92,7 @@ public class ModelFacade {
 
             if (!apexModel.getPolicyModel().getKey().equals(AxArtifactKey.getNullKey())) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_EXISTS,
-                        CONCEPT + apexModel.getPolicyModel().getKey().getId() + ALREADY_CREATED);
+                    CONCEPT + apexModel.getPolicyModel().getKey().getId() + ALREADY_CREATED);
             }
 
             apexModel.setPolicyModel(new AxPolicyModel(key));
@@ -107,6 +101,7 @@ public class ModelFacade {
 
             result = keyInformationFacade.createKeyInformation(name, version, uuid, description);
             if (result.getResult().equals(ApexApiResult.Result.SUCCESS)) {
+                apexModel.getPolicyModel().buildReferences();
                 apexModel.getPolicyModel().getKeyInformation().generateKeyInfo(apexModel.getPolicyModel());
             }
             return result;
@@ -125,7 +120,7 @@ public class ModelFacade {
      * @return result of the operation
      */
     public ApexApiResult updateModel(final String name, final String version, final String uuid,
-            final String description) {
+        final String description) {
         try {
             final AxArtifactKey key = new AxArtifactKey();
             key.setName(name);
@@ -137,13 +132,13 @@ public class ModelFacade {
                     key.setVersion(defaultVersion);
                 } else {
                     return new ApexApiResult(ApexApiResult.Result.FAILED,
-                            CONCEPT + apexModel.getPolicyModel().getKey().getId() + NO_VERSION_SPECIFIED);
+                        CONCEPT + apexModel.getPolicyModel().getKey().getId() + NO_VERSION_SPECIFIED);
                 }
             }
 
             if (apexModel.getPolicyModel().getKey().equals(AxArtifactKey.getNullKey())) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + apexModel.getPolicyModel().getKey().getId() + DOES_NOT_EXIST);
+                    CONCEPT + apexModel.getPolicyModel().getKey().getId() + DOES_NOT_EXIST);
             }
 
             return keyInformationFacade.updateKeyInformation(name, version, uuid, description);
@@ -161,8 +156,8 @@ public class ModelFacade {
         try {
             final ApexApiResult result = new ApexApiResult();
             final AxArtifactKey modelkey = apexModel.getPolicyModel().getKey();
-            result.addMessage(new ApexModelStringWriter<AxArtifactKey>(false).writeString(modelkey, AxArtifactKey.class,
-                    jsonMode));
+            result
+                .addMessage(new ApexModelStringWriter<AxArtifactKey>(false).writeString(modelkey, AxArtifactKey.class));
             return result;
         } catch (final Exception e) {
             return new ApexApiResult(ApexApiResult.Result.FAILED, e);
@@ -178,7 +173,7 @@ public class ModelFacade {
         try {
             final ApexApiResult result = new ApexApiResult();
             result.addMessage(new ApexModelStringWriter<AxPolicyModel>(false).writeString(apexModel.getPolicyModel(),
-                    AxPolicyModel.class, jsonMode));
+                AxPolicyModel.class));
             return result;
         } catch (final Exception e) {
             return new ApexApiResult(ApexApiResult.Result.FAILED, e);
index 9d03ba1..fecf92e 100644 (file)
@@ -70,22 +70,17 @@ public class ModelHandlerFacade {
     // Apex model we're working towards
     private final ApexModel apexModel;
 
-    // JSON output on list/delete if set
-    private final boolean jsonMode;
-
     /**
      * This Constructor creates a model handling facade for the given {@link ApexModel}.
      *
      * @param apexModel the apex model to manipulate
      * @param apexProperties properties for the model
-     * @param jsonMode set to true to return JSON strings in list and delete operations, otherwise set to false
      */
-    public ModelHandlerFacade(final ApexModel apexModel, final Properties apexProperties, final boolean jsonMode) {
+    public ModelHandlerFacade(final ApexModel apexModel, final Properties apexProperties) {
         Assertions.argumentNotNull(apexModel, "apexModel may not be null");
         Assertions.argumentNotNull(apexProperties, "apexProperties may not be null");
 
         this.apexModel = apexModel;
-        this.jsonMode = jsonMode;
     }
 
     /**
@@ -134,20 +129,15 @@ public class ModelHandlerFacade {
      * Save an Apex model to a file.
      *
      * @param fileName the file name
-     * @param xmlFlag if true, save the file in XML format, otherwise save the file in the default JSON format
      * @return the result of the operation
      */
-    public ApexApiResult saveToFile(final String fileName, final boolean xmlFlag) {
+    public ApexApiResult saveToFile(final String fileName) {
         Assertions.argumentNotNull(fileName, FILE_NAME_MAY_NOT_BE_NULL);
 
         ApexModelFileWriter<AxPolicyModel> apexModelFileWriter = new ApexModelFileWriter<>(false);
 
         try {
-            if (xmlFlag) {
-                apexModelFileWriter.apexModelWriteXmlFile(apexModel.getPolicyModel(), AxPolicyModel.class, fileName);
-            } else {
-                apexModelFileWriter.apexModelWriteJsonFile(apexModel.getPolicyModel(), AxPolicyModel.class, fileName);
-            }
+            apexModelFileWriter.apexModelWriteJsonFile(apexModel.getPolicyModel(), AxPolicyModel.class, fileName);
             return new ApexApiResult();
         } catch (ApexException e) {
             return new ApexApiResult(ApexApiResult.Result.FAILED, e);
@@ -180,7 +170,7 @@ public class ModelHandlerFacade {
 
         try {
             ApexModelReader<AxPolicyModel> apexModelReader = new ApexModelReader<>(AxPolicyModel.class);
-            apexModelReader.setValidateFlag(false);
+            apexModelReader.setValidate(false);
             AxPolicyModel newPolicyModel = apexModelReader.read(apexModelUrl.openStream());
             apexModel.setPolicyModel(newPolicyModel != null ? newPolicyModel : new AxPolicyModel());
             return new ApexApiResult();
@@ -194,10 +184,9 @@ public class ModelHandlerFacade {
      * Write an APEX model to a location identified by a URL.
      *
      * @param urlString the URL to read the model from
-     * @param xmlFlag if true, save the file in XML format, otherwise save the file in the default JSON format
      * @return the result of the operation
      */
-    public ApexApiResult writeToUrl(final String urlString, final boolean xmlFlag) {
+    public ApexApiResult writeToUrl(final String urlString) {
         Assertions.argumentNotNull(urlString, "urlString may not be null");
 
         URL apexModelUrl;
@@ -212,8 +201,7 @@ public class ModelHandlerFacade {
 
         try {
             ApexModelWriter<AxPolicyModel> apexModelWriter = new ApexModelWriter<>(AxPolicyModel.class);
-            apexModelWriter.setValidateFlag(false);
-            apexModelWriter.setJsonOutput(!xmlFlag);
+            apexModelWriter.setValidate(false);
 
             // Open the URL for output and write the model
             URLConnection urlConnection = apexModelUrl.openConnection();
@@ -250,7 +238,7 @@ public class ModelHandlerFacade {
                 result.setResult(ApexApiResult.Result.FAILED);
             }
             result.addMessage(new ApexModelStringWriter<AxArtifactKey>(false)
-                    .writeString(apexModel.getPolicyModel().getKey(), AxArtifactKey.class, jsonMode));
+                    .writeString(apexModel.getPolicyModel().getKey(), AxArtifactKey.class));
             result.addMessage(validationResult.toString());
             return result;
         } catch (Exception e) {
@@ -277,7 +265,7 @@ public class ModelHandlerFacade {
             PolicyModelComparer policyModelComparer =
                     new PolicyModelComparer(apexModel.getPolicyModel(), otherPolicyModel);
             result.addMessage(new ApexModelStringWriter<AxArtifactKey>(false)
-                    .writeString(apexModel.getPolicyModel().getKey(), AxArtifactKey.class, jsonMode));
+                    .writeString(apexModel.getPolicyModel().getKey(), AxArtifactKey.class));
             result.addMessage(policyModelComparer.toString());
 
             return result;
@@ -306,7 +294,7 @@ public class ModelHandlerFacade {
             PolicyModelComparer policyModelComparer =
                     new PolicyModelComparer(apexModel.getPolicyModel(), otherPolicyModel);
             result.addMessage(new ApexModelStringWriter<AxArtifactKey>(false)
-                    .writeString(apexModel.getPolicyModel().getKey(), AxArtifactKey.class, jsonMode));
+                    .writeString(apexModel.getPolicyModel().getKey(), AxArtifactKey.class));
             result.addMessage(policyModelComparer.toString());
 
             return result;
@@ -470,7 +458,7 @@ public class ModelHandlerFacade {
 
         try {
             ApexModelReader<AxPolicyModel> apexModelReader = new ApexModelReader<>(AxPolicyModel.class);
-            apexModelReader.setValidateFlag(false);
+            apexModelReader.setValidate(false);
             readModel = apexModelReader.read(apexModelUrl.openStream());
             result.setResult(ApexApiResult.Result.SUCCESS);
             return readModel;
@@ -497,7 +485,7 @@ public class ModelHandlerFacade {
 
         try {
             ApexModelReader<AxPolicyModel> apexModelReader = new ApexModelReader<>(AxPolicyModel.class);
-            apexModelReader.setValidateFlag(false);
+            apexModelReader.setValidate(false);
             readModel = apexModelReader.read(modelStringStream);
             result.setResult(ApexApiResult.Result.SUCCESS);
             return readModel;
index 4d0999a..408f091 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2019 Nordix Foundation.
+ *  Modifications Copyright (C) 2019,2022 Nordix Foundation.
  *  Modifications Copyright (C) 2021 Bell Canada. All rights reserved.
  *  Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
  * ================================================================================
@@ -72,23 +72,17 @@ public class PolicyFacade {
     // Facade classes for working towards the real Apex model
     private final KeyInformationFacade keyInformationFacade;
 
-    // JSON output on list/delete if set
-    private final boolean jsonMode;
-
     /**
      * Constructor that creates a policy facade for the Apex Model API.
      *
      * @param apexModel the apex model
      * @param apexProperties Properties for the model
-     * @param jsonMode set to true to return JSON strings in list and delete operations, otherwise
-     *        set to false
      */
-    public PolicyFacade(final ApexModel apexModel, final Properties apexProperties, final boolean jsonMode) {
+    public PolicyFacade(final ApexModel apexModel, final Properties apexProperties) {
         this.apexModel = apexModel;
         this.apexProperties = apexProperties;
-        this.jsonMode = jsonMode;
 
-        keyInformationFacade = new KeyInformationFacade(apexModel, apexProperties, jsonMode);
+        keyInformationFacade = new KeyInformationFacade(apexModel, apexProperties);
     }
 
     /**
@@ -103,7 +97,7 @@ public class PolicyFacade {
      * @return result of the operation
      */
     public ApexApiResult createPolicy(final String name, final String version, final String template,
-            final String firstState, final String uuid, final String description) {
+        final String firstState, final String uuid, final String description) {
         try {
             final AxArtifactKey key = new AxArtifactKey();
             key.setName(name);
@@ -150,12 +144,12 @@ public class PolicyFacade {
      * @return result of the operation
      */
     public ApexApiResult updatePolicy(final String name, final String version, final String template,
-            final String firstState, final String uuid, final String description) {
+        final String firstState, final String uuid, final String description) {
         try {
             final AxPolicy policy = apexModel.getPolicyModel().getPolicies().get(name, version);
             if (policy == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + name + ':' + version + DOES_NOT_EXIST);
+                    CONCEPT + name + ':' + version + DOES_NOT_EXIST);
             }
 
             if (template != null) {
@@ -183,13 +177,12 @@ public class PolicyFacade {
             final Set<AxPolicy> policySet = apexModel.getPolicyModel().getPolicies().getAll(name, version);
             if (name != null && policySet.isEmpty()) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT_S + name + ':' + version + DO_ES_NOT_EXIST);
+                    CONCEPT_S + name + ':' + version + DO_ES_NOT_EXIST);
             }
 
             final ApexApiResult result = new ApexApiResult();
             for (final AxPolicy policy : policySet) {
-                result.addMessage(
-                        new ApexModelStringWriter<AxPolicy>(false).writeString(policy, AxPolicy.class, jsonMode));
+                result.addMessage(new ApexModelStringWriter<AxPolicy>(false).writeString(policy, AxPolicy.class));
             }
             return result;
         } catch (final Exception e) {
@@ -210,24 +203,23 @@ public class PolicyFacade {
                 final AxArtifactKey key = new AxArtifactKey(name, version);
                 final AxPolicy removedPolicy = apexModel.getPolicyModel().getPolicies().getPolicyMap().remove(key);
                 if (removedPolicy != null) {
-                    return new ApexApiResult(ApexApiResult.Result.SUCCESS, new ApexModelStringWriter<AxPolicy>(false)
-                            .writeString(removedPolicy, AxPolicy.class, jsonMode));
+                    return new ApexApiResult(ApexApiResult.Result.SUCCESS,
+                        new ApexModelStringWriter<AxPolicy>(false).writeString(removedPolicy, AxPolicy.class));
                 } else {
                     return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                            CONCEPT + key.getId() + DOES_NOT_EXIST);
+                        CONCEPT + key.getId() + DOES_NOT_EXIST);
                 }
             }
 
             final Set<AxPolicy> policySet = apexModel.getPolicyModel().getPolicies().getAll(name, version);
             if (policySet.isEmpty()) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT_S + name + ':' + version + DO_ES_NOT_EXIST);
+                    CONCEPT_S + name + ':' + version + DO_ES_NOT_EXIST);
             }
 
             final ApexApiResult result = new ApexApiResult();
             for (final AxPolicy policy : policySet) {
-                result.addMessage(
-                        new ApexModelStringWriter<AxPolicy>(false).writeString(policy, AxPolicy.class, jsonMode));
+                result.addMessage(new ApexModelStringWriter<AxPolicy>(false).writeString(policy, AxPolicy.class));
                 apexModel.getPolicyModel().getPolicies().getPolicyMap().remove(policy.getKey());
                 keyInformationFacade.deleteKeyInformation(name, version);
             }
@@ -249,14 +241,14 @@ public class PolicyFacade {
             final Set<AxPolicy> policySet = apexModel.getPolicyModel().getPolicies().getAll(name, version);
             if (policySet.isEmpty()) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT_S + name + ':' + version + DO_ES_NOT_EXIST);
+                    CONCEPT_S + name + ':' + version + DO_ES_NOT_EXIST);
             }
 
             final ApexApiResult result = new ApexApiResult();
             for (final AxPolicy policy : policySet) {
                 final AxValidationResult validationResult = policy.validate(new AxValidationResult());
-                result.addMessage(new ApexModelStringWriter<AxArtifactKey>(false).writeString(policy.getKey(),
-                        AxArtifactKey.class, jsonMode));
+                result.addMessage(
+                    new ApexModelStringWriter<AxArtifactKey>(false).writeString(policy.getKey(), AxArtifactKey.class));
                 result.addMessage(validationResult.toString());
             }
             return result;
@@ -279,34 +271,34 @@ public class PolicyFacade {
      * @return result of the operation
      */
     public ApexApiResult createPolicyState(final String name, final String version, final String stateName,
-            final String triggerName, final String triggerVersion, final String defaultTaskName,
-            final String defaltTaskVersion) {
+        final String triggerName, final String triggerVersion, final String defaultTaskName,
+        final String defaltTaskVersion) {
         try {
             Assertions.argumentNotNull(stateName, STATE_NAME_MAY_NOT_BE_NULL);
 
             final AxPolicy policy = apexModel.getPolicyModel().getPolicies().get(name, version);
             if (policy == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + name + ':' + version + DOES_NOT_EXIST);
+                    CONCEPT + name + ':' + version + DOES_NOT_EXIST);
             }
 
             final AxReferenceKey refKey = new AxReferenceKey(policy.getKey(), stateName);
 
             if (policy.getStateMap().containsKey(refKey.getLocalName())) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_EXISTS,
-                        CONCEPT + refKey.getId() + ALREADY_EXISTS);
+                    CONCEPT + refKey.getId() + ALREADY_EXISTS);
             }
 
             final AxEvent triggerEvent = apexModel.getPolicyModel().getEvents().get(triggerName, triggerVersion);
             if (triggerEvent == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + triggerName + ':' + triggerVersion + DOES_NOT_EXIST);
+                    CONCEPT + triggerName + ':' + triggerVersion + DOES_NOT_EXIST);
             }
 
             final AxTask defaultTask = apexModel.getPolicyModel().getTasks().get(defaultTaskName, defaltTaskVersion);
             if (defaultTask == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + defaultTaskName + ':' + defaltTaskVersion + DOES_NOT_EXIST);
+                    CONCEPT + defaultTaskName + ':' + defaltTaskVersion + DOES_NOT_EXIST);
             }
 
             final AxState state = new AxState(refKey);
@@ -334,38 +326,38 @@ public class PolicyFacade {
      * @return result of the operation
      */
     public ApexApiResult updatePolicyState(final String name, final String version, final String stateName,
-            final String triggerName, final String triggerVersion, final String defaultTaskName,
-            final String defaltTaskVersion) {
+        final String triggerName, final String triggerVersion, final String defaultTaskName,
+        final String defaltTaskVersion) {
         try {
             Assertions.argumentNotNull(stateName, STATE_NAME_MAY_NOT_BE_NULL);
 
             final AxPolicy policy = apexModel.getPolicyModel().getPolicies().get(name, version);
             if (policy == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + name + ':' + version + DOES_NOT_EXIST);
+                    CONCEPT + name + ':' + version + DOES_NOT_EXIST);
             }
 
             final AxState state = policy.getStateMap().get(stateName);
             if (state == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + policy.getKey().getId() + ':' + stateName + DOES_NOT_EXIST);
+                    CONCEPT + policy.getKey().getId() + ':' + stateName + DOES_NOT_EXIST);
             }
 
             if (triggerName != null) {
                 final AxEvent triggerEvent = apexModel.getPolicyModel().getEvents().get(triggerName, triggerVersion);
                 if (triggerEvent == null) {
                     return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                            CONCEPT + triggerName + ':' + triggerVersion + DOES_NOT_EXIST);
+                        CONCEPT + triggerName + ':' + triggerVersion + DOES_NOT_EXIST);
                 }
                 state.setTrigger(triggerEvent.getKey());
             }
 
             if (defaultTaskName != null) {
                 final AxTask defaultTask =
-                        apexModel.getPolicyModel().getTasks().get(defaultTaskName, defaltTaskVersion);
+                    apexModel.getPolicyModel().getTasks().get(defaultTaskName, defaltTaskVersion);
                 if (defaultTask == null) {
                     return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                            CONCEPT + defaultTaskName + ':' + defaltTaskVersion + DOES_NOT_EXIST);
+                        CONCEPT + defaultTaskName + ':' + defaltTaskVersion + DOES_NOT_EXIST);
                 }
                 state.setDefaultTask(defaultTask.getKey());
             }
@@ -389,27 +381,26 @@ public class PolicyFacade {
             final AxPolicy policy = apexModel.getPolicyModel().getPolicies().get(name, version);
             if (policy == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + name + ':' + version + DOES_NOT_EXIST);
+                    CONCEPT + name + ':' + version + DOES_NOT_EXIST);
             }
 
             if (stateName != null) {
                 final AxState state = policy.getStateMap().get(stateName);
                 if (state != null) {
                     return new ApexApiResult(ApexApiResult.Result.SUCCESS,
-                            new ApexModelStringWriter<AxState>(false).writeString(state, AxState.class, jsonMode));
+                        new ApexModelStringWriter<AxState>(false).writeString(state, AxState.class));
                 } else {
                     return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                            CONCEPT + name + ':' + version + ':' + state + DOES_NOT_EXIST);
+                        CONCEPT + name + ':' + version + ':' + state + DOES_NOT_EXIST);
                 }
             } else {
                 if (policy.getStateMap().size() == 0) {
                     return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                            "no states defined on policy " + policy.getKey().getId());
+                        "no states defined on policy " + policy.getKey().getId());
                 }
                 final ApexApiResult result = new ApexApiResult();
                 for (final AxState state : policy.getStateMap().values()) {
-                    result.addMessage(
-                            new ApexModelStringWriter<AxState>(false).writeString(state, AxState.class, jsonMode));
+                    result.addMessage(new ApexModelStringWriter<AxState>(false).writeString(state, AxState.class));
                 }
                 return result;
             }
@@ -431,28 +422,27 @@ public class PolicyFacade {
             final AxPolicy policy = apexModel.getPolicyModel().getPolicies().get(name, version);
             if (policy == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + name + ':' + version + DOES_NOT_EXIST);
+                    CONCEPT + name + ':' + version + DOES_NOT_EXIST);
             }
 
             final ApexApiResult result = new ApexApiResult();
             if (stateName != null) {
                 if (policy.getStateMap().containsKey(stateName)) {
                     result.addMessage(new ApexModelStringWriter<AxState>(false)
-                            .writeString(policy.getStateMap().get(stateName), AxState.class, jsonMode));
+                        .writeString(policy.getStateMap().get(stateName), AxState.class));
                     policy.getStateMap().remove(stateName);
                     return result;
                 } else {
                     return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                            CONCEPT + name + ':' + version + ':' + stateName + DOES_NOT_EXIST);
+                        CONCEPT + name + ':' + version + ':' + stateName + DOES_NOT_EXIST);
                 }
             } else {
                 if (policy.getStateMap().size() == 0) {
                     return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                            "no states defined on policy " + policy.getKey().getId());
+                        "no states defined on policy " + policy.getKey().getId());
                 }
                 for (final AxState state : policy.getStateMap().values()) {
-                    result.addMessage(
-                            new ApexModelStringWriter<AxState>(false).writeString(state, AxState.class, jsonMode));
+                    result.addMessage(new ApexModelStringWriter<AxState>(false).writeString(state, AxState.class));
                 }
                 policy.getStateMap().clear();
                 return result;
@@ -474,20 +464,20 @@ public class PolicyFacade {
      * @return result of the operation
      */
     public ApexApiResult createPolicyStateTaskSelectionLogic(final String name, final String version,
-            final String stateName, final String logicFlavour, final String logic) {
+        final String stateName, final String logicFlavour, final String logic) {
         try {
             Assertions.argumentNotNull(stateName, STATE_NAME_MAY_NOT_BE_NULL);
 
             final AxPolicy policy = apexModel.getPolicyModel().getPolicies().get(name, version);
             if (policy == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + name + ':' + version + DOES_NOT_EXIST);
+                    CONCEPT + name + ':' + version + DOES_NOT_EXIST);
             }
 
             final AxState state = policy.getStateMap().get(stateName);
             if (state == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + policy.getKey().getId() + ':' + stateName + DOES_NOT_EXIST);
+                    CONCEPT + policy.getKey().getId() + ':' + stateName + DOES_NOT_EXIST);
             }
 
             // There is only one logic item associated with a state so we use a hard coded logic
@@ -496,7 +486,7 @@ public class PolicyFacade {
 
             if (!state.getTaskSelectionLogic().getKey().getLocalName().equals(AxKey.NULL_KEY_NAME)) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_EXISTS,
-                        CONCEPT + refKey.getId() + ALREADY_EXISTS);
+                    CONCEPT + refKey.getId() + ALREADY_EXISTS);
             }
 
             state.setTaskSelectionLogic(new AxTaskSelectionLogic(refKey, logicFlavour, logic));
@@ -517,25 +507,25 @@ public class PolicyFacade {
      * @return result of the operation
      */
     public ApexApiResult updatePolicyStateTaskSelectionLogic(final String name, final String version,
-            final String stateName, final String logicFlavour, final String logic) {
+        final String stateName, final String logicFlavour, final String logic) {
         try {
             Assertions.argumentNotNull(stateName, STATE_NAME_MAY_NOT_BE_NULL);
 
             final AxPolicy policy = apexModel.getPolicyModel().getPolicies().get(name, version);
             if (policy == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + name + ':' + version + DOES_NOT_EXIST);
+                    CONCEPT + name + ':' + version + DOES_NOT_EXIST);
             }
 
             final AxState state = policy.getStateMap().get(stateName);
             if (state == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + policy.getKey().getId() + ':' + stateName + DOES_NOT_EXIST);
+                    CONCEPT + policy.getKey().getId() + ':' + stateName + DOES_NOT_EXIST);
             }
 
             if (state.getTaskSelectionLogic().getKey().getLocalName().equals(AxKey.NULL_KEY_NAME)) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + state.getTaskSelectionLogic().getKey().getId() + DOES_NOT_EXIST);
+                    CONCEPT + state.getTaskSelectionLogic().getKey().getId() + DOES_NOT_EXIST);
             }
 
             final AxTaskSelectionLogic taskSelectionLogic = state.getTaskSelectionLogic();
@@ -561,25 +551,25 @@ public class PolicyFacade {
      * @return result of the operation
      */
     public ApexApiResult listPolicyStateTaskSelectionLogic(final String name, final String version,
-            final String stateName) {
+        final String stateName) {
         try {
             Assertions.argumentNotNull(stateName, STATE_NAME_MAY_NOT_BE_NULL);
 
             final AxPolicy policy = apexModel.getPolicyModel().getPolicies().get(name, version);
             if (policy == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + name + ':' + version + DOES_NOT_EXIST);
+                    CONCEPT + name + ':' + version + DOES_NOT_EXIST);
             }
 
             final AxState state = policy.getStateMap().get(stateName);
             if (state == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + policy.getKey().getId() + ':' + stateName + DOES_NOT_EXIST);
+                    CONCEPT + policy.getKey().getId() + ':' + stateName + DOES_NOT_EXIST);
             }
 
             return new ApexApiResult(ApexApiResult.Result.SUCCESS,
-                    new ApexModelStringWriter<AxTaskSelectionLogic>(false).writeString(state.getTaskSelectionLogic(),
-                            AxTaskSelectionLogic.class, jsonMode));
+                new ApexModelStringWriter<AxTaskSelectionLogic>(false).writeString(state.getTaskSelectionLogic(),
+                    AxTaskSelectionLogic.class));
         } catch (final Exception e) {
             return new ApexApiResult(ApexApiResult.Result.FAILED, e);
         }
@@ -594,30 +584,30 @@ public class PolicyFacade {
      * @return result of the operation
      */
     public ApexApiResult deletePolicyStateTaskSelectionLogic(final String name, final String version,
-            final String stateName) {
+        final String stateName) {
         try {
             Assertions.argumentNotNull(stateName, STATE_NAME_MAY_NOT_BE_NULL);
 
             final AxPolicy policy = apexModel.getPolicyModel().getPolicies().get(name, version);
             if (policy == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + name + ':' + version + DOES_NOT_EXIST);
+                    CONCEPT + name + ':' + version + DOES_NOT_EXIST);
             }
 
             final AxState state = policy.getStateMap().get(stateName);
             if (state == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + policy.getKey().getId() + ':' + stateName + DOES_NOT_EXIST);
+                    CONCEPT + policy.getKey().getId() + ':' + stateName + DOES_NOT_EXIST);
             }
 
             if (state.getTaskSelectionLogic().getKey().getLocalName().equals(AxKey.NULL_KEY_NAME)) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + state.getTaskSelectionLogic().getKey().getId() + DOES_NOT_EXIST);
+                    CONCEPT + state.getTaskSelectionLogic().getKey().getId() + DOES_NOT_EXIST);
             }
 
             final ApexApiResult result = new ApexApiResult();
             result.addMessage(new ApexModelStringWriter<AxTaskSelectionLogic>(false)
-                    .writeString(state.getTaskSelectionLogic(), AxTaskSelectionLogic.class, jsonMode));
+                .writeString(state.getTaskSelectionLogic(), AxTaskSelectionLogic.class));
             state.setTaskSelectionLogic(new AxTaskSelectionLogic());
             return result;
         } catch (final Exception e) {
@@ -640,7 +630,7 @@ public class PolicyFacade {
      * @return result of the operation
      */
     public ApexApiResult createPolicyStateOutput(final String name, final String version, final String stateName,
-            final String outputName, final String eventName, final String eventVersion, final String nextState) {
+        final String outputName, final String eventName, final String eventVersion, final String nextState) {
         try {
             Assertions.argumentNotNull(stateName, STATE_NAME_MAY_NOT_BE_NULL);
             Assertions.argumentNotNull(outputName, "outputName may not be null");
@@ -648,13 +638,13 @@ public class PolicyFacade {
             final AxPolicy policy = apexModel.getPolicyModel().getPolicies().get(name, version);
             if (policy == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        "Policy concept " + name + ':' + version + DOES_NOT_EXIST);
+                    "Policy concept " + name + ':' + version + DOES_NOT_EXIST);
             }
 
             final AxState state = policy.getStateMap().get(stateName);
             if (state == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        "State concept " + policy.getKey().getId() + ':' + stateName + DOES_NOT_EXIST);
+                    "State concept " + policy.getKey().getId() + ':' + stateName + DOES_NOT_EXIST);
             }
 
             final AxReferenceKey refKey = new AxReferenceKey(state.getKey(), outputName);
@@ -668,20 +658,20 @@ public class PolicyFacade {
             final AxEvent event = apexModel.getPolicyModel().getEvents().get(eventName, eventVersion);
             if (event == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        "Event concept " + eventName + ':' + eventVersion + DOES_NOT_EXIST);
+                    "Event concept " + eventName + ':' + eventVersion + DOES_NOT_EXIST);
             }
 
             AxReferenceKey nextStateKey = AxReferenceKey.getNullKey();
             if (nextState != null && !(AxReferenceKey.getNullKey().getLocalName().equals(nextState))) {
                 if (state.getKey().getLocalName().equals(nextState)) {
                     return new ApexApiResult(ApexApiResult.Result.FAILED,
-                            "next state " + nextState + " of a state cannot be the state itself");
+                        "next state " + nextState + " of a state cannot be the state itself");
                 }
                 nextStateKey = new AxReferenceKey(state.getKey().getParentArtifactKey(), nextState);
 
                 if (!policy.getStateMap().containsKey(nextState)) {
                     return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                            "Next state concept " + nextStateKey.getId() + DOES_NOT_EXIST);
+                        "Next state concept " + nextStateKey.getId() + DOES_NOT_EXIST);
                 }
             }
 
@@ -724,43 +714,42 @@ public class PolicyFacade {
      * @return result of the operation
      */
     public ApexApiResult listPolicyStateOutput(final String name, final String version, final String stateName,
-            final String outputName) {
+        final String outputName) {
         try {
             Assertions.argumentNotNull(stateName, STATE_NAME_MAY_NOT_BE_NULL);
 
             final AxPolicy policy = apexModel.getPolicyModel().getPolicies().get(name, version);
             if (policy == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + name + ':' + version + DOES_NOT_EXIST);
+                    CONCEPT + name + ':' + version + DOES_NOT_EXIST);
             }
 
             final AxState state = policy.getStateMap().get(stateName);
             if (state == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + policy.getKey().getId() + ':' + stateName + DOES_NOT_EXIST);
+                    CONCEPT + policy.getKey().getId() + ':' + stateName + DOES_NOT_EXIST);
             }
 
             if (outputName != null) {
                 final AxStateOutput stateOutput = state.getStateOutputs().get(outputName);
                 if (stateOutput != null) {
                     return new ApexApiResult(ApexApiResult.Result.SUCCESS,
-                            new ApexModelStringWriter<AxStateOutput>(false).writeString(stateOutput,
-                                    AxStateOutput.class, jsonMode));
+                        new ApexModelStringWriter<AxStateOutput>(false).writeString(stateOutput, AxStateOutput.class));
                 } else {
                     return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                            CONCEPT + state.getKey().getId() + ':' + outputName + DOES_NOT_EXIST);
+                        CONCEPT + state.getKey().getId() + ':' + outputName + DOES_NOT_EXIST);
                 }
             } else {
                 if (state.getStateOutputs().size() == 0) {
                     return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                            "no state output concepts exist for state " + state.getKey().getId());
+                        "no state output concepts exist for state " + state.getKey().getId());
                 }
 
                 final ApexApiResult result = new ApexApiResult();
 
                 for (final AxStateOutput stateOutput : state.getStateOutputs().values()) {
-                    result.addMessage(new ApexModelStringWriter<AxStateOutput>(false).writeString(stateOutput,
-                            AxStateOutput.class, jsonMode));
+                    result.addMessage(
+                        new ApexModelStringWriter<AxStateOutput>(false).writeString(stateOutput, AxStateOutput.class));
                 }
                 return result;
             }
@@ -779,45 +768,44 @@ public class PolicyFacade {
      * @return result of the operation
      */
     public ApexApiResult deletePolicyStateOutput(final String name, final String version, final String stateName,
-            final String outputName) {
+        final String outputName) {
         try {
             Assertions.argumentNotNull(stateName, STATE_NAME_MAY_NOT_BE_NULL);
 
             final AxPolicy policy = apexModel.getPolicyModel().getPolicies().get(name, version);
             if (policy == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + name + ':' + version + DOES_NOT_EXIST);
+                    CONCEPT + name + ':' + version + DOES_NOT_EXIST);
             }
 
             final AxState state = policy.getStateMap().get(stateName);
             if (state == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + policy.getKey().getId() + ':' + stateName + DOES_NOT_EXIST);
+                    CONCEPT + policy.getKey().getId() + ':' + stateName + DOES_NOT_EXIST);
             }
 
             if (outputName != null) {
                 final AxStateOutput stateOutput = state.getStateOutputs().get(outputName);
                 if (stateOutput != null) {
                     final ApexApiResult result = new ApexApiResult(ApexApiResult.Result.SUCCESS,
-                            new ApexModelStringWriter<AxStateOutput>(false).writeString(stateOutput,
-                                    AxStateOutput.class, jsonMode));
+                        new ApexModelStringWriter<AxStateOutput>(false).writeString(stateOutput, AxStateOutput.class));
                     state.getStateOutputs().remove(outputName);
                     return result;
                 } else {
                     return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                            CONCEPT + state.getKey().getId() + ':' + outputName + DOES_NOT_EXIST);
+                        CONCEPT + state.getKey().getId() + ':' + outputName + DOES_NOT_EXIST);
                 }
             } else {
                 if (state.getStateOutputs().size() == 0) {
                     return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                            "no state output concepts exist for state " + state.getKey().getId());
+                        "no state output concepts exist for state " + state.getKey().getId());
                 }
 
                 final ApexApiResult result = new ApexApiResult();
 
                 for (final Entry<String, AxStateOutput> stateOutputEntry : state.getStateOutputs().entrySet()) {
                     result.addMessage(new ApexModelStringWriter<AxStateOutput>(false)
-                            .writeString(stateOutputEntry.getValue(), AxStateOutput.class, jsonMode));
+                        .writeString(stateOutputEntry.getValue(), AxStateOutput.class));
                 }
                 state.getStateOutputs().clear();
                 return result;
@@ -840,7 +828,7 @@ public class PolicyFacade {
      * @return result of the operation
      */
     public ApexApiResult createPolicyStateFinalizerLogic(final String name, final String version,
-            final String stateName, final String finalizerLogicName, final String logicFlavour, final String logic) {
+        final String stateName, final String finalizerLogicName, final String logicFlavour, final String logic) {
         try {
             Assertions.argumentNotNull(stateName, STATE_NAME_MAY_NOT_BE_NULL);
             Assertions.argumentNotNull(finalizerLogicName, "finalizerlogicName may not be null");
@@ -848,24 +836,24 @@ public class PolicyFacade {
             final AxPolicy policy = apexModel.getPolicyModel().getPolicies().get(name, version);
             if (policy == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + name + ':' + version + DOES_NOT_EXIST);
+                    CONCEPT + name + ':' + version + DOES_NOT_EXIST);
             }
 
             final AxState state = policy.getStateMap().get(stateName);
             if (state == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + policy.getKey().getId() + ':' + stateName + DOES_NOT_EXIST);
+                    CONCEPT + policy.getKey().getId() + ':' + stateName + DOES_NOT_EXIST);
             }
 
             final AxReferenceKey refKey = new AxReferenceKey(state.getKey(), finalizerLogicName);
 
             if (state.getStateFinalizerLogicMap().containsKey(refKey.getLocalName())) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_EXISTS,
-                        CONCEPT + refKey.getId() + ALREADY_EXISTS);
+                    CONCEPT + refKey.getId() + ALREADY_EXISTS);
             }
 
             state.getStateFinalizerLogicMap().put(finalizerLogicName,
-                    new AxStateFinalizerLogic(refKey, logicFlavour, logic));
+                new AxStateFinalizerLogic(refKey, logicFlavour, logic));
             return new ApexApiResult();
         } catch (final Exception e) {
             return new ApexApiResult(ApexApiResult.Result.FAILED, e);
@@ -885,7 +873,7 @@ public class PolicyFacade {
      * @return result of the operation
      */
     public ApexApiResult updatePolicyStateFinalizerLogic(final String name, final String version,
-            final String stateName, final String finalizerLogicName, final String logicFlavour, final String logic) {
+        final String stateName, final String finalizerLogicName, final String logicFlavour, final String logic) {
         try {
             Assertions.argumentNotNull(stateName, STATE_NAME_MAY_NOT_BE_NULL);
             Assertions.argumentNotNull(finalizerLogicName, "finalizerLogicName may not be null");
@@ -893,21 +881,21 @@ public class PolicyFacade {
             final AxPolicy policy = apexModel.getPolicyModel().getPolicies().get(name, version);
             if (policy == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + name + ':' + version + DOES_NOT_EXIST);
+                    CONCEPT + name + ':' + version + DOES_NOT_EXIST);
             }
 
             final AxState state = policy.getStateMap().get(stateName);
             if (state == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + policy.getKey().getId() + ':' + stateName + DOES_NOT_EXIST);
+                    CONCEPT + policy.getKey().getId() + ':' + stateName + DOES_NOT_EXIST);
             }
 
             final AxReferenceKey refKey = new AxReferenceKey(state.getKey(), finalizerLogicName);
             final AxStateFinalizerLogic stateFinalizerLogic =
-                    state.getStateFinalizerLogicMap().get(refKey.getKey().getLocalName());
+                state.getStateFinalizerLogicMap().get(refKey.getKey().getLocalName());
             if (stateFinalizerLogic == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        STATE_FINALIZER_LOGIC + refKey.getId() + DOES_NOT_EXIST);
+                    STATE_FINALIZER_LOGIC + refKey.getId() + DOES_NOT_EXIST);
             }
 
             if (logicFlavour != null) {
@@ -933,43 +921,43 @@ public class PolicyFacade {
      * @return result of the operation
      */
     public ApexApiResult listPolicyStateFinalizerLogic(final String name, final String version, final String stateName,
-            final String finalizerLogicName) {
+        final String finalizerLogicName) {
         try {
             Assertions.argumentNotNull(stateName, STATE_NAME_MAY_NOT_BE_NULL);
 
             final AxPolicy policy = apexModel.getPolicyModel().getPolicies().get(name, version);
             if (policy == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + name + ':' + version + DOES_NOT_EXIST);
+                    CONCEPT + name + ':' + version + DOES_NOT_EXIST);
             }
 
             final AxState state = policy.getStateMap().get(stateName);
             if (state == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + policy.getKey().getId() + ':' + stateName + DOES_NOT_EXIST);
+                    CONCEPT + policy.getKey().getId() + ':' + stateName + DOES_NOT_EXIST);
             }
 
             if (finalizerLogicName != null) {
                 final AxReferenceKey refKey = new AxReferenceKey(state.getKey(), finalizerLogicName);
                 final AxStateFinalizerLogic stateFinalizerLogic =
-                        state.getStateFinalizerLogicMap().get(refKey.getKey().getLocalName());
+                    state.getStateFinalizerLogicMap().get(refKey.getKey().getLocalName());
                 if (stateFinalizerLogic == null) {
                     return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                            STATE_FINALIZER_LOGIC + refKey.getId() + DOES_NOT_EXIST);
+                        STATE_FINALIZER_LOGIC + refKey.getId() + DOES_NOT_EXIST);
                 }
 
                 return new ApexApiResult(ApexApiResult.Result.SUCCESS,
-                        new ApexModelStringWriter<AxStateFinalizerLogic>(false).writeString(stateFinalizerLogic,
-                                AxStateFinalizerLogic.class, jsonMode));
+                    new ApexModelStringWriter<AxStateFinalizerLogic>(false).writeString(stateFinalizerLogic,
+                        AxStateFinalizerLogic.class));
             } else {
                 if (state.getStateFinalizerLogicMap().size() == 0) {
                     return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                            "no state finalizer logic defined on state " + state.getKey().getId());
+                        "no state finalizer logic defined on state " + state.getKey().getId());
                 }
                 final ApexApiResult result = new ApexApiResult();
                 for (final AxStateFinalizerLogic stateFinalizerLogic : state.getStateFinalizerLogicMap().values()) {
                     result.addMessage(new ApexModelStringWriter<AxStateFinalizerLogic>(false)
-                            .writeString(stateFinalizerLogic, AxStateFinalizerLogic.class, jsonMode));
+                        .writeString(stateFinalizerLogic, AxStateFinalizerLogic.class));
                 }
                 return result;
             }
@@ -988,46 +976,46 @@ public class PolicyFacade {
      * @return result of the operation
      */
     public ApexApiResult deletePolicyStateFinalizerLogic(final String name, final String version,
-            final String stateName, final String finalizerLogicName) {
+        final String stateName, final String finalizerLogicName) {
         try {
             Assertions.argumentNotNull(stateName, STATE_NAME_MAY_NOT_BE_NULL);
 
             final AxPolicy policy = apexModel.getPolicyModel().getPolicies().get(name, version);
             if (policy == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + name + ':' + version + DOES_NOT_EXIST);
+                    CONCEPT + name + ':' + version + DOES_NOT_EXIST);
             }
 
             final AxState state = policy.getStateMap().get(stateName);
             if (state == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + policy.getKey().getId() + ':' + stateName + DOES_NOT_EXIST);
+                    CONCEPT + policy.getKey().getId() + ':' + stateName + DOES_NOT_EXIST);
             }
 
             if (finalizerLogicName != null) {
                 final AxReferenceKey refKey = new AxReferenceKey(state.getKey(), finalizerLogicName);
                 final AxStateFinalizerLogic stateFinalizerLogic =
-                        state.getStateFinalizerLogicMap().get(refKey.getKey().getLocalName());
+                    state.getStateFinalizerLogicMap().get(refKey.getKey().getLocalName());
                 if (stateFinalizerLogic == null) {
                     return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                            STATE_FINALIZER_LOGIC + refKey.getId() + DOES_NOT_EXIST);
+                        STATE_FINALIZER_LOGIC + refKey.getId() + DOES_NOT_EXIST);
                 }
 
                 final ApexApiResult result = new ApexApiResult();
                 result.addMessage(new ApexModelStringWriter<AxStateFinalizerLogic>(false)
-                        .writeString(stateFinalizerLogic, AxStateFinalizerLogic.class, jsonMode));
+                    .writeString(stateFinalizerLogic, AxStateFinalizerLogic.class));
                 state.getStateFinalizerLogicMap().remove(refKey.getLocalName());
                 return result;
             } else {
                 if (state.getStateFinalizerLogicMap().size() == 0) {
                     return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                            "no state finalizer logic defined on state " + state.getKey().getId());
+                        "no state finalizer logic defined on state " + state.getKey().getId());
                 }
 
                 final ApexApiResult result = new ApexApiResult();
                 for (final AxStateFinalizerLogic stateFinalizerLogic : state.getStateFinalizerLogicMap().values()) {
                     result.addMessage(new ApexModelStringWriter<AxStateFinalizerLogic>(false)
-                            .writeString(stateFinalizerLogic, AxStateFinalizerLogic.class, jsonMode));
+                        .writeString(stateFinalizerLogic, AxStateFinalizerLogic.class));
                 }
                 state.getStateFinalizerLogicMap().clear();
                 return result;
@@ -1049,38 +1037,28 @@ public class PolicyFacade {
             Assertions.argumentNotNull(builder.getOutputName(), "outputName may not be null");
 
             final AxPolicy policy =
-                    apexModel.getPolicyModel().getPolicies().get(builder.getName(), builder.getVersion());
+                apexModel.getPolicyModel().getPolicies().get(builder.getName(), builder.getVersion());
             if (policy == null) {
-                return new ApexApiResult(
-                        ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + builder.getName() + ':' + builder.getVersion() + DOES_NOT_EXIST);
+                return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
+                    CONCEPT + builder.getName() + ':' + builder.getVersion() + DOES_NOT_EXIST);
             }
 
             final AxState state = policy.getStateMap().get(builder.getStateName());
             if (state == null) {
-                return new ApexApiResult(
-                        ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + policy.getKey().getId() + ':' + builder.getStateName() + DOES_NOT_EXIST);
+                return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
+                    CONCEPT + policy.getKey().getId() + ':' + builder.getStateName() + DOES_NOT_EXIST);
             }
 
             final AxTask task =
-                    apexModel
-                    .getPolicyModel()
-                    .getTasks()
-                    .get(builder.getTaskName(), builder.getTaskVersion());
+                apexModel.getPolicyModel().getTasks().get(builder.getTaskName(), builder.getTaskVersion());
             if (task == null) {
-                return new ApexApiResult(
-                        ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + builder.getTaskName() + ':' + builder.getTaskVersion() + DOES_NOT_EXIST);
+                return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
+                    CONCEPT + builder.getTaskName() + ':' + builder.getTaskVersion() + DOES_NOT_EXIST);
             }
 
             if (state.getTaskReferences().containsKey(task.getKey())) {
-                return new ApexApiResult(
-                        ApexApiResult.Result.CONCEPT_EXISTS,
-                        "task "
-                                + task.getKey().getId()
-                                + " already has reference with output "
-                                + state.getTaskReferences().get(task.getKey()));
+                return new ApexApiResult(ApexApiResult.Result.CONCEPT_EXISTS, "task " + task.getKey().getId()
+                    + " already has reference with output " + state.getTaskReferences().get(task.getKey()));
             }
 
             AxReferenceKey refKey;
@@ -1091,26 +1069,22 @@ public class PolicyFacade {
             }
 
             // The reference to the output we're using here
-            final AxReferenceKey outputRefKey =
-                    new AxReferenceKey(state.getKey(), builder.getOutputName());
+            final AxReferenceKey outputRefKey = new AxReferenceKey(state.getKey(), builder.getOutputName());
 
-            final AxStateTaskOutputType stateTaskOutputType =
-                    AxStateTaskOutputType.valueOf(builder.getOutputType());
+            final AxStateTaskOutputType stateTaskOutputType = AxStateTaskOutputType.valueOf(builder.getOutputType());
             if (stateTaskOutputType.equals(AxStateTaskOutputType.DIRECT)) {
                 if (!state.getStateOutputs().containsKey(outputRefKey.getLocalName())) {
-                    return new ApexApiResult(
-                            ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                            "state output concept " + outputRefKey.getId() + DOES_NOT_EXIST);
+                    return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
+                        "state output concept " + outputRefKey.getId() + DOES_NOT_EXIST);
                 }
             } else if (stateTaskOutputType.equals(AxStateTaskOutputType.LOGIC)) {
                 if (!state.getStateFinalizerLogicMap().containsKey(outputRefKey.getLocalName())) {
-                    return new ApexApiResult(
-                            ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                            "state finalizer logic concept " + outputRefKey.getId() + DOES_NOT_EXIST);
+                    return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
+                        "state finalizer logic concept " + outputRefKey.getId() + DOES_NOT_EXIST);
                 }
             } else {
-                return new ApexApiResult(
-                        ApexApiResult.Result.FAILED, "output type " + builder.getOutputType() + " invalid");
+                return new ApexApiResult(ApexApiResult.Result.FAILED,
+                    "output type " + builder.getOutputType() + " invalid");
             }
 
             String outputRefName = outputRefKey.getLocalName();
@@ -1138,14 +1112,11 @@ public class PolicyFacade {
         Map<String, AxEvent> outputEvents = new TreeMap<>();
         if (state.getNextStateSet().isEmpty()
             || state.getNextStateSet().contains(AxReferenceKey.getNullKey().getLocalName())) {
-            state.getStateOutputs().get(outputRefName).getOutgoingEventSet()
-                .forEach(outgoingEventKey -> outputEvents.put(outgoingEventKey.getName(),
-                    apexModel.getPolicyModel().getEvents().get(outgoingEventKey)));
+            state.getStateOutputs().get(outputRefName).getOutgoingEventSet().forEach(outgoingEventKey -> outputEvents
+                .put(outgoingEventKey.getName(), apexModel.getPolicyModel().getEvents().get(outgoingEventKey)));
         } else {
-            AxArtifactKey outgoingEventKey =
-                state.getStateOutputs().get(outputRefName).getOutgoingEvent();
-            outputEvents.put(outgoingEventKey.getName(),
-                apexModel.getPolicyModel().getEvents().get(outgoingEventKey));
+            AxArtifactKey outgoingEventKey = state.getStateOutputs().get(outputRefName).getOutgoingEvent();
+            outputEvents.put(outgoingEventKey.getName(), apexModel.getPolicyModel().getEvents().get(outgoingEventKey));
         }
         task.setOutputEvents(outputEvents);
     }
@@ -1161,20 +1132,20 @@ public class PolicyFacade {
      * @return result of the operation
      */
     public ApexApiResult listPolicyStateTaskRef(final String name, final String version, final String stateName,
-            final String taskName, final String taskVersion) {
+        final String taskName, final String taskVersion) {
         try {
             Assertions.argumentNotNull(stateName, STATE_NAME_MAY_NOT_BE_NULL);
 
             final AxPolicy policy = apexModel.getPolicyModel().getPolicies().get(name, version);
             if (policy == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + name + ':' + version + DOES_NOT_EXIST);
+                    CONCEPT + name + ':' + version + DOES_NOT_EXIST);
             }
 
             final AxState state = policy.getStateMap().get(stateName);
             if (state == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + policy.getKey().getId() + ':' + stateName + DOES_NOT_EXIST);
+                    CONCEPT + policy.getKey().getId() + ':' + stateName + DOES_NOT_EXIST);
             }
 
             final ApexApiResult result = new ApexApiResult();
@@ -1184,21 +1155,21 @@ public class PolicyFacade {
                 final AxArtifactKey key = taskReferenceEntry.getKey();
                 final AxStateTaskReference value = taskReferenceEntry.getValue();
                 if ((taskName != null && !key.getName().equals(taskName))
-                        || (taskVersion != null && !key.getVersion().equals(taskVersion))) {
+                    || (taskVersion != null && !key.getVersion().equals(taskVersion))) {
                     continue;
                 }
 
                 found = true;
-                result.addMessage(new ApexModelStringWriter<AxArtifactKey>(false).writeString(key, AxArtifactKey.class,
-                        jsonMode));
+                result
+                    .addMessage(new ApexModelStringWriter<AxArtifactKey>(false).writeString(key, AxArtifactKey.class));
                 result.addMessage(new ApexModelStringWriter<AxStateTaskReference>(false).writeString(value,
-                        AxStateTaskReference.class, jsonMode));
+                    AxStateTaskReference.class));
             }
             if (found) {
                 return result;
             } else {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        "no task references found for state " + state.getKey().getId());
+                    "no task references found for state " + state.getKey().getId());
             }
         } catch (final Exception e) {
             return new ApexApiResult(ApexApiResult.Result.FAILED, e);
@@ -1216,41 +1187,41 @@ public class PolicyFacade {
      * @return result of the operation
      */
     public ApexApiResult deletePolicyStateTaskRef(final String name, final String version, final String stateName,
-            final String taskName, final String taskVersion) {
+        final String taskName, final String taskVersion) {
         try {
             Assertions.argumentNotNull(stateName, STATE_NAME_MAY_NOT_BE_NULL);
 
             final AxPolicy policy = apexModel.getPolicyModel().getPolicies().get(name, version);
             if (policy == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + name + ':' + version + DOES_NOT_EXIST);
+                    CONCEPT + name + ':' + version + DOES_NOT_EXIST);
             }
 
             final AxState state = policy.getStateMap().get(stateName);
             if (state == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + policy.getKey().getId() + ':' + stateName + DOES_NOT_EXIST);
+                    CONCEPT + policy.getKey().getId() + ':' + stateName + DOES_NOT_EXIST);
             }
 
             final Set<AxArtifactKey> deleteSet = new TreeSet<>();
 
             for (final AxArtifactKey taskReferenceKey : state.getTaskReferences().keySet()) {
                 if ((taskName != null && !taskReferenceKey.getName().equals(taskName))
-                        || (taskVersion != null && !taskReferenceKey.getVersion().equals(taskVersion))) {
+                    || (taskVersion != null && !taskReferenceKey.getVersion().equals(taskVersion))) {
                     continue;
                 }
                 deleteSet.add(taskReferenceKey);
             }
             if (deleteSet.isEmpty()) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + taskName + ':' + taskVersion + DOES_NOT_EXIST_ON_STATE + state.getKey().getId());
+                    CONCEPT + taskName + ':' + taskVersion + DOES_NOT_EXIST_ON_STATE + state.getKey().getId());
             }
 
             final ApexApiResult result = new ApexApiResult();
             for (final AxArtifactKey keyToDelete : deleteSet) {
                 state.getTaskReferences().remove(keyToDelete);
-                result.addMessage(new ApexModelStringWriter<AxArtifactKey>(false).writeString(keyToDelete,
-                        AxArtifactKey.class, jsonMode));
+                result.addMessage(
+                    new ApexModelStringWriter<AxArtifactKey>(false).writeString(keyToDelete, AxArtifactKey.class));
             }
             return result;
         } catch (final Exception e) {
@@ -1270,32 +1241,32 @@ public class PolicyFacade {
      * @return result of the operation
      */
     public ApexApiResult createPolicyStateContextRef(final String name, final String version, final String stateName,
-            final String contextAlbumName, final String contextAlbumVersion) {
+        final String contextAlbumName, final String contextAlbumVersion) {
         try {
             Assertions.argumentNotNull(stateName, STATE_NAME_MAY_NOT_BE_NULL);
 
             final AxPolicy policy = apexModel.getPolicyModel().getPolicies().get(name, version);
             if (policy == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + name + ':' + version + DOES_NOT_EXIST);
+                    CONCEPT + name + ':' + version + DOES_NOT_EXIST);
             }
 
             final AxState state = policy.getStateMap().get(stateName);
             if (state == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + policy.getKey().getId() + ':' + stateName + DOES_NOT_EXIST);
+                    CONCEPT + policy.getKey().getId() + ':' + stateName + DOES_NOT_EXIST);
             }
 
             final AxContextAlbum contextAlbum =
-                    apexModel.getPolicyModel().getAlbums().get(contextAlbumName, contextAlbumVersion);
+                apexModel.getPolicyModel().getAlbums().get(contextAlbumName, contextAlbumVersion);
             if (contextAlbum == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + contextAlbumName + ':' + contextAlbumVersion + DOES_NOT_EXIST);
+                    CONCEPT + contextAlbumName + ':' + contextAlbumVersion + DOES_NOT_EXIST);
             }
 
             if (state.getContextAlbumReferences().contains(contextAlbum.getKey())) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_EXISTS, "concept album reference for concept "
-                        + contextAlbum.getKey().getId() + " already exists in state");
+                    + contextAlbum.getKey().getId() + " already exists in state");
             }
 
             state.getContextAlbumReferences().add(contextAlbum.getKey());
@@ -1318,36 +1289,36 @@ public class PolicyFacade {
      * @return result of the operation
      */
     public ApexApiResult listPolicyStateContextRef(final String name, final String version, final String stateName,
-            final String contextAlbumName, final String contextAlbumVersion) {
+        final String contextAlbumName, final String contextAlbumVersion) {
         try {
             Assertions.argumentNotNull(stateName, STATE_NAME_MAY_NOT_BE_NULL);
 
             final AxPolicy policy = apexModel.getPolicyModel().getPolicies().get(name, version);
             if (policy == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + name + ':' + version + DOES_NOT_EXIST);
+                    CONCEPT + name + ':' + version + DOES_NOT_EXIST);
             }
 
             final AxState state = policy.getStateMap().get(stateName);
             if (state == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + policy.getKey().getId() + ':' + stateName + DOES_NOT_EXIST);
+                    CONCEPT + policy.getKey().getId() + ':' + stateName + DOES_NOT_EXIST);
             }
 
             final ApexApiResult result = new ApexApiResult();
             boolean found = false;
             for (final AxArtifactKey albumKey : state.getContextAlbumReferences()) {
                 if ((contextAlbumName != null && !albumKey.getName().equals(contextAlbumName))
-                        || (contextAlbumVersion != null && !albumKey.getVersion().equals(contextAlbumVersion))) {
+                    || (contextAlbumVersion != null && !albumKey.getVersion().equals(contextAlbumVersion))) {
                     continue;
                 }
-                result.addMessage(new ApexModelStringWriter<AxArtifactKey>(false).writeString(albumKey,
-                        AxArtifactKey.class, jsonMode));
+                result.addMessage(
+                    new ApexModelStringWriter<AxArtifactKey>(false).writeString(albumKey, AxArtifactKey.class));
                 found = true;
             }
             if (!found) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, CONCEPT + contextAlbumName + ':'
-                        + contextAlbumVersion + DOES_NOT_EXIST_ON_STATE + state.getKey().getId());
+                    + contextAlbumVersion + DOES_NOT_EXIST_ON_STATE + state.getKey().getId());
             }
             return result;
         } catch (final Exception e) {
@@ -1368,20 +1339,20 @@ public class PolicyFacade {
      * @return result of the operation
      */
     public ApexApiResult deletePolicyStateContextRef(final String name, final String version, final String stateName,
-            final String contextAlbumName, final String contextAlbumVersion) {
+        final String contextAlbumName, final String contextAlbumVersion) {
         try {
             Assertions.argumentNotNull(stateName, STATE_NAME_MAY_NOT_BE_NULL);
 
             final AxPolicy policy = apexModel.getPolicyModel().getPolicies().get(name, version);
             if (policy == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + name + ':' + version + DOES_NOT_EXIST);
+                    CONCEPT + name + ':' + version + DOES_NOT_EXIST);
             }
 
             final AxState state = policy.getStateMap().get(stateName);
             if (state == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + policy.getKey().getId() + ':' + stateName + DOES_NOT_EXIST);
+                    CONCEPT + policy.getKey().getId() + ':' + stateName + DOES_NOT_EXIST);
             }
 
             final Set<AxArtifactKey> deleteSet = new TreeSet<>();
@@ -1389,7 +1360,7 @@ public class PolicyFacade {
             for (final AxArtifactKey albumKey : state.getContextAlbumReferences()) {
 
                 if ((contextAlbumName != null && !albumKey.getName().equals(contextAlbumName))
-                        || (contextAlbumVersion != null && !albumKey.getVersion().equals(contextAlbumVersion))) {
+                    || (contextAlbumVersion != null && !albumKey.getVersion().equals(contextAlbumVersion))) {
 
                     continue;
                 }
@@ -1397,14 +1368,14 @@ public class PolicyFacade {
             }
             if (deleteSet.isEmpty()) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, CONCEPT + contextAlbumName + ':'
-                        + contextAlbumVersion + DOES_NOT_EXIST_ON_STATE + state.getKey().getId());
+                    + contextAlbumVersion + DOES_NOT_EXIST_ON_STATE + state.getKey().getId());
             }
 
             final ApexApiResult result = new ApexApiResult();
             for (final AxArtifactKey keyToDelete : deleteSet) {
                 state.getContextAlbumReferences().remove(keyToDelete);
-                result.addMessage(new ApexModelStringWriter<AxArtifactKey>(false).writeString(keyToDelete,
-                        AxArtifactKey.class, jsonMode));
+                result.addMessage(
+                    new ApexModelStringWriter<AxArtifactKey>(false).writeString(keyToDelete, AxArtifactKey.class));
             }
             return result;
         } catch (final Exception e) {
index ad1edd7..6a2ded3 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2019 Nordix Foundation.
+ *  Modifications Copyright (C) 2019,2022 Nordix Foundation.
  *  Modifications Copyright (C) 2021 Bell Canada. All rights reserved.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
@@ -59,23 +59,17 @@ public class TaskFacade {
     // Facade classes for working towards the real Apex model
     private final KeyInformationFacade keyInformationFacade;
 
-    // JSON output on list/delete if set
-    private final boolean jsonMode;
-
     /**
      * Constructor that creates a task facade for the Apex Model API.
      *
      * @param apexModel the apex model
      * @param apexProperties Properties for the model
-     * @param jsonMode set to true to return JSON strings in list and delete operations, otherwise
-     *        set to false
      */
-    public TaskFacade(final ApexModel apexModel, final Properties apexProperties, final boolean jsonMode) {
+    public TaskFacade(final ApexModel apexModel, final Properties apexProperties) {
         this.apexModel = apexModel;
         this.apexProperties = apexProperties;
-        this.jsonMode = jsonMode;
 
-        keyInformationFacade = new KeyInformationFacade(apexModel, apexProperties, jsonMode);
+        keyInformationFacade = new KeyInformationFacade(apexModel, apexProperties);
     }
 
     /**
@@ -88,7 +82,7 @@ public class TaskFacade {
      * @return result of the operation
      */
     public ApexApiResult createTask(final String name, final String version, final String uuid,
-            final String description) {
+        final String description) {
         try {
             final AxArtifactKey key = new AxArtifactKey();
             key.setName(name);
@@ -124,12 +118,12 @@ public class TaskFacade {
      * @return result of the operation
      */
     public ApexApiResult updateTask(final String name, final String version, final String uuid,
-            final String description) {
+        final String description) {
         try {
             final AxTask task = apexModel.getPolicyModel().getTasks().get(name, version);
             if (task == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + name + ':' + version + DOES_NOT_EXIST);
+                    CONCEPT + name + ':' + version + DOES_NOT_EXIST);
             }
 
             return keyInformationFacade.updateKeyInformation(name, version, uuid, description);
@@ -150,12 +144,12 @@ public class TaskFacade {
             final Set<AxTask> taskSet = apexModel.getPolicyModel().getTasks().getAll(name, version);
             if (name != null && taskSet.isEmpty()) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT_S + name + ':' + version + DO_ES_NOT_EXIST);
+                    CONCEPT_S + name + ':' + version + DO_ES_NOT_EXIST);
             }
 
             final ApexApiResult result = new ApexApiResult();
             for (final AxTask task : taskSet) {
-                result.addMessage(new ApexModelStringWriter<AxTask>(false).writeString(task, AxTask.class, jsonMode));
+                result.addMessage(new ApexModelStringWriter<AxTask>(false).writeString(task, AxTask.class));
             }
             return result;
         } catch (final Exception e) {
@@ -177,22 +171,22 @@ public class TaskFacade {
                 final AxTask removedTask = apexModel.getPolicyModel().getTasks().getTaskMap().remove(key);
                 if (removedTask != null) {
                     return new ApexApiResult(ApexApiResult.Result.SUCCESS,
-                            new ApexModelStringWriter<AxTask>(false).writeString(removedTask, AxTask.class, jsonMode));
+                        new ApexModelStringWriter<AxTask>(false).writeString(removedTask, AxTask.class));
                 } else {
                     return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                            CONCEPT + key.getId() + DOES_NOT_EXIST);
+                        CONCEPT + key.getId() + DOES_NOT_EXIST);
                 }
             }
 
             final Set<AxTask> taskSet = apexModel.getPolicyModel().getTasks().getAll(name, version);
             if (taskSet.isEmpty()) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT_S + name + ':' + version + DO_ES_NOT_EXIST);
+                    CONCEPT_S + name + ':' + version + DO_ES_NOT_EXIST);
             }
 
             final ApexApiResult result = new ApexApiResult();
             for (final AxTask task : taskSet) {
-                result.addMessage(new ApexModelStringWriter<AxTask>(false).writeString(task, AxTask.class, jsonMode));
+                result.addMessage(new ApexModelStringWriter<AxTask>(false).writeString(task, AxTask.class));
                 apexModel.getPolicyModel().getTasks().getTaskMap().remove(task.getKey());
                 keyInformationFacade.deleteKeyInformation(name, version);
             }
@@ -214,14 +208,14 @@ public class TaskFacade {
             final Set<AxTask> taskSet = apexModel.getPolicyModel().getTasks().getAll(name, version);
             if (taskSet.isEmpty()) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT_S + name + ':' + version + DO_ES_NOT_EXIST);
+                    CONCEPT_S + name + ':' + version + DO_ES_NOT_EXIST);
             }
 
             final ApexApiResult result = new ApexApiResult();
             for (final AxTask task : taskSet) {
                 final AxValidationResult validationResult = task.validate(new AxValidationResult());
-                result.addMessage(new ApexModelStringWriter<AxArtifactKey>(false).writeString(task.getKey(),
-                        AxArtifactKey.class, jsonMode));
+                result.addMessage(
+                    new ApexModelStringWriter<AxArtifactKey>(false).writeString(task.getKey(), AxArtifactKey.class));
                 result.addMessage(validationResult.toString());
             }
             return result;
@@ -241,12 +235,12 @@ public class TaskFacade {
      * @return result of the operation
      */
     public ApexApiResult createTaskLogic(final String name, final String version, final String logicFlavour,
-            final String logic) {
+        final String logic) {
         try {
             final AxTask task = apexModel.getPolicyModel().getTasks().get(name, version);
             if (task == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + name + ':' + version + DOES_NOT_EXIST);
+                    CONCEPT + name + ':' + version + DOES_NOT_EXIST);
             }
 
             // There is only one logic item associated with a task so we use a hard coded logic name
@@ -254,7 +248,7 @@ public class TaskFacade {
 
             if (!task.getTaskLogic().getKey().getLocalName().equals(AxKey.NULL_KEY_NAME)) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_EXISTS,
-                        CONCEPT + refKey.getId() + ALREADY_EXISTS);
+                    CONCEPT + refKey.getId() + ALREADY_EXISTS);
             }
 
             task.setTaskLogic(new AxTaskLogic(refKey, logicFlavour, logic));
@@ -274,17 +268,17 @@ public class TaskFacade {
      * @return result of the operation
      */
     public ApexApiResult updateTaskLogic(final String name, final String version, final String logicFlavour,
-            final String logic) {
+        final String logic) {
         try {
             final AxTask task = apexModel.getPolicyModel().getTasks().get(name, version);
             if (task == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + name + ':' + version + DOES_NOT_EXIST);
+                    CONCEPT + name + ':' + version + DOES_NOT_EXIST);
             }
 
             if (task.getTaskLogic().getKey().getLocalName().equals(AxKey.NULL_KEY_NAME)) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + task.getTaskLogic().getKey().getId() + DOES_NOT_EXIST);
+                    CONCEPT + task.getTaskLogic().getKey().getId() + DOES_NOT_EXIST);
             }
 
             final AxTaskLogic taskLogic = task.getTaskLogic();
@@ -313,11 +307,11 @@ public class TaskFacade {
             final AxTask task = apexModel.getPolicyModel().getTasks().get(name, version);
             if (task == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + name + ':' + version + DOES_NOT_EXIST);
+                    CONCEPT + name + ':' + version + DOES_NOT_EXIST);
             }
 
-            return new ApexApiResult(ApexApiResult.Result.SUCCESS, new ApexModelStringWriter<AxTaskLogic>(false)
-                    .writeString(task.getTaskLogic(), AxTaskLogic.class, jsonMode));
+            return new ApexApiResult(ApexApiResult.Result.SUCCESS,
+                new ApexModelStringWriter<AxTaskLogic>(false).writeString(task.getTaskLogic(), AxTaskLogic.class));
         } catch (final Exception e) {
             return new ApexApiResult(ApexApiResult.Result.FAILED, e);
         }
@@ -335,17 +329,17 @@ public class TaskFacade {
             final AxTask task = apexModel.getPolicyModel().getTasks().get(name, version);
             if (task == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + name + ':' + version + DOES_NOT_EXIST);
+                    CONCEPT + name + ':' + version + DOES_NOT_EXIST);
             }
 
             if (task.getTaskLogic().getKey().getLocalName().equals(AxKey.NULL_KEY_NAME)) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + task.getTaskLogic().getKey().getId() + DOES_NOT_EXIST);
+                    CONCEPT + task.getTaskLogic().getKey().getId() + DOES_NOT_EXIST);
             }
 
             final ApexApiResult result = new ApexApiResult();
-            result.addMessage(new ApexModelStringWriter<AxTaskLogic>(false).writeString(task.getTaskLogic(),
-                    AxTaskLogic.class, jsonMode));
+            result.addMessage(
+                new ApexModelStringWriter<AxTaskLogic>(false).writeString(task.getTaskLogic(), AxTaskLogic.class));
             task.setTaskLogic(new AxTaskLogic());
             return result;
         } catch (final Exception e) {
@@ -363,21 +357,21 @@ public class TaskFacade {
      * @return result of the operation
      */
     public ApexApiResult createTaskParameter(final String name, final String version, final String parName,
-            final String defaultValue) {
+        final String defaultValue) {
         try {
             Assertions.argumentNotNull(parName, "parName may not be null");
 
             final AxTask task = apexModel.getPolicyModel().getTasks().get(name, version);
             if (task == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + name + ':' + version + DOES_NOT_EXIST);
+                    CONCEPT + name + ':' + version + DOES_NOT_EXIST);
             }
 
             final AxReferenceKey refKey = new AxReferenceKey(task.getKey(), parName);
 
             if (task.getTaskParameters().containsKey(refKey.getLocalName())) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_EXISTS,
-                        CONCEPT + refKey.getId() + ALREADY_EXISTS);
+                    CONCEPT + refKey.getId() + ALREADY_EXISTS);
             }
 
             task.getTaskParameters().put(refKey.getLocalName(), new AxTaskParameter(refKey, defaultValue));
@@ -400,29 +394,29 @@ public class TaskFacade {
             final AxTask task = apexModel.getPolicyModel().getTasks().get(name, version);
             if (task == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + name + ':' + version + DOES_NOT_EXIST);
+                    CONCEPT + name + ':' + version + DOES_NOT_EXIST);
             }
 
             if (parName != null) {
                 final AxTaskParameter taskParameter = task.getTaskParameters().get(parName);
                 if (taskParameter != null) {
                     return new ApexApiResult(ApexApiResult.Result.SUCCESS,
-                            new ApexModelStringWriter<AxTaskParameter>(false).writeString(taskParameter,
-                                    AxTaskParameter.class, jsonMode));
+                        new ApexModelStringWriter<AxTaskParameter>(false).writeString(taskParameter,
+                            AxTaskParameter.class));
                 } else {
                     return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                            CONCEPT + name + ':' + version + ':' + taskParameter + DOES_NOT_EXIST);
+                        CONCEPT + name + ':' + version + ':' + taskParameter + DOES_NOT_EXIST);
                 }
             } else {
                 if (task.getTaskParameters().size() == 0) {
                     return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                            "no task parameters defined on task " + task.getKey().getId());
+                        "no task parameters defined on task " + task.getKey().getId());
                 }
 
                 final ApexApiResult result = new ApexApiResult();
                 for (final AxTaskParameter parameter : task.getTaskParameters().values()) {
                     result.addMessage(new ApexModelStringWriter<AxTaskParameter>(false).writeString(parameter,
-                            AxTaskParameter.class, jsonMode));
+                        AxTaskParameter.class));
                 }
                 return result;
             }
@@ -444,29 +438,29 @@ public class TaskFacade {
             final AxTask task = apexModel.getPolicyModel().getTasks().get(name, version);
             if (task == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + name + ':' + version + DOES_NOT_EXIST);
+                    CONCEPT + name + ':' + version + DOES_NOT_EXIST);
             }
 
             final ApexApiResult result = new ApexApiResult();
             if (parName != null) {
                 if (task.getTaskParameters().containsKey(parName)) {
                     result.addMessage(new ApexModelStringWriter<AxTaskParameter>(false)
-                            .writeString(task.getTaskParameters().get(parName), AxTaskParameter.class, jsonMode));
+                        .writeString(task.getTaskParameters().get(parName), AxTaskParameter.class));
                     task.getTaskParameters().remove(parName);
                     return result;
                 } else {
                     return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                            CONCEPT + name + ':' + version + ':' + parName + DOES_NOT_EXIST);
+                        CONCEPT + name + ':' + version + ':' + parName + DOES_NOT_EXIST);
                 }
             } else {
                 if (task.getTaskParameters().size() == 0) {
                     return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                            "no task parameters defined on task " + task.getKey().getId());
+                        "no task parameters defined on task " + task.getKey().getId());
                 }
 
                 for (final AxTaskParameter parameter : task.getTaskParameters().values()) {
                     result.addMessage(new ApexModelStringWriter<AxTaskParameter>(false).writeString(parameter,
-                            AxTaskParameter.class, jsonMode));
+                        AxTaskParameter.class));
                 }
                 task.getTaskParameters().clear();
                 return result;
@@ -487,24 +481,24 @@ public class TaskFacade {
      * @return result of the operation
      */
     public ApexApiResult createTaskContextRef(final String name, final String version, final String contextAlbumName,
-            final String contextAlbumVersion) {
+        final String contextAlbumVersion) {
         try {
             final AxTask task = apexModel.getPolicyModel().getTasks().get(name, version);
             if (task == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + name + ':' + version + DOES_NOT_EXIST);
+                    CONCEPT + name + ':' + version + DOES_NOT_EXIST);
             }
 
             final AxContextAlbum contextAlbum =
-                    apexModel.getPolicyModel().getAlbums().get(contextAlbumName, contextAlbumVersion);
+                apexModel.getPolicyModel().getAlbums().get(contextAlbumName, contextAlbumVersion);
             if (contextAlbum == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + contextAlbumName + ':' + contextAlbumVersion + DOES_NOT_EXIST);
+                    CONCEPT + contextAlbumName + ':' + contextAlbumVersion + DOES_NOT_EXIST);
             }
 
             if (task.getContextAlbumReferences().contains(contextAlbum.getKey())) {
-                return new ApexApiResult(ApexApiResult.Result.CONCEPT_EXISTS, "context album reference for concept "
-                        + contextAlbum.getKey().getId() + " already exists in task");
+                return new ApexApiResult(ApexApiResult.Result.CONCEPT_EXISTS,
+                    "context album reference for concept " + contextAlbum.getKey().getId() + " already exists in task");
             }
 
             task.getContextAlbumReferences().add(contextAlbum.getKey());
@@ -526,28 +520,28 @@ public class TaskFacade {
      * @return result of the operation
      */
     public ApexApiResult listTaskContextRef(final String name, final String version, final String contextAlbumName,
-            final String contextAlbumVersion) {
+        final String contextAlbumVersion) {
         try {
             final AxTask task = apexModel.getPolicyModel().getTasks().get(name, version);
             if (task == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + name + ':' + version + DOES_NOT_EXIST);
+                    CONCEPT + name + ':' + version + DOES_NOT_EXIST);
             }
 
             final ApexApiResult result = new ApexApiResult();
             boolean found = false;
             for (final AxArtifactKey albumKey : task.getContextAlbumReferences()) {
                 if ((contextAlbumName != null && !albumKey.getName().equals(contextAlbumName))
-                        || (contextAlbumVersion != null && !albumKey.getVersion().equals(contextAlbumVersion))) {
+                    || (contextAlbumVersion != null && !albumKey.getVersion().equals(contextAlbumVersion))) {
                     continue;
                 }
-                result.addMessage(new ApexModelStringWriter<AxArtifactKey>(false).writeString(albumKey,
-                        AxArtifactKey.class, jsonMode));
+                result.addMessage(
+                    new ApexModelStringWriter<AxArtifactKey>(false).writeString(albumKey, AxArtifactKey.class));
                 found = true;
             }
             if (!found) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + contextAlbumName + ':' + contextAlbumVersion + DOES_NOT_EXIST);
+                    CONCEPT + contextAlbumName + ':' + contextAlbumVersion + DOES_NOT_EXIST);
             }
             return result;
         } catch (final Exception e) {
@@ -567,19 +561,19 @@ public class TaskFacade {
      * @return result of the operation
      */
     public ApexApiResult deleteTaskContextRef(final String name, final String version, final String contextAlbumName,
-            final String contextAlbumVersion) {
+        final String contextAlbumVersion) {
         try {
             final AxTask task = apexModel.getPolicyModel().getTasks().get(name, version);
             if (task == null) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + name + ':' + version + DOES_NOT_EXIST);
+                    CONCEPT + name + ':' + version + DOES_NOT_EXIST);
             }
 
             final Set<AxArtifactKey> deleteSet = new TreeSet<>();
 
             for (final AxArtifactKey albumKey : task.getContextAlbumReferences()) {
                 if ((contextAlbumName != null && !albumKey.getName().equals(contextAlbumName))
-                        || (contextAlbumVersion != null && !albumKey.getVersion().equals(contextAlbumVersion))) {
+                    || (contextAlbumVersion != null && !albumKey.getVersion().equals(contextAlbumVersion))) {
                     continue;
                 }
                 deleteSet.add(albumKey);
@@ -587,13 +581,13 @@ public class TaskFacade {
 
             if (deleteSet.isEmpty()) {
                 return new ApexApiResult(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST,
-                        CONCEPT + contextAlbumName + ':' + contextAlbumVersion + DOES_NOT_EXIST);
+                    CONCEPT + contextAlbumName + ':' + contextAlbumVersion + DOES_NOT_EXIST);
             }
             final ApexApiResult result = new ApexApiResult();
             for (final AxArtifactKey keyToDelete : deleteSet) {
                 task.getContextAlbumReferences().remove(keyToDelete);
-                result.addMessage(new ApexModelStringWriter<AxArtifactKey>(false).writeString(keyToDelete,
-                        AxArtifactKey.class, jsonMode));
+                result.addMessage(
+                    new ApexModelStringWriter<AxArtifactKey>(false).writeString(keyToDelete, AxArtifactKey.class));
             }
             return result;
         } catch (final Exception e) {
index e6ed351..5ce6b67 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2020 Nordix Foundation.
+ *  Modifications Copyright (C) 2020,2022 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -27,12 +27,13 @@ import org.junit.Test;
 
 /**
  * Context album for API tests.
+ *
  * @author Liam Fallon (liam.fallon@ericsson.com)
  */
 public class ApexEditorApiContextAlbumTest {
     @Test
     public void testContextAlbumCrud() {
-        final ApexModel apexModel = new ApexModelFactory().createApexModel(null, false);
+        final ApexModel apexModel = new ApexModelFactory().createApexModel(null);
 
         ApexApiResult result = apexModel.validateContextAlbum(null, null);
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
@@ -44,13 +45,13 @@ public class ApexEditorApiContextAlbumTest {
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
 
         result = apexModel.createContextAlbum("MyMap002", "0.0.2", "APPLICATION", "true", "MapType", "0.0.1",
-                "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002");
+            "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createContextAlbum("MyMap012", "0.1.2", "ZOOBY", "false", "MapType", "0.0.1",
-                "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 012");
+            "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 012");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createContextAlbum("MyMap012", "0.1.4", "UNDEFINED", null, "MapType", "0.0.1",
-                "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 014");
+            "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 014");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createContextAlbum("MyMap012", null, null, null, null, null, null, null);
         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
@@ -73,16 +74,16 @@ public class ApexEditorApiContextAlbumTest {
         result = apexModel.createContextAlbum("MyMap012", null, "EPHEMERAL", "false", "MapType", null, null, null);
         assertEquals(ApexApiResult.Result.CONCEPT_EXISTS, result.getResult());
         result = apexModel.createContextAlbum("MyMap002", "0.0.2", "APPLICATION", "true", "MapType", null,
-                "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002");
+            "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002");
         assertEquals(ApexApiResult.Result.CONCEPT_EXISTS, result.getResult());
         result = apexModel.createContextAlbum("MyMap011", "0.1.2", "APPLICATION", "true", "MapType", "0.0.1",
-                "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002");
+            "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
 
         result = apexModel.deleteContextAlbum("MyMap012", "0.1.2");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createContextAlbum("MyMap012", "0.1.2", "ZOOBY", "false", "MapType", "0.0.1",
-                "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 012");
+            "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 012");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
 
         result = apexModel.validateContextAlbum(null, null);
@@ -95,7 +96,7 @@ public class ApexEditorApiContextAlbumTest {
         result = apexModel.updateContextAlbum("MyMap002", "0.0.2", "ZOOBY", "true", null, null, null, null);
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.updateContextAlbum("MyMap002", "0.0.2", null, null, null, null,
-                "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002");
+            "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.updateContextAlbum("MyMap012", null, null, null, null, null, null, null);
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
@@ -114,13 +115,13 @@ public class ApexEditorApiContextAlbumTest {
         result = apexModel.updateContextAlbum("MyMap012", null, "APPLICATION", "false", "String", null, null, null);
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
         result = apexModel.updateContextAlbum("MyMap012", null, "APPLICATION", "false", "StringType", "0.0.2", null,
-                null);
+            null);
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
         result = apexModel.updateContextAlbum("MyMap012", null, "APPLICATION", "false", "StringType", "0.0.1", null,
-                null);
+            null);
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.updateContextAlbum("MyMap012", null, "APPLICATION", "Hello", "StringType", "0.0.1", null,
-                null);
+            null);
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
 
         result = apexModel.listContextAlbum("@£%%$", null);
@@ -159,6 +160,7 @@ public class ApexEditorApiContextAlbumTest {
 
         result = apexModel.deleteContextAlbum("MyMap012", null);
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
+        assertEquals(2, result.getMessages().size());
 
         result = apexModel.listContextAlbum("MyMap012", null);
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
index 04605f4..20310a2 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2020 Nordix Foundation.
+ *  Modifications Copyright (C) 2020,2022 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -32,7 +32,7 @@ import org.junit.Test;
 public class ApexEditorApiContextSchemaTest {
     @Test
     public void testContextSchemaCrud() {
-        final ApexModel apexModel = new ApexModelFactory().createApexModel(null, false);
+        final ApexModel apexModel = new ApexModelFactory().createApexModel(null);
 
         ApexApiResult result = apexModel.validateContextSchemas(null, null);
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
index 775fcc1..ac9265e 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2020 Nordix Foundation.
+ *  Modifications Copyright (C) 2020,2022 Nordix Foundation.
  *  Modifications Copyright (C) 2022 Bell Canada. All rights reserved.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
@@ -28,12 +28,13 @@ import org.junit.Test;
 
 /**
  * Test events for API tests.
+ *
  * @author Liam Fallon (liam.fallon@ericsson.com)
  */
 public class ApexEditorApiEventTest {
     @Test
     public void testEventCrud() {
-        final ApexModel apexModel = new ApexModelFactory().createApexModel(null, false);
+        final ApexModel apexModel = new ApexModelFactory().createApexModel(null);
 
         ApexApiResult result = apexModel.validateEvent(null, null);
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
@@ -45,41 +46,41 @@ public class ApexEditorApiEventTest {
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
 
         result = apexModel.createEvent("MyEvent002", "0.0.2", "My Namespace", "My Source", "my target",
-                "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002", null);
+            "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002", null);
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createEvent("MyEvent012", "0.1.2", "My Namespace", "My Source", "my target",
-                "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 012", null);
+            "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 012", null);
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createEvent("MyEvent012", "0.1.4", "My Namespace", "My Source", "my target",
-                "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 014", null);
+            "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 014", null);
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createEvent("MyEvent012", null, null, null, null, null, null, null);
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createEvent("MyEvent012", null, null, null, null, null, null, null);
         assertEquals(ApexApiResult.Result.CONCEPT_EXISTS, result.getResult());
         result = apexModel.createEvent("MyEvent002", "0.0.2", "My Namespace", "My Source", "my target",
-                "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002", null);
+            "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002", null);
         assertEquals(ApexApiResult.Result.CONCEPT_EXISTS, result.getResult());
         result = apexModel.createEvent("@£$%^", "0.2.5", "My Namespace", "My Source", "my target",
-                "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002", null);
+            "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002", null);
         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
 
         result = apexModel.deleteEvent("MyEvent012", "0.1.4");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createEvent("MyEvent012", "0.1.4", "My Namespace", "My Source", "my target",
-                "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 014", null);
+            "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 014", null);
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
 
         result = apexModel.validateEvent(null, null);
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
 
-        result = apexModel.updateContextSchema(null, null, null, null, null, null);
+        result = apexModel.updateEvent(null, null, null, null, null, null, null, null);
         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
-        result = apexModel.updateEvent("MyEvent012", "0.1.2", "Another Namespace", null, "Another target", null, null,
-                null);
+        result =
+            apexModel.updateEvent("MyEvent012", "0.1.2", "Another Namespace", null, "Another target", null, null, null);
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.updateEvent("MyEvent002", "0.0.2", "My Namespace", "My Source", "my target",
-                "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002", null);
+            "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002", null);
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.updateEvent("MyEvent012", null, null, null, null, null, null, null);
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
@@ -140,6 +141,8 @@ public class ApexEditorApiEventTest {
         result = apexModel.createEventPar("MyEvent002", "0.0.2", "NewPar00", null, null, true);
         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
 
+        result = apexModel.createContextSchema("eventContextItem0", "0.0.1", "Java", "java.lang.Integer",
+            "1fa2e430-f2b2-11e6-bc64-92361f002673", "A further updated description of hola");
         result = apexModel.createEventPar("MyEvent002", "0.0.2", "NewPar00", "eventContextItem0", null, false);
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createEventPar("MyEvent002", "0.0.2", "NewPar00", "eventContextItem0", null, true);
@@ -196,4 +199,4 @@ public class ApexEditorApiEventTest {
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         assertEquals(0, result.getMessages().size());
     }
-}
\ No newline at end of file
+}
index caa25e4..2519b8c 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2020 Nordix Foundation.
+ *  Modifications Copyright (C) 2020,2022 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -33,7 +33,7 @@ public class ApexEditorApiKeyInfoTest {
 
     @Test
     public void testKeyInfoCrud() {
-        final ApexModel apexModel = new ApexModelFactory().createApexModel(null, false);
+        final ApexModel apexModel = new ApexModelFactory().createApexModel(null);
 
         ApexApiResult result = apexModel.validateKeyInformation(null, null);
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
index 3e78921..0a4d722 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2020 Nordix Foundation.
+ *  Modifications Copyright (C) 2020,2022 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -33,7 +33,7 @@ import org.junit.Test;
 public class ApexEditorApiPolicyTest {
     @Test
     public void testMyTestPolicyCrud() {
-        final ApexModel apexModel = new ApexModelFactory().createApexModel(null, false);
+        final ApexModel apexModel = new ApexModelFactory().createApexModel(null);
 
         ApexApiResult result = apexModel.validatePolicy(null, null);
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
@@ -45,10 +45,10 @@ public class ApexEditorApiPolicyTest {
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
 
         result = apexModel.createPolicy("MyPolicy002", "0.0.2", "SomeTemplate", "AState",
-                "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002");
+            "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createPolicy("MyPolicy002", "0.0.2", "SomeTemplate", "AState",
-                "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002");
+            "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002");
         assertEquals(ApexApiResult.Result.CONCEPT_EXISTS, result.getResult());
         result = apexModel.createPolicy("MyPolicy012", null, null, null, null, null);
         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
@@ -59,19 +59,19 @@ public class ApexEditorApiPolicyTest {
         result = apexModel.createPolicy("MyPolicy012", null, "SomeTemplate", "AState", null, null);
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createPolicy("MyPolicy002", "0.0.2", "SomeTemplate", "AState",
-                "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002");
+            "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002");
         assertEquals(ApexApiResult.Result.CONCEPT_EXISTS, result.getResult());
         result = apexModel.createPolicy("MyPolicy012", "0.1.2", "SomeTemplate", "AState",
-                "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002");
+            "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createPolicy("MyTestPolicy", "0.0.1", "SomeTemplate", "TestState",
-                "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002");
+            "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
 
         result = apexModel.deletePolicy("MyPolicy002", "0.0.2");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createPolicy("MyPolicy002", "0.0.2", "SomeTemplate", "AState",
-                "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002");
+            "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
 
         result = apexModel.validatePolicy(null, null);
@@ -84,7 +84,7 @@ public class ApexEditorApiPolicyTest {
         result = apexModel.updatePolicy("MyPolicy002", "0.0.1", null, null, null, null);
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
         result = apexModel.updatePolicy("MyPolicy002", "0.0.2", "SomeOtherTemplate", "BState",
-                "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002");
+            "1fa2e430-f2b2-11e6-bc64-92361f002700", "A description of 002");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.updatePolicy("MyPolicy012", null, "SomeOtherTemplate", null, null, null);
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
@@ -137,7 +137,6 @@ public class ApexEditorApiPolicyTest {
         result = apexModel.deletePolicy("MyPolicy012", null);
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         assertEquals(2, result.getMessages().size());
-
         result = apexModel.createPolicyState(null, null, null, null, null, null, null);
         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
         result = apexModel.createPolicyState("MyPolicy123", null, null, null, null, null, null);
@@ -255,15 +254,15 @@ public class ApexEditorApiPolicyTest {
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
 
         result = apexModel.createPolicyState("MyTestPolicy", "0.0.1", "TestState1", "inEvent", "0.0.1", "task",
-                "0.0.1");
+            "0.0.1");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
 
         result = apexModel.createPolicyState("MyTestPolicy", "0.0.1", "TestState2", "outEvent0", "0.0.1", "task",
-                "0.0.1");
+            "0.0.1");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
 
         result = apexModel.createPolicyState("MyTestPolicy", "0.0.1", "TestState3", "outEvent1", "0.0.1", "task",
-                "0.0.1");
+            "0.0.1");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
 
         result = apexModel.createPolicyStateTaskSelectionLogic(null, null, null, null, null);
@@ -279,29 +278,29 @@ public class ApexEditorApiPolicyTest {
         result = apexModel.createPolicyStateTaskSelectionLogic("MyTestPolicy", "0.0.1", "TestState1", "NewTSL00", null);
         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
         result = apexModel.createPolicyStateTaskSelectionLogic("MyTestPolicy", "0.0.1", "TestState1", "UNDEFINED",
-                "Some Policy Logic");
+            "Some Policy Logic");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createPolicyStateTaskSelectionLogic("MyTestPolicy", "0.0.1", "TestState1", "MVEL",
-                "Some Policy Logic");
+            "Some Policy Logic");
         assertEquals(ApexApiResult.Result.CONCEPT_EXISTS, result.getResult());
 
         result = apexModel.deletePolicyStateTaskSelectionLogic("MyTestPolicy", "0.0.1", "TestState1");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createPolicyStateTaskSelectionLogic("MyTestPolicy", "0.0.1", "TestState1", "JAVA",
-                "Some Policy Logic");
+            "Some Policy Logic");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createPolicyStateTaskSelectionLogic("MyTestPolicy", "0.0.1", "TestState1", "JYTHON",
-                "Some Policy Logic");
+            "Some Policy Logic");
         assertEquals(ApexApiResult.Result.CONCEPT_EXISTS, result.getResult());
         result = apexModel.deletePolicyStateTaskSelectionLogic("MyTestPolicy", "0.0.1", "TestState1");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createPolicyStateTaskSelectionLogic("MyTestPolicy", null, "TestState1", "JAVASCRIPT",
-                "Some Policy Logic");
+            "Some Policy Logic");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.deletePolicyStateTaskSelectionLogic("MyTestPolicy", "0.0.1", "TestState1");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createPolicyStateTaskSelectionLogic("MyTestPolicy", null, "TestState1", "JRUBY",
-                "Some Policy Logic");
+            "Some Policy Logic");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
 
         result = apexModel.updatePolicyStateTaskSelectionLogic(null, null, null, null, null);
@@ -321,15 +320,15 @@ public class ApexEditorApiPolicyTest {
         result = apexModel.updatePolicyStateTaskSelectionLogic("MyTestPolicy", "0.0.1", "NonExistantState", null, null);
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
         result = apexModel.updatePolicyStateTaskSelectionLogic("MyTestPolicy", "0.0.1", "TestState1", "",
-                "Some Other Policy Logic");
+            "Some Other Policy Logic");
         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
         result = apexModel.updatePolicyStateTaskSelectionLogic("MyTestPolicy", "0.0.1", "TestState1", "MVEL",
-                "Some Other Policy Logic");
+            "Some Other Policy Logic");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.updatePolicyStateTaskSelectionLogic("MyPolicy012", null, "TestState1", null, null);
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
         result = apexModel.updatePolicyStateTaskSelectionLogic("MyTestPolicy", null, "TestState1", null,
-                "Some Other Policy Logic");
+            "Some Other Policy Logic");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.updatePolicyStateTaskSelectionLogic("MyTestPolicy", null, "TestState1", null, null);
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
@@ -373,13 +372,13 @@ public class ApexEditorApiPolicyTest {
         result = apexModel.deletePolicyStateTaskSelectionLogic("MyTestPolicy", "0.0.1", "TestState1");
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
         result = apexModel.updatePolicyStateTaskSelectionLogic("MyTestPolicy", null, "TestState1", null,
-                "Some Other Policy Logic");
+            "Some Other Policy Logic");
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
         result = apexModel.listPolicyStateTaskSelectionLogic("MyTestPolicy", null, "TestState1");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         assertEquals(1, result.getMessages().size());
         result = apexModel.createPolicyStateTaskSelectionLogic("MyTestPolicy", null, "TestState1", "JRUBY",
-                "Some Policy Logic");
+            "Some Policy Logic");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.listPolicyStateTaskSelectionLogic("MyTestPolicy", null, "TestState1");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
@@ -397,37 +396,37 @@ public class ApexEditorApiPolicyTest {
         result = apexModel.createPolicyStateOutput("MyTestPolicy", null, "SomeState", "SomeOutput", null, null, null);
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
         result = apexModel.createPolicyStateOutput("MyTestPolicy", "1.2.3", "TestState1", "SomeOutput", null, null,
-                null);
+            null);
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
         result = apexModel.createPolicyStateOutput("MyTestPolicy", "0.0.1", "TestState1", "SomeOutput", null, null,
-                null);
+            null);
         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
         result = apexModel.createPolicyStateOutput("MyTestPolicy", "0.0.1", "TestState1", "SomeOutput",
-                "SomeDummyEvent", null, null);
+            "SomeDummyEvent", null, null);
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
         result = apexModel.createPolicyStateOutput("MyTestPolicy", "0.0.1", "TestState1", "SomeOutput", "inEvent",
-                "1.2.3", null);
+            "1.2.3", null);
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
         result = apexModel.createPolicyStateOutput("MyTestPolicy", "0.0.1", "TestState1", "SomeOutput", "inEvent",
-                "0.0.1", "SomeDummyNextState");
+            "0.0.1", "SomeDummyNextState");
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
         result = apexModel.createPolicyStateOutput("MyTestPolicy", "0.0.1", "TestState1", "SomeOutput", "inEvent",
-                "0.0.1", null);
+            "0.0.1", null);
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createPolicyStateOutput("MyTestPolicy", "0.0.1", "TestState1", "SomeOtherOutput", "inEvent",
-                "0.0.1", "TestState1");
+            "0.0.1", "TestState1");
         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
         result = apexModel.createPolicyStateOutput("MyTestPolicy", "0.0.1", "TestState1", "SomeOtherOutput", "inEvent",
-                "0.0.1", "TestState2");
+            "0.0.1", "TestState2");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createPolicyStateOutput("MyTestPolicy", "0.0.1", "TestState1", "SomeOtherOutput", "inEvent",
-                "0.0.1", "TestState2");
+            "0.0.1", "TestState2");
         assertEquals(ApexApiResult.Result.CONCEPT_EXISTS, result.getResult());
         result = apexModel.createPolicyStateOutput("MyTestPolicy", "0.0.1", "TestState2", "AnotherOtherOutput",
-                "outEvent0", "0.0.1", "TestState3");
+            "outEvent0", "0.0.1", "TestState3");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createPolicyStateOutput("MyTestPolicy", "0.0.1", "TestState2", "YetAnotherOtherOutput",
-                "outEvent0", "0.0.1", "TestState3");
+            "outEvent0", "0.0.1", "TestState3");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
 
         result = apexModel.listPolicyStateOutput(null, null, null, null);
@@ -495,19 +494,19 @@ public class ApexEditorApiPolicyTest {
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
 
         result = apexModel.createPolicyStateOutput("MyTestPolicy", "0.0.1", "TestState1", "SomeOutput", "inEvent",
-                "0.0.1", null);
+            "0.0.1", null);
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createPolicyStateOutput("MyTestPolicy", "0.0.1", "TestState1", "SomeOtherOutput", "inEvent",
-                "0.0.1", "TestState1");
+            "0.0.1", "TestState1");
         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
         result = apexModel.createPolicyStateOutput("MyTestPolicy", "0.0.1", "TestState1", "SomeOtherOutput", "inEvent",
-                "0.0.1", "TestState2");
+            "0.0.1", "TestState2");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createPolicyStateOutput("MyTestPolicy", "0.0.1", "TestState2", "AnotherOtherOutput",
-                "outEvent0", "0.0.1", "TestState3");
+            "outEvent0", "0.0.1", "TestState3");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createPolicyStateOutput("MyTestPolicy", "0.0.1", "TestState2", "YetAnotherOtherOutput",
-                "outEvent0", "0.0.1", "TestState3");
+            "outEvent0", "0.0.1", "TestState3");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
 
         result = apexModel.createPolicyStateFinalizerLogic(null, null, null, null, null, null);
@@ -519,34 +518,34 @@ public class ApexEditorApiPolicyTest {
         result = apexModel.createPolicyStateFinalizerLogic("MyTestPolicy", null, "SomeState", "SFLName01", null, null);
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
         result = apexModel.createPolicyStateFinalizerLogic("MyTestPolicy", "1.2.3", "TestState1", "SFLName01", null,
-                null);
+            null);
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
         result = apexModel.createPolicyStateFinalizerLogic("MyTestPolicy", "0.0.1", "TestState1", "SFLName01", null,
-                null);
+            null);
         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
         result = apexModel.createPolicyStateFinalizerLogic("MyTestPolicy", "0.0.1", "TestState1", "SFLName01",
-                "NewTSL00", null);
+            "NewTSL00", null);
         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
         result = apexModel.createPolicyStateFinalizerLogic("MyTestPolicy", "0.0.1", "TestState1", "SFLName02",
-                "UNDEFINED", "Some Policy Logic");
+            "UNDEFINED", "Some Policy Logic");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createPolicyStateFinalizerLogic("MyTestPolicy", "0.0.1", "TestState1", "SFLName03", "MVEL",
-                "Some Policy Logic");
+            "Some Policy Logic");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createPolicyStateFinalizerLogic("MyTestPolicy", "0.0.1", "TestState1", "SFLName03", "MVEL",
-                "Some Policy Logic");
+            "Some Policy Logic");
         assertEquals(ApexApiResult.Result.CONCEPT_EXISTS, result.getResult());
         result = apexModel.createPolicyStateFinalizerLogic("MyTestPolicy", "0.0.1", "TestState1", "SFLName04", "JAVA",
-                "Some Policy Logic");
+            "Some Policy Logic");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createPolicyStateFinalizerLogic("MyTestPolicy", "0.0.1", "TestState1", "SFLName05", "JYTHON",
-                "Some Policy Logic");
+            "Some Policy Logic");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createPolicyStateFinalizerLogic("MyTestPolicy", null, "TestState1", "SFLName06",
-                "JAVASCRIPT", "Some Policy Logic");
+            "JAVASCRIPT", "Some Policy Logic");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createPolicyStateFinalizerLogic("MyTestPolicy", null, "TestState1", "SFLName07", "JRUBY",
-                "Some Policy Logic");
+            "Some Policy Logic");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
 
         result = apexModel.updatePolicyStateFinalizerLogic(null, null, null, null, null, null);
@@ -556,37 +555,37 @@ public class ApexEditorApiPolicyTest {
         result = apexModel.updatePolicyStateFinalizerLogic("MyTestPolicy", null, "TestState1", null, null, null);
         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
         result = apexModel.updatePolicyStateFinalizerLogic("MyTestPolicy", null, "TestState99", "SomeSFLName", null,
-                null);
+            null);
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
         result = apexModel.updatePolicyStateFinalizerLogic("MyTestPolicy2", null, "TestState1", "SomeSFLName", null,
-                null);
+            null);
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
         result = apexModel.updatePolicyStateFinalizerLogic("MyTestPolicy1", "0.0.2", "TestState1", "SomeSFLName", null,
-                null);
+            null);
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
         result = apexModel.updatePolicyStateFinalizerLogic("MyTestPolicy", "0.0.1", "TestState1", "NonEistantSFL", null,
-                null);
+            null);
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
         result = apexModel.updatePolicyStateFinalizerLogic("MyTestPolicy", "0.0.1", "TestState1", "SFLName06", null,
-                null);
+            null);
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.updatePolicyStateFinalizerLogic("MyTestPolicy", "0.0.1", "TestState1", "SFLName06", "",
-                "Some Other Policy Logic");
+            "Some Other Policy Logic");
         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
         result = apexModel.updatePolicyStateFinalizerLogic("MyTestPolicy", "0.0.1", "TestState1", "SFLName06", "MVEL",
-                "Some Other Policy Logic");
+            "Some Other Policy Logic");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.updatePolicyStateFinalizerLogic("MyPolicy012", null, "TestState1", "SFLName06", null, null);
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
         result = apexModel.updatePolicyStateFinalizerLogic("MyTestPolicy", null, "TestState1", "SFLName06", null,
-                "Some Other Policy Logic");
+            "Some Other Policy Logic");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.updatePolicyStateFinalizerLogic("MyTestPolicy", null, "TestState1", "SFLName06", null, null);
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.updatePolicyStateFinalizerLogic("MyPolicy015", null, "TestState1", "SFLName06", null, null);
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
         result = apexModel.updatePolicyStateFinalizerLogic("MyPolicy014", "0.1.5", "TestState1", "SFLName06", null,
-                null);
+            null);
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
 
         result = apexModel.listPolicyStateFinalizerLogic(null, null, null, null);
@@ -669,22 +668,22 @@ public class ApexEditorApiPolicyTest {
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
 
         result = apexModel.createPolicyStateFinalizerLogic("MyTestPolicy", "0.0.1", "TestState1", "SFLName02",
-                "UNDEFINED", "Some Policy Logic");
+            "UNDEFINED", "Some Policy Logic");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createPolicyStateFinalizerLogic("MyTestPolicy", "0.0.1", "TestState1", "SFLName03", "MVEL",
-                "Some Policy Logic");
+            "Some Policy Logic");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createPolicyStateFinalizerLogic("MyTestPolicy", "0.0.1", "TestState1", "SFLName04", "JAVA",
-                "Some Policy Logic");
+            "Some Policy Logic");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createPolicyStateFinalizerLogic("MyTestPolicy", "0.0.1", "TestState1", "SFLName05", "JYTHON",
-                "Some Policy Logic");
+            "Some Policy Logic");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createPolicyStateFinalizerLogic("MyTestPolicy", null, "TestState1", "SFLName06",
-                "JAVASCRIPT", "Some Policy Logic");
+            "JAVASCRIPT", "Some Policy Logic");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createPolicyStateFinalizerLogic("MyTestPolicy", null, "TestState1", "SFLName07", "JRUBY",
-                "Some Policy Logic");
+            "Some Policy Logic");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
 
         result = apexModel.createTask("TestTask0", null, null, null);
@@ -705,81 +704,81 @@ public class ApexEditorApiPolicyTest {
         result = apexModel.createPolicyStateTaskRef("MyTestPolicy", null, "SomeState", null, null, null, null, null);
         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
         result = apexModel.createPolicyStateTaskRef("MyTestPolicy", null, "SomeState", null, null, null, null,
-                "DummyOutput");
+            "DummyOutput");
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
         result = apexModel.createPolicyStateTaskRef("MyTestPolicy", "1.2.3", "SomeState", null, null, null, null,
-                "DummyOutput");
+            "DummyOutput");
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
         result = apexModel.createPolicyStateTaskRef("AnyOldPolicy", "1.2.3", "SomeState", null, null, null, null,
-                "DummyOutput");
+            "DummyOutput");
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
         result = apexModel.createPolicyStateTaskRef("MyTestPolicy", "0.0.1", "TestState1", "SomeTaskLocalName", null,
-                null, null, "DummyOutput");
+            null, null, "DummyOutput");
         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
         result = apexModel.createPolicyStateTaskRef("MyTestPolicy", "0.0.1", "TestState1", "SomeTaskLocalName",
-                "SomeTask", "Zooby|", null, "DummyOutput");
+            "SomeTask", "Zooby|", null, "DummyOutput");
         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
         result = apexModel.createPolicyStateTaskRef("MyTestPolicy", "0.0.1", "TestState1", "SomeTaskLocalName",
-                "SomeTask", "0.0.1", null, "DummyOutput");
+            "SomeTask", "0.0.1", null, "DummyOutput");
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
         result = apexModel.createPolicyStateTaskRef("MyTestPolicy", "0.0.1", "TestState1", "SomeTaskLocalName", "task",
-                "0.0.1", null, "DummyOutput");
+            "0.0.1", null, "DummyOutput");
         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
         result = apexModel.createPolicyStateTaskRef("MyTestPolicy", "0.0.1", "TestState1", "SomeTaskLocalName", "task",
-                "0.0.1", "Some Policy Logic", "DummyOutput");
+            "0.0.1", "Some Policy Logic", "DummyOutput");
         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
         result = apexModel.createPolicyStateTaskRef("MyTestPolicy", "0.0.1", "TestState1", "SomeTaskLocalName", "task",
-                "0.0.1", "DIRECT", "DummyOutput");
+            "0.0.1", "DIRECT", "DummyOutput");
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
         result = apexModel.createPolicyStateTaskRef("MyTestPolicy", "0.0.1", "TestState1", "SomeTaskLocalName", "task",
-                "0.0.1", "LOGIC", "DummyOutput");
+            "0.0.1", "LOGIC", "DummyOutput");
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
         result = apexModel.createPolicyStateTaskRef("MyTestPolicy", null, "TestState1", "SomeTaskLocalName", "task",
-                "0.0.1", "DIRECT", "SFLName07");
+            "0.0.1", "DIRECT", "SFLName07");
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
         result = apexModel.createPolicyStateTaskRef("MyTestPolicy", null, "TestState1", "SomeTaskLocalName", "task",
-                "0.0.1", "LOGIC", "SomeOutput");
+            "0.0.1", "LOGIC", "SomeOutput");
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
         result = apexModel.createPolicyStateTaskRef("MyTestPolicy", null, "TestState1", "SomeTaskLocalName", "task",
-                "0.0.1", "DIRECT", "SomeOutput");
+            "0.0.1", "DIRECT", "SomeOutput");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createPolicyStateTaskRef("MyTestPolicy", null, "TestState1", "SomeTaskLocalName",
-                "NonExistantTask", "0.0.1", "DIRECT", "SomeOutput");
+            "NonExistantTask", "0.0.1", "DIRECT", "SomeOutput");
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
         result = apexModel.createPolicyStateTaskRef("MyTestPolicy", null, "TestState1", "SomeTaskLocalName", "task",
-                "0.0.1", "LOGIC", "SFLName07");
+            "0.0.1", "LOGIC", "SFLName07");
         assertEquals(ApexApiResult.Result.CONCEPT_EXISTS, result.getResult());
         result = apexModel.createPolicyStateTaskRef("MyTestPolicy", null, "TestState1", "SomeTaskLocalName",
-                "TestTask0", "0.0.1", "LOGIC", "SFLName07");
+            "TestTask0", "0.0.1", "LOGIC", "SFLName07");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createPolicyStateTaskRef("MyTestPolicy", null, "TestState1", "SomeTaskLocalName",
-                "TestTask1", "0.0.1", "DIRECT", "SomeOtherOutput");
+            "TestTask1", "0.0.1", "DIRECT", "SomeOtherOutput");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createPolicyStateTaskRef("MyTestPolicy", null, "TestState1", "SomeTaskLocalName",
-                "TestTask2", "0.0.1", "LOGIC", "SFLName07");
+            "TestTask2", "0.0.1", "LOGIC", "SFLName07");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createPolicyStateTaskRef("MyTestPolicy", null, "TestState1", "SomeTaskLocalName",
-                "TestTask3", "0.0.1", "DIRECT", "SomeOtherOutput");
+            "TestTask3", "0.0.1", "DIRECT", "SomeOtherOutput");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createPolicyStateTaskRef("MyTestPolicy", null, "TestState1", null, "TestTask4", "0.0.1",
-                "LOGIC", "SFLName07");
+            "LOGIC", "SFLName07");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createPolicyStateTaskRef("MyTestPolicy", null, "TestState1", null, "TestTask4", "0.0.1",
-                "LOGIC", "SFLName07");
+            "LOGIC", "SFLName07");
         assertEquals(ApexApiResult.Result.CONCEPT_EXISTS, result.getResult());
         result = apexModel.deletePolicyStateTaskRef("MyTestPolicy", null, "TestState1", "TestTask4", "0.0.1");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createPolicyStateTaskRef("MyTestPolicy", null, "TestState1", "SomeTaskLocalName",
-                "TestTask4", "0.0.1", "FUNKY", "SFLName07");
+            "TestTask4", "0.0.1", "FUNKY", "SFLName07");
         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
         result = apexModel.createPolicyStateTaskRef("MyTestPolicy", null, "TestState1", "SomeTaskLocalName",
-                "TestTask4", "0.0.1", "UNDEFINED", "SFLName07");
+            "TestTask4", "0.0.1", "UNDEFINED", "SFLName07");
         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
         result = apexModel.createPolicyStateTaskRef("MyTestPolicy", null, "TestState1", "SomeTaskLocalName",
-                "TestTask4", "0.0.1", "LOGIC", "SFLName07");
+            "TestTask4", "0.0.1", "LOGIC", "SFLName07");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createPolicyStateTaskRef("MyTestPolicy", null, "TestState1", null, "TestTask0", "0.0.1",
-                "LOGIC", "SFLName07");
+            "LOGIC", "SFLName07");
         assertEquals(ApexApiResult.Result.CONCEPT_EXISTS, result.getResult());
 
         result = apexModel.listPolicyStateTaskRef(null, null, null, null, null);
index 026f67c..15e53f9 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2020 Nordix Foundation.
+ *  Modifications Copyright (C) 2020,2022 Nordix Foundation.
  *  Modifications Copyright (C) 2021 Bell Canada. All rights reserved.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
@@ -29,12 +29,13 @@ import org.onap.policy.apex.model.modelapi.impl.ApexModelImpl;
 
 /**
  * Test tasks for API tests.
+ *
  * @author Liam Fallon (liam.fallon@ericsson.com)
  */
 public class ApexEditorApiTaskTest {
     @Test
     public void testTaskCrud() {
-        final ApexModel apexModel = new ApexModelFactory().createApexModel(null, false);
+        final ApexModel apexModel = new ApexModelFactory().createApexModel(null);
 
         ApexApiResult result = apexModel.validateTask(null, null);
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
@@ -46,13 +47,13 @@ public class ApexEditorApiTaskTest {
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
 
         result = apexModel.createTask("@^^$^^$", "0.0.2", "1fa2e430-f2b2-11e6-bc64-92361f002700",
-                "A description of 002");
+            "A description of 002");
         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
         result = apexModel.createTask("MyTask002", "0.0.2", "1fa2e430-f2b2-11e6-bc64-92361f002700",
-                "A description of 002");
+            "A description of 002");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createTask("MyTask002", "0.0.2", "1fa2e430-f2b2-11e6-bc64-92361f002700",
-                "A description of 002");
+            "A description of 002");
         assertEquals(ApexApiResult.Result.CONCEPT_EXISTS, result.getResult());
         result = apexModel.createTask("MyTask012", null, null, null);
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
@@ -60,16 +61,16 @@ public class ApexEditorApiTaskTest {
         assertEquals(ApexApiResult.Result.CONCEPT_EXISTS, result.getResult());
         result = apexModel.listTask(null, null);
         result = apexModel.createTask("MyTask002", "0.0.2", "1fa2e430-f2b2-11e6-bc64-92361f002700",
-                "A description of 002");
+            "A description of 002");
         assertEquals(ApexApiResult.Result.CONCEPT_EXISTS, result.getResult());
         result = apexModel.createTask("MyTask012", "0.1.2", "1fa2e430-f2b2-11e6-bc64-92361f002700",
-                "A description of 002");
+            "A description of 002");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
 
         result = apexModel.deleteTask("MyTask002", "0.0.2");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.createTask("MyTask002", "0.0.2", "1fa2e430-f2b2-11e6-bc64-92361f002700",
-                "A description of 002");
+            "A description of 002");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
 
         result = apexModel.validateTask(null, null);
@@ -82,7 +83,7 @@ public class ApexEditorApiTaskTest {
         result = apexModel.updateTask("MyTask002", "0.0.1", null, null);
         assertEquals(ApexApiResult.Result.CONCEPT_DOES_NOT_EXIST, result.getResult());
         result = apexModel.updateTask("MyTask002", "0.0.2", "1fa2e430-f2b2-11e6-bc64-92361f002700",
-                "A description of 002");
+            "A description of 002");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         result = apexModel.updateTask("MyTask012", null, null, null);
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
index 132864b..f28d0e6 100644 (file)
@@ -59,7 +59,7 @@ public class ApexModelApiTest {
 
     @Test
     public void testApexModelLoadFromFile() {
-        final ApexModel apexModel = new ApexModelFactory().createApexModel(null, false);
+        final ApexModel apexModel = new ApexModelFactory().createApexModel(null);
 
         ApexApiResult result = apexModel.loadFromFile("src/main/resources/models/PolicyModel.json");
         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
@@ -70,7 +70,7 @@ public class ApexModelApiTest {
         result = apexModel.deleteModel();
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
 
-        result = apexModel.loadFromFile("src/test/resources/models/PolicyModel.xml");
+        result = apexModel.loadFromFile("src/test/resources/models/PolicyModel.json");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
 
         result = apexModel.deleteModel();
@@ -78,64 +78,64 @@ public class ApexModelApiTest {
 
         result = apexModel.loadFromFile("src/test/resources/models/PolicyModel.junk");
         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
-        assertEquals("format of input for Apex concept is neither JSON nor XML", result.getMessages().get(0));
+        assertEquals("Unable to unmarshal Apex concept", result.getMessages().get(0).trim());
     }
 
     @Test
     public void testApexModelSaveToFile() throws IOException {
-        final ApexModel apexModel = new ApexModelFactory().createApexModel(null, false);
+        final ApexModel apexModel = new ApexModelFactory().createApexModel(null);
 
         ApexApiResult result = apexModel.loadFromFile("src/test/resources/models/PolicyModel.json");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
 
         final File tempJsonModelFile = File.createTempFile("ApexModelTest", ".json");
-        result = apexModel.saveToFile(tempJsonModelFile.getCanonicalPath(), false);
+        result = apexModel.saveToFile(tempJsonModelFile.getPath());
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
 
-        final ApexModel jsonApexModel = new ApexModelFactory().createApexModel(null, false);
-        result = jsonApexModel.loadFromFile(tempJsonModelFile.getCanonicalPath());
+        final ApexModel jsonApexModel = new ApexModelFactory().createApexModel(null);
+        result = jsonApexModel.loadFromFile(tempJsonModelFile.getPath());
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
         tempJsonModelFile.delete();
 
-        final File tempXmlModelFile = File.createTempFile("ApexModelTest", ".xml");
-        result = apexModel.saveToFile(tempXmlModelFile.getCanonicalPath(), true);
+        final File tempModelFile = File.createTempFile("ApexModelTest", ".json");
+        result = apexModel.saveToFile(tempModelFile.getPath());
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
 
-        final ApexModel xmlApexModel = new ApexModelFactory().createApexModel(null, false);
-        result = xmlApexModel.loadFromFile(tempXmlModelFile.getCanonicalPath());
+        final ApexModel testApexModel = new ApexModelFactory().createApexModel(null);
+        result = testApexModel.loadFromFile(tempModelFile.getPath());
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
-        tempXmlModelFile.delete();
+        tempModelFile.delete();
     }
 
     @Test
     public void testApexModelUrl() throws IOException {
-        final ApexModel apexModel = new ApexModelFactory().createApexModel(null, false);
+        final ApexModel apexModel = new ApexModelFactory().createApexModel(null);
 
         assertThatThrownBy(() -> apexModel.readFromUrl(null)).isInstanceOf(IllegalArgumentException.class);
-        assertThatThrownBy(() -> apexModel.writeToUrl(null, true)).isInstanceOf(IllegalArgumentException.class);
+        assertThatThrownBy(() -> apexModel.writeToUrl(null)).isInstanceOf(IllegalArgumentException.class);
         ApexApiResult result = null;
         result = apexModel.readFromUrl("zooby/looby");
         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
 
-        result = apexModel.writeToUrl("zooby/looby", true);
+        result = apexModel.writeToUrl("zooby/looby");
         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
 
         result = apexModel.readFromUrl("zooby://zooby/looby");
         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
 
-        result = apexModel.writeToUrl("zooby://zooby/looby", false);
+        result = apexModel.writeToUrl("zooby://zooby/looby");
         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
 
-        final File tempJsonModelFile = File.createTempFile("ApexModelTest", ".json");
+        final File tempJsonModelFile = File.createTempFile("ApexModelTest", "json");
 
-        result = apexModel.saveToFile(tempJsonModelFile.getCanonicalPath(), false);
+        result = apexModel.saveToFile(tempJsonModelFile.getPath());
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
 
         final String tempFileUrlString = tempJsonModelFile.toURI().toString();
         result = apexModel.readFromUrl(tempFileUrlString);
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
 
-        result = apexModel.writeToUrl(tempFileUrlString, false);
+        result = apexModel.writeToUrl(tempFileUrlString);
         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
         assertEquals("protocol doesn't support output", result.getMessages().get(0));
 
@@ -144,7 +144,7 @@ public class ApexModelApiTest {
 
     @Test
     public void testApexModelMisc() throws IOException {
-        final ApexModelImpl apexModelImpl = (ApexModelImpl) new ApexModelFactory().createApexModel(null, false);
+        final ApexModelImpl apexModelImpl = (ApexModelImpl) new ApexModelFactory().createApexModel(null);
 
         ApexApiResult result = null;
 
@@ -174,10 +174,7 @@ public class ApexModelApiTest {
         apexModelImpl.deleteModel();
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
 
-        result = apexModelImpl.loadFromFile(tempFile.getCanonicalPath());
-        assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
-
-        result = apexModelImpl.saveToFile(null, false);
+        result = apexModelImpl.loadFromFile(tempFile.getPath());
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
 
         result = apexModelImpl.analyse();
@@ -186,7 +183,7 @@ public class ApexModelApiTest {
         result = apexModelImpl.validate();
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
 
-        result = apexModelImpl.compare(tempFile.getCanonicalPath(), true, true);
+        result = apexModelImpl.compare(tempFile.getPath(), true, true);
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
 
         result = apexModelImpl.compareWithString(modelString, true, true);
@@ -195,10 +192,10 @@ public class ApexModelApiTest {
         result = apexModelImpl.split("policy");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
 
-        result = apexModelImpl.split(tempFile.getCanonicalPath(), "policy");
+        result = apexModelImpl.split(tempFile.getPath(), "policy");
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
 
-        result = apexModelImpl.merge(tempFile.getCanonicalPath(), true);
+        result = apexModelImpl.merge(tempFile.getPath(), true);
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
 
         result = apexModelImpl.mergeWithString(modelString, true);
index a5f258e..d3b32b9 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2020 Nordix Foundation
+ *  Modifications Copyright (C) 2020,2022 Nordix Foundation
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -34,14 +34,14 @@ public class ModelFacadeTest {
 
     @Test
     public void testModelFacade() {
-        assertThatThrownBy(() -> new ModelFacade(null, null, false))
+        assertThatThrownBy(() -> new ModelFacade(null, null))
             .hasMessage("apexModel may not be null");
-        final ApexModel apexModel = new ApexModelFactory().createApexModel(null, false);
+        final ApexModel apexModel = new ApexModelFactory().createApexModel(null);
 
-        assertThatThrownBy(() -> new ModelFacade(apexModel, null, false))
+        assertThatThrownBy(() -> new ModelFacade(apexModel, null))
             .hasMessage("apexProperties may not be null");
         final Properties modelProperties = new Properties();
-        final ModelFacade mf = new ModelFacade(apexModel, modelProperties, false);
+        final ModelFacade mf = new ModelFacade(apexModel, modelProperties);
 
         ApexApiResult result = mf.createModel(null, null, null, null);
         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
@@ -91,7 +91,6 @@ public class ModelFacadeTest {
 
         result = mf.listModel();
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
-        assertEquals("AxPolicyModel:(AxPolicyModel:(key=AxArtifactKey:(n", result.getMessage().substring(0, 50));
 
         result = mf.deleteModel();
         assertEquals(ApexApiResult.Result.SUCCESS, result.getResult());
index e43e589..5bbc959 100644 (file)
@@ -41,14 +41,14 @@ public class ModelHandlerFacadeTest {
 
     @Test
     public void testModelHandlerFacade() throws IOException {
-        assertThatThrownBy(() -> new ModelHandlerFacade(null, null, false))
+        assertThatThrownBy(() -> new ModelHandlerFacade(null, null))
             .hasMessage("apexModel may not be null");
-        final ApexModel apexModel = new ApexModelFactory().createApexModel(null, false);
+        final ApexModel apexModel = new ApexModelFactory().createApexModel(null);
 
-        assertThatThrownBy(() -> new ModelHandlerFacade(apexModel, null, false))
+        assertThatThrownBy(() -> new ModelHandlerFacade(apexModel, null))
             .hasMessage("apexProperties may not be null");
         final Properties modelProperties = new Properties();
-        final ModelHandlerFacade mhf = new ModelHandlerFacade(apexModel, modelProperties, false);
+        final ModelHandlerFacade mhf = new ModelHandlerFacade(apexModel, modelProperties);
         assertNotNull(mhf);
 
         ApexApiResult result = mhf.loadFromFile("src/test/resources/models/PolicyModel.json");
@@ -83,7 +83,7 @@ public class ModelHandlerFacadeTest {
         final File tempFile = File.createTempFile("ApexModel", "json");
         tempFile.deleteOnExit();
 
-        result = mhf.writeToUrl("File:///" + tempFile.getCanonicalPath(), false);
+        result = mhf.writeToUrl("File:///" + tempFile.getCanonicalPath());
         assertEquals(ApexApiResult.Result.FAILED, result.getResult());
 
         result = mhf.validate();
diff --git a/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/RealModelTest.java b/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/RealModelTest.java
new file mode 100644 (file)
index 0000000..2a29f52
--- /dev/null
@@ -0,0 +1,46 @@
+/*-
+ * ============LICENSE_START=======================================================
+ *  Copyright (C) 2022 Nordix Foundation.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.policy.apex.model.modelapi;
+
+import static org.junit.Assert.assertTrue;
+
+import com.google.gson.Gson;
+import com.google.gson.GsonBuilder;
+import java.util.Map;
+import org.junit.Test;
+import org.onap.policy.apex.model.basicmodel.concepts.AxValidationResult;
+import org.onap.policy.apex.model.basicmodel.handling.ApexModelCustomGsonMapAdapter;
+import org.onap.policy.apex.model.basicmodel.handling.ApexModelReader;
+import org.onap.policy.apex.model.policymodel.concepts.AxPolicyModel;
+import org.onap.policy.common.utils.resources.TextFileUtils;
+
+public class RealModelTest {
+    @Test
+    public void testRealModel() throws Exception {
+
+        final String modelString = TextFileUtils.getTextFileAsString("src/test/resources/models/PolicyModel.json");
+
+        AxPolicyModel policyModel = new ApexModelReader<AxPolicyModel>(AxPolicyModel.class).read(modelString);
+
+        AxValidationResult result = new AxValidationResult();
+        assertTrue(policyModel.validate(result).isValid());
+    }
+}
index 81c2226..fbb91bb 100644 (file)
 {
-   "apexPolicyModel" : {
-      "key" : {
-         "name" : "PolicyModel",
-         "version" : "0.0.1"
-      },
-      "keyInformation" : {
-         "key" : {
-            "name" : "KeyInfoMapKey",
-            "version" : "0.0.1"
-         },
-         "keyInfoMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "ContextSchemas",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "ContextSchemas",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0ce9168c-e6df-414f-9646-6da464b6e000",
-                  "description" : "Generated description for concept referred to by key \"ContextSchemas:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "KeyInfoMapKey",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "KeyInfoMapKey",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0ce9168c-e6df-414f-9646-6da464b6e001",
-                  "description" : "Generated description for concept referred to by key \"KeyInfoMapKey:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "MapType",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "MapType",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0ce9168c-e6df-414f-9646-6da464b6e002",
-                  "description" : "Generated description for concept referred to by key \"MapType:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "PolicyModel",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "PolicyModel",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0ce9168c-e6df-414f-9646-6da464b6e003",
-                  "description" : "Generated description for concept referred to by key \"PolicyModel:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "StringType",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "StringType",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0ce9168c-e6df-414f-9646-6da464b6e004",
-                  "description" : "Generated description for concept referred to by key \"StringType:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "context",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "context",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0ce9168c-e6df-414f-9646-6da464b6e005",
-                  "description" : "Generated description for concept referred to by key \"context:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "contextAlbum0",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "contextAlbum0",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0ce9168c-e6df-414f-9646-6da464b6e006",
-                  "description" : "Generated description for concept referred to by key \"contextAlbum0:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "contextAlbum1",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "contextAlbum1",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0ce9168c-e6df-414f-9646-6da464b6e007",
-                  "description" : "Generated description for concept referred to by key \"contextAlbum1:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "eventContextItem0",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "eventContextItem0",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0ce9168c-e6df-414f-9646-6da464b6e008",
-                  "description" : "Generated description for concept referred to by key \"eventContextItem0:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "eventContextItem1",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "eventContextItem1",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0ce9168c-e6df-414f-9646-6da464b6e009",
-                  "description" : "Generated description for concept referred to by key \"eventContextItem1:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "events",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "events",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0ce9168c-e6df-414f-9646-6da464b6e010",
-                  "description" : "Generated description for concept referred to by key \"events:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "inEvent",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "inEvent",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0ce9168c-e6df-414f-9646-6da464b6e011",
-                  "description" : "Generated description for concept referred to by key \"inEvent:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "outEvent0",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "outEvent0",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0ce9168c-e6df-414f-9646-6da464b6e012",
-                  "description" : "Generated description for concept referred to by key \"outEvent0:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "outEvent1",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "outEvent1",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0ce9168c-e6df-414f-9646-6da464b6e013",
-                  "description" : "Generated description for concept referred to by key \"outEvent1:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "policies",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "policies",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0ce9168c-e6df-414f-9646-6da464b6e014",
-                  "description" : "Generated description for concept referred to by key \"policies:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "policy",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "policy",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0ce9168c-e6df-414f-9646-6da464b6e015",
-                  "description" : "Generated description for concept referred to by key \"policy:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "task",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "task",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0ce9168c-e6df-414f-9646-6da464b6e016",
-                  "description" : "Generated description for concept referred to by key \"task:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "tasks",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "tasks",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0ce9168c-e6df-414f-9646-6da464b6e017",
-                  "description" : "Generated description for concept referred to by key \"tasks:0.0.1\""
-               }
-            } ]
-         }
-      },
-      "policies" : {
-         "key" : {
-            "name" : "policies",
-            "version" : "0.0.1"
-         },
-         "policyMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "policy",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "policyKey" : {
-                     "name" : "policy",
-                     "version" : "0.0.1"
-                  },
-                  "template" : "FREEFORM",
-                  "state" : {
-                     "entry" : [ {
-                        "key" : "state",
-                        "value" : {
-                           "stateKey" : {
-                              "parentKeyName" : "policy",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "state"
-                           },
-                           "trigger" : {
-                              "name" : "inEvent",
-                              "version" : "0.0.1"
-                           },
-                           "stateOutputs" : {
-                              "entry" : [ {
-                                 "key" : "stateOutput0",
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "policy",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "state",
-                                       "localName" : "stateOutput0"
-                                    },
-                                    "outgoingEvent" : {
-                                       "name" : "outEvent0",
-                                       "version" : "0.0.1"
-                                    },
-                                    "nextState" : {
-                                       "parentKeyName" : "NULL",
-                                       "parentKeyVersion" : "0.0.0",
-                                       "parentLocalName" : "NULL",
-                                       "localName" : "NULL"
-                                    }
-                                 }
-                              } ]
-                           },
-                           "contextAlbumReference" : [ {
-                              "name" : "contextAlbum0",
-                              "version" : "0.0.1"
-                           }, {
-                              "name" : "contextAlbum1",
-                              "version" : "0.0.1"
-                           } ],
-                           "taskSelectionLogic" : {
-                              "key" : "taskSelectionLogic",
-                              "logicFlavour" : "MVEL",
-                              "logic" : "Some TS logic"
-                           },
-                           "stateFinalizerLogicMap" : {
-                              "entry" : [ ]
-                           },
-                           "defaultTask" : {
-                              "name" : "task",
-                              "version" : "0.0.1"
-                           },
-                           "taskReferences" : {
-                              "entry" : [ {
-                                 "key" : {
-                                    "name" : "task",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "policy",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "state",
-                                       "localName" : "task"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "policy",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "state",
-                                       "localName" : "stateOutput0"
-                                    }
-                                 }
-                              } ]
-                           }
+  "key": {
+    "name": "PolicyModel",
+    "version": "0.0.1"
+  },
+  "keyInformation": {
+    "key": {
+      "name": "KeyInfoMapKey",
+      "version": "0.0.1"
+    },
+    "keyInfoMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "ContextSchemas",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "ContextSchemas",
+              "version": "0.0.1"
+            },
+            "UUID": "0ce9168c-e6df-414f-9646-6da464b6e000",
+            "description": "Generated description for concept referred to by key \"ContextSchemas:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "KeyInfoMapKey",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "KeyInfoMapKey",
+              "version": "0.0.1"
+            },
+            "UUID": "0ce9168c-e6df-414f-9646-6da464b6e001",
+            "description": "Generated description for concept referred to by key \"KeyInfoMapKey:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "MapType",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "MapType",
+              "version": "0.0.1"
+            },
+            "UUID": "0ce9168c-e6df-414f-9646-6da464b6e002",
+            "description": "Generated description for concept referred to by key \"MapType:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "PolicyModel",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "PolicyModel",
+              "version": "0.0.1"
+            },
+            "UUID": "0ce9168c-e6df-414f-9646-6da464b6e003",
+            "description": "Generated description for concept referred to by key \"PolicyModel:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "StringType",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "StringType",
+              "version": "0.0.1"
+            },
+            "UUID": "0ce9168c-e6df-414f-9646-6da464b6e004",
+            "description": "Generated description for concept referred to by key \"StringType:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "context",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "context",
+              "version": "0.0.1"
+            },
+            "UUID": "0ce9168c-e6df-414f-9646-6da464b6e005",
+            "description": "Generated description for concept referred to by key \"context:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "contextAlbum0",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "contextAlbum0",
+              "version": "0.0.1"
+            },
+            "UUID": "0ce9168c-e6df-414f-9646-6da464b6e006",
+            "description": "Generated description for concept referred to by key \"contextAlbum0:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "contextAlbum1",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "contextAlbum1",
+              "version": "0.0.1"
+            },
+            "UUID": "0ce9168c-e6df-414f-9646-6da464b6e007",
+            "description": "Generated description for concept referred to by key \"contextAlbum1:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "eventContextItem0",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "eventContextItem0",
+              "version": "0.0.1"
+            },
+            "UUID": "0ce9168c-e6df-414f-9646-6da464b6e008",
+            "description": "Generated description for concept referred to by key \"eventContextItem0:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "eventContextItem1",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "eventContextItem1",
+              "version": "0.0.1"
+            },
+            "UUID": "0ce9168c-e6df-414f-9646-6da464b6e009",
+            "description": "Generated description for concept referred to by key \"eventContextItem1:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "events",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "events",
+              "version": "0.0.1"
+            },
+            "UUID": "0ce9168c-e6df-414f-9646-6da464b6e010",
+            "description": "Generated description for concept referred to by key \"events:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "inEvent",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "inEvent",
+              "version": "0.0.1"
+            },
+            "UUID": "0ce9168c-e6df-414f-9646-6da464b6e011",
+            "description": "Generated description for concept referred to by key \"inEvent:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "outEvent0",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "outEvent0",
+              "version": "0.0.1"
+            },
+            "UUID": "0ce9168c-e6df-414f-9646-6da464b6e012",
+            "description": "Generated description for concept referred to by key \"outEvent0:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "outEvent1",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "outEvent1",
+              "version": "0.0.1"
+            },
+            "UUID": "0ce9168c-e6df-414f-9646-6da464b6e013",
+            "description": "Generated description for concept referred to by key \"outEvent1:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "policies",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "policies",
+              "version": "0.0.1"
+            },
+            "UUID": "0ce9168c-e6df-414f-9646-6da464b6e014",
+            "description": "Generated description for concept referred to by key \"policies:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "policy",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "policy",
+              "version": "0.0.1"
+            },
+            "UUID": "0ce9168c-e6df-414f-9646-6da464b6e015",
+            "description": "Generated description for concept referred to by key \"policy:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "task",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "task",
+              "version": "0.0.1"
+            },
+            "UUID": "0ce9168c-e6df-414f-9646-6da464b6e016",
+            "description": "Generated description for concept referred to by key \"task:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "tasks",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "tasks",
+              "version": "0.0.1"
+            },
+            "UUID": "0ce9168c-e6df-414f-9646-6da464b6e017",
+            "description": "Generated description for concept referred to by key \"tasks:0.0.1\""
+          }
+        }
+      ]
+    }
+  },
+  "policies": {
+    "key": {
+      "name": "policies",
+      "version": "0.0.1"
+    },
+    "policyMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "policy",
+            "version": "0.0.1"
+          },
+          "value": {
+            "policyKey": {
+              "name": "policy",
+              "version": "0.0.1"
+            },
+            "template": "FREEFORM",
+            "state": {
+              "entry": [
+                {
+                  "key": "state",
+                  "value": {
+                    "stateKey": {
+                      "parentKeyName": "policy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "state"
+                    },
+                    "trigger": {
+                      "name": "inEvent",
+                      "version": "0.0.1"
+                    },
+                    "stateOutputs": {
+                      "entry": [
+                        {
+                          "key": "stateOutput0",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "policy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "state",
+                              "localName": "stateOutput0"
+                            },
+                            "outgoingEvent": {
+                              "name": "outEvent0",
+                              "version": "0.0.1"
+                            },
+                            "nextState": {
+                              "parentKeyName": "NULL",
+                              "parentKeyVersion": "0.0.0",
+                              "parentLocalName": "NULL",
+                              "localName": "NULL"
+                            }
+                          }
                         }
-                     } ]
-                  },
-                  "firstState" : "state"
-               }
-            } ]
-         }
-      },
-      "tasks" : {
-         "key" : {
-            "name" : "tasks",
-            "version" : "0.0.1"
-         },
-         "taskMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "task",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "task",
-                     "version" : "0.0.1"
-                  },
-                  "inputFields" : {
-                     "entry" : [ {
-                        "key" : "IEPAR0",
-                        "value" : {
-                           "key" : "IEPAR0",
-                           "fieldSchemaKey" : {
-                              "name" : "eventContextItem0",
-                              "version" : "0.0.1"
-                           }
+                      ]
+                    },
+                    "contextAlbumReference": [
+                      {
+                        "name": "contextAlbum0",
+                        "version": "0.0.1"
+                      },
+                      {
+                        "name": "contextAlbum1",
+                        "version": "0.0.1"
+                      }
+                    ],
+                    "taskSelectionLogic": {
+                      "key": "taskSelectionLogic",
+                      "logicFlavour": "MVEL",
+                      "logic": "Some TS logic"
+                    },
+                    "stateFinalizerLogicMap": {
+                      "entry": []
+                    },
+                    "defaultTask": {
+                      "name": "task",
+                      "version": "0.0.1"
+                    },
+                    "taskReferences": {
+                      "entry": [
+                        {
+                          "key": {
+                            "name": "task",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "policy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "state",
+                              "localName": "task"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "policy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "state",
+                              "localName": "stateOutput0"
+                            }
+                          }
                         }
-                     }, {
-                        "key" : "IEPAR1",
-                        "value" : {
-                           "key" : "IEPAR1",
-                           "fieldSchemaKey" : {
-                              "name" : "eventContextItem1",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     } ]
-                  },
-                  "outputFields" : {
-                     "entry" : [ {
-                        "key" : "OE0PAR0",
-                        "value" : {
-                           "key" : "OE0PAR0",
-                           "fieldSchemaKey" : {
-                              "name" : "eventContextItem0",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "OE0PAR1",
-                        "value" : {
-                           "key" : "OE0PAR1",
-                           "fieldSchemaKey" : {
-                              "name" : "eventContextItem1",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "OE1PAR0",
-                        "value" : {
-                           "key" : "OE1PAR0",
-                           "fieldSchemaKey" : {
-                              "name" : "eventContextItem0",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "OE1PAR1",
-                        "value" : {
-                           "key" : "OE1PAR1",
-                           "fieldSchemaKey" : {
-                              "name" : "eventContextItem1",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     } ]
-                  },
-                  "taskParameters" : {
-                     "entry" : [ {
-                        "key" : "taskParameter0",
-                        "value" : {
-                           "key" : {
-                              "parentKeyName" : "task",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "taskParameter0"
-                           },
-                           "defaultValue" : "Task parameter 0 value"
-                        }
-                     }, {
-                        "key" : "taskParameter1",
-                        "value" : {
-                           "key" : {
-                              "parentKeyName" : "task",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "taskParameter1"
-                           },
-                           "defaultValue" : "Task parameter 1 value"
-                        }
-                     } ]
-                  },
-                  "contextAlbumReference" : [ {
-                     "name" : "contextAlbum0",
-                     "version" : "0.0.1"
-                  }, {
-                     "name" : "contextAlbum1",
-                     "version" : "0.0.1"
-                  } ],
-                  "taskLogic" : {
-                     "key" : "taskLogic",
-                     "logicFlavour" : "MVEL",
-                     "logic" : "Some task logic"
+                      ]
+                    }
                   }
-               }
-            } ]
-         }
-      },
-      "events" : {
-         "key" : {
-            "name" : "events",
-            "version" : "0.0.1"
-         },
-         "eventMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "inEvent",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "inEvent",
-                     "version" : "0.0.1"
-                  },
-                  "nameSpace" : "org.onap.policy.apex.model.policymodel.events",
-                  "source" : "Source",
-                  "target" : "Target",
-                  "parameter" : {
-                     "entry" : [ {
-                        "key" : "IEPAR0",
-                        "value" : {
-                           "key" : "IEPAR0",
-                           "fieldSchemaKey" : {
-                              "name" : "eventContextItem0",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "IEPAR1",
-                        "value" : {
-                           "key" : "IEPAR1",
-                           "fieldSchemaKey" : {
-                              "name" : "eventContextItem1",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     } ]
+                }
+              ]
+            },
+            "firstState": "state"
+          }
+        }
+      ]
+    }
+  },
+  "tasks": {
+    "key": {
+      "name": "tasks",
+      "version": "0.0.1"
+    },
+    "taskMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "task",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "task",
+              "version": "0.0.1"
+            },
+            "inputFields": {
+              "entry": [
+                {
+                  "key": "IEPAR0",
+                  "value": {
+                    "key": "IEPAR0",
+                    "fieldSchemaKey": {
+                      "name": "eventContextItem0",
+                      "version": "0.0.1"
+                    }
                   }
-               }
-            }, {
-               "key" : {
-                  "name" : "outEvent0",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "outEvent0",
-                     "version" : "0.0.1"
-                  },
-                  "nameSpace" : "org.onap.policy.apex.model.policymodel.events",
-                  "source" : "Source",
-                  "target" : "Target",
-                  "parameter" : {
-                     "entry" : [ {
-                        "key" : "OE0PAR0",
-                        "value" : {
-                           "key" : "OE0PAR0",
-                           "fieldSchemaKey" : {
-                              "name" : "eventContextItem0",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "OE0PAR1",
-                        "value" : {
-                           "key" : "OE0PAR1",
-                           "fieldSchemaKey" : {
-                              "name" : "eventContextItem1",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "OE1PAR0",
-                        "value" : {
-                           "key" : "OE1PAR0",
-                           "fieldSchemaKey" : {
-                              "name" : "eventContextItem0",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "OE1PAR1",
-                        "value" : {
-                           "key" : "OE1PAR1",
-                           "fieldSchemaKey" : {
-                              "name" : "eventContextItem1",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     } ]
+                },
+                {
+                  "key": "IEPAR1",
+                  "value": {
+                    "key": "IEPAR1",
+                    "fieldSchemaKey": {
+                      "name": "eventContextItem1",
+                      "version": "0.0.1"
+                    }
                   }
-               }
-            }, {
-               "key" : {
-                  "name" : "outEvent1",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "outEvent1",
-                     "version" : "0.0.1"
-                  },
-                  "nameSpace" : "org.onap.policy.apex.model.policymodel.events",
-                  "source" : "Source",
-                  "target" : "Target",
-                  "parameter" : {
-                     "entry" : [ {
-                        "key" : "OE1PAR0",
-                        "value" : {
-                           "key" : "OE1PAR0",
-                           "fieldSchemaKey" : {
-                              "name" : "eventContextItem0",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     }, {
-                        "key" : "OE1PAR1",
-                        "value" : {
-                           "key" : "OE1PAR1",
-                           "fieldSchemaKey" : {
-                              "name" : "eventContextItem1",
-                              "version" : "0.0.1"
-                           }
-                        }
-                     } ]
+                }
+              ]
+            },
+            "outputFields": {
+              "entry": [
+                {
+                  "key": "OE0PAR0",
+                  "value": {
+                    "key": "OE0PAR0",
+                    "fieldSchemaKey": {
+                      "name": "eventContextItem0",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "OE0PAR1",
+                  "value": {
+                    "key": "OE0PAR1",
+                    "fieldSchemaKey": {
+                      "name": "eventContextItem1",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "OE1PAR0",
+                  "value": {
+                    "key": "OE1PAR0",
+                    "fieldSchemaKey": {
+                      "name": "eventContextItem0",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "OE1PAR1",
+                  "value": {
+                    "key": "OE1PAR1",
+                    "fieldSchemaKey": {
+                      "name": "eventContextItem1",
+                      "version": "0.0.1"
+                    }
+                  }
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": [
+                {
+                  "key": "taskParameter0",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "task",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "taskParameter0"
+                    },
+                    "defaultValue": "Task parameter 0 value"
+                  }
+                },
+                {
+                  "key": "taskParameter1",
+                  "value": {
+                    "key": {
+                      "parentKeyName": "task",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "taskParameter1"
+                    },
+                    "defaultValue": "Task parameter 1 value"
+                  }
+                }
+              ]
+            },
+            "contextAlbumReference": [
+              {
+                "name": "contextAlbum0",
+                "version": "0.0.1"
+              },
+              {
+                "name": "contextAlbum1",
+                "version": "0.0.1"
+              }
+            ],
+            "taskLogic": {
+              "key": "taskLogic",
+              "logicFlavour": "MVEL",
+              "logic": "Some task logic"
+            }
+          }
+        }
+      ]
+    }
+  },
+  "events": {
+    "key": {
+      "name": "events",
+      "version": "0.0.1"
+    },
+    "eventMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "inEvent",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "inEvent",
+              "version": "0.0.1"
+            },
+            "nameSpace": "org.onap.policy.apex.model.policymodel.events",
+            "source": "Source",
+            "target": "Target",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "IEPAR0",
+                  "value": {
+                    "key": "IEPAR0",
+                    "fieldSchemaKey": {
+                      "name": "eventContextItem0",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "IEPAR1",
+                  "value": {
+                    "key": "IEPAR1",
+                    "fieldSchemaKey": {
+                      "name": "eventContextItem1",
+                      "version": "0.0.1"
+                    }
+                  }
+                }
+              ]
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "outEvent0",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "outEvent0",
+              "version": "0.0.1"
+            },
+            "nameSpace": "org.onap.policy.apex.model.policymodel.events",
+            "source": "Source",
+            "target": "Target",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "OE0PAR0",
+                  "value": {
+                    "key": "OE0PAR0",
+                    "fieldSchemaKey": {
+                      "name": "eventContextItem0",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "OE0PAR1",
+                  "value": {
+                    "key": "OE0PAR1",
+                    "fieldSchemaKey": {
+                      "name": "eventContextItem1",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "OE1PAR0",
+                  "value": {
+                    "key": "OE1PAR0",
+                    "fieldSchemaKey": {
+                      "name": "eventContextItem0",
+                      "version": "0.0.1"
+                    }
+                  }
+                },
+                {
+                  "key": "OE1PAR1",
+                  "value": {
+                    "key": "OE1PAR1",
+                    "fieldSchemaKey": {
+                      "name": "eventContextItem1",
+                      "version": "0.0.1"
+                    }
                   }
-               }
-            } ]
-         }
-      },
-      "albums" : {
-         "key" : {
-            "name" : "context",
-            "version" : "0.0.1"
-         },
-         "albums" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "contextAlbum0",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "contextAlbum0",
-                     "version" : "0.0.1"
-                  },
-                  "scope" : "APPLICATION",
-                  "isWritable" : true,
-                  "itemSchema" : {
-                     "name" : "MapType",
-                     "version" : "0.0.1"
+                }
+              ]
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "outEvent1",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "outEvent1",
+              "version": "0.0.1"
+            },
+            "nameSpace": "org.onap.policy.apex.model.policymodel.events",
+            "source": "Source",
+            "target": "Target",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "OE1PAR0",
+                  "value": {
+                    "key": "OE1PAR0",
+                    "fieldSchemaKey": {
+                      "name": "eventContextItem0",
+                      "version": "0.0.1"
+                    }
                   }
-               }
-            }, {
-               "key" : {
-                  "name" : "contextAlbum1",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "contextAlbum1",
-                     "version" : "0.0.1"
-                  },
-                  "scope" : "GLOBAL",
-                  "isWritable" : false,
-                  "itemSchema" : {
-                     "name" : "StringType",
-                     "version" : "0.0.1"
+                },
+                {
+                  "key": "OE1PAR1",
+                  "value": {
+                    "key": "OE1PAR1",
+                    "fieldSchemaKey": {
+                      "name": "eventContextItem1",
+                      "version": "0.0.1"
+                    }
                   }
-               }
-            } ]
-         }
-      },
-      "schemas" : {
-         "key" : {
-            "name" : "ContextSchemas",
-            "version" : "0.0.1"
-         },
-         "schemas" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "MapType",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "MapType",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "org.onap.policy.apex.model.policymodel.concepts.TestContextItem00A"
-               }
-            }, {
-               "key" : {
-                  "name" : "StringType",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "StringType",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "org.onap.policy.apex.model.policymodel.concepts.TestContextItem000"
-               }
-            }, {
-               "key" : {
-                  "name" : "eventContextItem0",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "eventContextItem0",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.String"
-               }
-            }, {
-               "key" : {
-                  "name" : "eventContextItem1",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "eventContextItem1",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Long"
-               }
-            } ]
-         }
-      }
-   }
-}
\ No newline at end of file
+                }
+              ]
+            }
+          }
+        }
+      ]
+    }
+  },
+  "albums": {
+    "key": {
+      "name": "context",
+      "version": "0.0.1"
+    },
+    "albums": {
+      "entry": [
+        {
+          "key": {
+            "name": "contextAlbum0",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "contextAlbum0",
+              "version": "0.0.1"
+            },
+            "scope": "APPLICATION",
+            "isWritable": true,
+            "itemSchema": {
+              "name": "MapType",
+              "version": "0.0.1"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "contextAlbum1",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "contextAlbum1",
+              "version": "0.0.1"
+            },
+            "scope": "GLOBAL",
+            "isWritable": false,
+            "itemSchema": {
+              "name": "StringType",
+              "version": "0.0.1"
+            }
+          }
+        }
+      ]
+    }
+  },
+  "schemas": {
+    "key": {
+      "name": "ContextSchemas",
+      "version": "0.0.1"
+    },
+    "schemas": {
+      "entry": [
+        {
+          "key": {
+            "name": "MapType",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "MapType",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "org.onap.policy.apex.model.policymodel.concepts.TestContextItem00A"
+          }
+        },
+        {
+          "key": {
+            "name": "StringType",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "StringType",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "org.onap.policy.apex.model.policymodel.concepts.TestContextItem000"
+          }
+        },
+        {
+          "key": {
+            "name": "eventContextItem0",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "eventContextItem0",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.String"
+          }
+        },
+        {
+          "key": {
+            "name": "eventContextItem1",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "eventContextItem1",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Long"
+          }
+        }
+      ]
+    }
+  }
+}
diff --git a/model/model-api/src/test/resources/models/PolicyModel.xml b/model/model-api/src/test/resources/models/PolicyModel.xml
deleted file mode 100644 (file)
index e47e21a..0000000
+++ /dev/null
@@ -1,697 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  ============LICENSE_START=======================================================
-   Copyright (C) 2016-2018 Ericsson. 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.
-  You may obtain a copy of the License at
-
-       http://www.apache.org/licenses/LICENSE-2.0
-
-  Unless required by applicable law or agreed to in writing, software
-  distributed under the License is distributed on an "AS IS" BASIS,
-  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  See the License for the specific language governing permissions and
-  limitations under the License.
-
-  SPDX-License-Identifier: Apache-2.0
-  ============LICENSE_END=========================================================
--->
-
-<apexPolicyModel xmlns="http://www.onap.org/policy/apex-pdp">
-    <key>
-        <name>PolicyModel</name>
-        <version>0.0.1</version>
-    </key>
-    <keyInformation>
-        <key>
-            <name>KeyInfoMapKey</name>
-            <version>0.0.1</version>
-        </key>
-        <keyInfoMap>
-            <entry>
-                <key>
-                    <name>ContextSchemas</name>
-                    <version>0.0.1</version>
-                </key>
-                <value>
-                    <key>
-                        <name>ContextSchemas</name>
-                        <version>0.0.1</version>
-                    </key>
-                    <UUID>0ce9168c-e6df-414f-9646-6da464b6e000</UUID>
-                    <description><![CDATA[Description for concept with key "ContextSchemas:0.0.1"]]></description>
-                </value>
-            </entry>
-            <entry>
-                <key>
-                    <name>KeyInfoMapKey</name>
-                    <version>0.0.1</version>
-                </key>
-                <value>
-                    <key>
-                        <name>KeyInfoMapKey</name>
-                        <version>0.0.1</version>
-                    </key>
-                    <UUID>0ce9168c-e6df-414f-9646-6da464b6e001</UUID>
-                    <description><![CDATA[Description for concept with key "KeyInfoMapKey:0.0.1"]]></description>
-                </value>
-            </entry>
-            <entry>
-                <key>
-                    <name>MapType</name>
-                    <version>0.0.1</version>
-                </key>
-                <value>
-                    <key>
-                        <name>MapType</name>
-                        <version>0.0.1</version>
-                    </key>
-                    <UUID>0ce9168c-e6df-414f-9646-6da464b6e002</UUID>
-                    <description><![CDATA[Description for concept with key "MapType:0.0.1"]]></description>
-                </value>
-            </entry>
-            <entry>
-                <key>
-                    <name>PolicyModel</name>
-                    <version>0.0.1</version>
-                </key>
-                <value>
-                    <key>
-                        <name>PolicyModel</name>
-                        <version>0.0.1</version>
-                    </key>
-                    <UUID>0ce9168c-e6df-414f-9646-6da464b6e003</UUID>
-                    <description><![CDATA[Description for concept with key "PolicyModel:0.0.1"]]></description>
-                </value>
-            </entry>
-            <entry>
-                <key>
-                    <name>StringType</name>
-                    <version>0.0.1</version>
-                </key>
-                <value>
-                    <key>
-                        <name>StringType</name>
-                        <version>0.0.1</version>
-                    </key>
-                    <UUID>0ce9168c-e6df-414f-9646-6da464b6e004</UUID>
-                    <description><![CDATA[Description for concept with key "StringType:0.0.1"]]></description>
-                </value>
-            </entry>
-            <entry>
-                <key>
-                    <name>context</name>
-                    <version>0.0.1</version>
-                </key>
-                <value>
-                    <key>
-                        <name>context</name>
-                        <version>0.0.1</version>
-                    </key>
-                    <UUID>0ce9168c-e6df-414f-9646-6da464b6e005</UUID>
-                    <description><![CDATA[Description for concept with key "context:0.0.1"]]></description>
-                </value>
-            </entry>
-            <entry>
-                <key>
-                    <name>contextAlbum0</name>
-                    <version>0.0.1</version>
-                </key>
-                <value>
-                    <key>
-                        <name>contextAlbum0</name>
-                        <version>0.0.1</version>
-                    </key>
-                    <UUID>0ce9168c-e6df-414f-9646-6da464b6e006</UUID>
-                    <description><![CDATA[Description for concept with key "contextAlbum0:0.0.1"]]></description>
-                </value>
-            </entry>
-            <entry>
-                <key>
-                    <name>contextAlbum1</name>
-                    <version>0.0.1</version>
-                </key>
-                <value>
-                    <key>
-                        <name>contextAlbum1</name>
-                        <version>0.0.1</version>
-                    </key>
-                    <UUID>0ce9168c-e6df-414f-9646-6da464b6e007</UUID>
-                    <description><![CDATA[Description for concept with key "contextAlbum1:0.0.1"]]></description>
-                </value>
-            </entry>
-            <entry>
-                <key>
-                    <name>eventContextItem0</name>
-                    <version>0.0.1</version>
-                </key>
-                <value>
-                    <key>
-                        <name>eventContextItem0</name>
-                        <version>0.0.1</version>
-                    </key>
-                    <UUID>0ce9168c-e6df-414f-9646-6da464b6e008</UUID>
-                    <description><![CDATA[Description for concept with key "eventContextItem0:0.0.1"]]></description>
-                </value>
-            </entry>
-            <entry>
-                <key>
-                    <name>eventContextItem1</name>
-                    <version>0.0.1</version>
-                </key>
-                <value>
-                    <key>
-                        <name>eventContextItem1</name>
-                        <version>0.0.1</version>
-                    </key>
-                    <UUID>0ce9168c-e6df-414f-9646-6da464b6e009</UUID>
-                    <description><![CDATA[Description for concept with key "eventContextItem1:0.0.1"]]></description>
-                </value>
-            </entry>
-            <entry>
-                <key>
-                    <name>events</name>
-                    <version>0.0.1</version>
-                </key>
-                <value>
-                    <key>
-                        <name>events</name>
-                        <version>0.0.1</version>
-                    </key>
-                    <UUID>0ce9168c-e6df-414f-9646-6da464b6e010</UUID>
-                    <description><![CDATA[Description for concept with key "events:0.0.1"]]></description>
-                </value>
-            </entry>
-            <entry>
-                <key>
-                    <name>inEvent</name>
-                    <version>0.0.1</version>
-                </key>
-                <value>
-                    <key>
-                        <name>inEvent</name>
-                        <version>0.0.1</version>
-                    </key>
-                    <UUID>0ce9168c-e6df-414f-9646-6da464b6e011</UUID>
-                    <description><![CDATA[Description for concept with key "inEvent:0.0.1"]]></description>
-                </value>
-            </entry>
-            <entry>
-                <key>
-                    <name>outEvent0</name>
-                    <version>0.0.1</version>
-                </key>
-                <value>
-                    <key>
-                        <name>outEvent0</name>
-                        <version>0.0.1</version>
-                    </key>
-                    <UUID>0ce9168c-e6df-414f-9646-6da464b6e012</UUID>
-                    <description><![CDATA[Description for concept with key "outEvent0:0.0.1"]]></description>
-                </value>
-            </entry>
-            <entry>
-                <key>
-                    <name>outEvent1</name>
-                    <version>0.0.1</version>
-                </key>
-                <value>
-                    <key>
-                        <name>outEvent1</name>
-                        <version>0.0.1</version>
-                    </key>
-                    <UUID>0ce9168c-e6df-414f-9646-6da464b6e013</UUID>
-                    <description><![CDATA[Description for concept with key "outEvent1:0.0.1"]]></description>
-                </value>
-            </entry>
-            <entry>
-                <key>
-                    <name>policies</name>
-                    <version>0.0.1</version>
-                </key>
-                <value>
-                    <key>
-                        <name>policies</name>
-                        <version>0.0.1</version>
-                    </key>
-                    <UUID>0ce9168c-e6df-414f-9646-6da464b6e014</UUID>
-                    <description><![CDATA[Description for concept with key "policies:0.0.1"]]></description>
-                </value>
-            </entry>
-            <entry>
-                <key>
-                    <name>policy</name>
-                    <version>0.0.1</version>
-                </key>
-                <value>
-                    <key>
-                        <name>policy</name>
-                        <version>0.0.1</version>
-                    </key>
-                    <UUID>0ce9168c-e6df-414f-9646-6da464b6e015</UUID>
-                    <description><![CDATA[Description for concept with key "policy:0.0.1"]]></description>
-                </value>
-            </entry>
-            <entry>
-                <key>
-                    <name>task</name>
-                    <version>0.0.1</version>
-                </key>
-                <value>
-                    <key>
-                        <name>task</name>
-                        <version>0.0.1</version>
-                    </key>
-                    <UUID>0ce9168c-e6df-414f-9646-6da464b6e016</UUID>
-                    <description><![CDATA[Description for concept with key "task:0.0.1"]]></description>
-                </value>
-            </entry>
-            <entry>
-                <key>
-                    <name>tasks</name>
-                    <version>0.0.1</version>
-                </key>
-                <value>
-                    <key>
-                        <name>tasks</name>
-                        <version>0.0.1</version>
-                    </key>
-                    <UUID>0ce9168c-e6df-414f-9646-6da464b6e017</UUID>
-                    <description><![CDATA[Description for concept with key "tasks:0.0.1"]]></description>
-                </value>
-            </entry>
-        </keyInfoMap>
-    </keyInformation>
-    <policies>
-        <key>
-            <name>policies</name>
-            <version>0.0.1</version>
-        </key>
-        <policyMap>
-            <entry>
-                <key>
-                    <name>policy</name>
-                    <version>0.0.1</version>
-                </key>
-                <value>
-                    <policyKey>
-                        <name>policy</name>
-                        <version>0.0.1</version>
-                    </policyKey>
-                    <template>FREEFORM</template>
-                    <state>
-                        <entry>
-                            <key>state</key>
-                            <value>
-                                <stateKey>
-                                    <parentKeyName>policy</parentKeyName>
-                                    <parentKeyVersion>0.0.1</parentKeyVersion>
-                                    <parentLocalName>NULL</parentLocalName>
-                                    <localName>state</localName>
-                                </stateKey>
-                                <trigger>
-                                    <name>inEvent</name>
-                                    <version>0.0.1</version>
-                                </trigger>
-                                <stateOutputs>
-                                    <entry>
-                                        <key>stateOutput0</key>
-                                        <value>
-                                            <key>
-                                                <parentKeyName>policy</parentKeyName>
-                                                <parentKeyVersion>0.0.1</parentKeyVersion>
-                                                <parentLocalName>state</parentLocalName>
-                                                <localName>stateOutput0</localName>
-                                            </key>
-                                            <outgoingEvent>
-                                                <name>outEvent0</name>
-                                                <version>0.0.1</version>
-                                            </outgoingEvent>
-                                            <nextState>
-                                                <parentKeyName>NULL</parentKeyName>
-                                                <parentKeyVersion>0.0.0</parentKeyVersion>
-                                                <parentLocalName>NULL</parentLocalName>
-                                                <localName>NULL</localName>
-                                            </nextState>
-                                        </value>
-                                    </entry>
-                                </stateOutputs>
-                                <contextAlbumReference>
-                                    <name>contextAlbum0</name>
-                                    <version>0.0.1</version>
-                                </contextAlbumReference>
-                                <contextAlbumReference>
-                                    <name>contextAlbum1</name>
-                                    <version>0.0.1</version>
-                                </contextAlbumReference>
-                                <taskSelectionLogic>
-                                    <key>taskSelectionLogic</key>
-                                    <logicFlavour>MVEL</logicFlavour>
-                                    <logic><![CDATA[Some TS logic]]></logic>
-                                </taskSelectionLogic>
-                                <defaultTask>
-                                    <name>task</name>
-                                    <version>0.0.1</version>
-                                </defaultTask>
-                                <taskReferences>
-                                    <entry>
-                                        <key>
-                                            <name>task</name>
-                                            <version>0.0.1</version>
-                                        </key>
-                                        <value>
-                                            <key>
-                                                <parentKeyName>policy</parentKeyName>
-                                                <parentKeyVersion>0.0.1</parentKeyVersion>
-                                                <parentLocalName>state</parentLocalName>
-                                                <localName>task</localName>
-                                            </key>
-                                            <outputType>DIRECT</outputType>
-                                            <output>
-                                                <parentKeyName>policy</parentKeyName>
-                                                <parentKeyVersion>0.0.1</parentKeyVersion>
-                                                <parentLocalName>state</parentLocalName>
-                                                <localName>stateOutput0</localName>
-                                            </output>
-                                        </value>
-                                    </entry>
-                                </taskReferences>
-                            </value>
-                        </entry>
-                    </state>
-                    <firstState>state</firstState>
-                </value>
-            </entry>
-        </policyMap>
-    </policies>
-    <tasks>
-        <key>
-            <name>tasks</name>
-            <version>0.0.1</version>
-        </key>
-        <taskMap>
-            <entry>
-                <key>
-                    <name>task</name>
-                    <version>0.0.1</version>
-                </key>
-                <value>
-                    <key>
-                        <name>task</name>
-                        <version>0.0.1</version>
-                    </key>
-                    <taskParameters>
-                        <entry>
-                            <key>taskParameter0</key>
-                            <value>
-                                <key>
-                                    <parentKeyName>task</parentKeyName>
-                                    <parentKeyVersion>0.0.1</parentKeyVersion>
-                                    <parentLocalName>NULL</parentLocalName>
-                                    <localName>taskParameter0</localName>
-                                </key>
-                                <defaultValue>Task parameter 0 value</defaultValue>
-                            </value>
-                        </entry>
-                        <entry>
-                            <key>taskParameter1</key>
-                            <value>
-                                <key>
-                                    <parentKeyName>task</parentKeyName>
-                                    <parentKeyVersion>0.0.1</parentKeyVersion>
-                                    <parentLocalName>NULL</parentLocalName>
-                                    <localName>taskParameter1</localName>
-                                </key>
-                                <defaultValue>Task parameter 1 value</defaultValue>
-                            </value>
-                        </entry>
-                    </taskParameters>
-                    <contextAlbumReference>
-                        <name>contextAlbum0</name>
-                        <version>0.0.1</version>
-                    </contextAlbumReference>
-                    <contextAlbumReference>
-                        <name>contextAlbum1</name>
-                        <version>0.0.1</version>
-                    </contextAlbumReference>
-                    <taskLogic>
-                        <key>taskLogic</key>
-                        <logicFlavour>MVEL</logicFlavour>
-                        <logic><![CDATA[Some task logic]]></logic>
-                    </taskLogic>
-                </value>
-            </entry>
-        </taskMap>
-    </tasks>
-    <events>
-        <key>
-            <name>events</name>
-            <version>0.0.1</version>
-        </key>
-        <eventMap>
-            <entry>
-                <key>
-                    <name>inEvent</name>
-                    <version>0.0.1</version>
-                </key>
-                <value>
-                    <key>
-                        <name>inEvent</name>
-                        <version>0.0.1</version>
-                    </key>
-                    <nameSpace>org.onap.policy.apex.model.policymodel.events</nameSpace>
-                    <source>Source</source>
-                    <target>Target</target>
-                    <parameter>
-                        <entry>
-                            <key>IEPAR0</key>
-                            <value>
-                                <key>IEPAR0</key>
-                                <fieldSchemaKey>
-                                    <name>eventContextItem0</name>
-                                    <version>0.0.1</version>
-                                </fieldSchemaKey>
-                            </value>
-                        </entry>
-                        <entry>
-                            <key>IEPAR1</key>
-                            <value>
-                                <key>IEPAR1</key>
-                                <fieldSchemaKey>
-                                    <name>eventContextItem1</name>
-                                    <version>0.0.1</version>
-                                </fieldSchemaKey>
-                            </value>
-                        </entry>
-                    </parameter>
-                </value>
-            </entry>
-            <entry>
-                <key>
-                    <name>outEvent0</name>
-                    <version>0.0.1</version>
-                </key>
-                <value>
-                    <key>
-                        <name>outEvent0</name>
-                        <version>0.0.1</version>
-                    </key>
-                    <nameSpace>org.onap.policy.apex.model.policymodel.events</nameSpace>
-                    <source>Source</source>
-                    <target>Target</target>
-                    <parameter>
-                        <entry>
-                            <key>OE0PAR0</key>
-                            <value>
-                                <key>OE0PAR0</key>
-                                <fieldSchemaKey>
-                                    <name>eventContextItem0</name>
-                                    <version>0.0.1</version>
-                                </fieldSchemaKey>
-                            </value>
-                        </entry>
-                        <entry>
-                            <key>OE0PAR1</key>
-                            <value>
-                                <key>OE0PAR1</key>
-                                <fieldSchemaKey>
-                                    <name>eventContextItem1</name>
-                                    <version>0.0.1</version>
-                                </fieldSchemaKey>
-                            </value>
-                        </entry>
-                        <entry>
-                            <key>OE1PAR0</key>
-                            <value>
-                                <key>OE1PAR0</key>
-                                <fieldSchemaKey>
-                                    <name>eventContextItem0</name>
-                                    <version>0.0.1</version>
-                                </fieldSchemaKey>
-                            </value>
-                        </entry>
-                        <entry>
-                            <key>OE1PAR1</key>
-                            <value>
-                                <key>OE1PAR1</key>
-                                <fieldSchemaKey>
-                                    <name>eventContextItem1</name>
-                                    <version>0.0.1</version>
-                                </fieldSchemaKey>
-                            </value>
-                        </entry>
-                    </parameter>
-                </value>
-            </entry>
-            <entry>
-                <key>
-                    <name>outEvent1</name>
-                    <version>0.0.1</version>
-                </key>
-                <value>
-                    <key>
-                        <name>outEvent1</name>
-                        <version>0.0.1</version>
-                    </key>
-                    <nameSpace>org.onap.policy.apex.model.policymodel.events</nameSpace>
-                    <source>Source</source>
-                    <target>Target</target>
-                    <parameter>
-                        <entry>
-                            <key>OE1PAR0</key>
-                            <value>
-                                <key>OE1PAR0</key>
-                                <fieldSchemaKey>
-                                    <name>eventContextItem0</name>
-                                    <version>0.0.1</version>
-                                </fieldSchemaKey>
-                            </value>
-                        </entry>
-                        <entry>
-                            <key>OE1PAR1</key>
-                            <value>
-                                <key>OE1PAR1</key>
-                                <fieldSchemaKey>
-                                    <name>eventContextItem1</name>
-                                    <version>0.0.1</version>
-                                </fieldSchemaKey>
-                            </value>
-                        </entry>
-                    </parameter>
-                </value>
-            </entry>
-        </eventMap>
-    </events>
-    <albums>
-        <key xmlns="http://www.onap.org/policy/apex-pdp">
-            <name xmlns="http://www.onap.org/policy/apex-pdp">context</name>
-            <version xmlns="http://www.onap.org/policy/apex-pdp">0.0.1</version>
-        </key>
-        <albums xmlns="http://www.onap.org/policy/apex-pdp">
-            <entry>
-                <key>
-                    <name xmlns="http://www.onap.org/policy/apex-pdp">contextAlbum0</name>
-                    <version xmlns="http://www.onap.org/policy/apex-pdp">0.0.1</version>
-                </key>
-                <value>
-                    <key>
-                        <name xmlns="http://www.onap.org/policy/apex-pdp">contextAlbum0</name>
-                        <version xmlns="http://www.onap.org/policy/apex-pdp">0.0.1</version>
-                    </key>
-                    <scope>APPLICATION</scope>
-                    <isWritable>true</isWritable>
-                    <itemSchema>
-                        <name xmlns="http://www.onap.org/policy/apex-pdp">MapType</name>
-                        <version xmlns="http://www.onap.org/policy/apex-pdp">0.0.1</version>
-                    </itemSchema>
-                </value>
-            </entry>
-            <entry>
-                <key>
-                    <name xmlns="http://www.onap.org/policy/apex-pdp">contextAlbum1</name>
-                    <version xmlns="http://www.onap.org/policy/apex-pdp">0.0.1</version>
-                </key>
-                <value>
-                    <key>
-                        <name xmlns="http://www.onap.org/policy/apex-pdp">contextAlbum1</name>
-                        <version xmlns="http://www.onap.org/policy/apex-pdp">0.0.1</version>
-                    </key>
-                    <scope>GLOBAL</scope>
-                    <isWritable>false</isWritable>
-                    <itemSchema>
-                        <name xmlns="http://www.onap.org/policy/apex-pdp">StringType</name>
-                        <version xmlns="http://www.onap.org/policy/apex-pdp">0.0.1</version>
-                    </itemSchema>
-                </value>
-            </entry>
-        </albums>
-    </albums>
-    <schemas>
-        <key xmlns="http://www.onap.org/policy/apex-pdp">
-            <name xmlns="http://www.onap.org/policy/apex-pdp">ContextSchemas</name>
-            <version xmlns="http://www.onap.org/policy/apex-pdp">0.0.1</version>
-        </key>
-        <schemas xmlns="http://www.onap.org/policy/apex-pdp">
-            <entry>
-                <key>
-                    <name xmlns="http://www.onap.org/policy/apex-pdp">MapType</name>
-                    <version xmlns="http://www.onap.org/policy/apex-pdp">0.0.1</version>
-                </key>
-                <value>
-                    <key>
-                        <name xmlns="http://www.onap.org/policy/apex-pdp">MapType</name>
-                        <version xmlns="http://www.onap.org/policy/apex-pdp">0.0.1</version>
-                    </key>
-                    <schemaFlavour>Java</schemaFlavour>
-                    <schemaDefinition>org.onap.policy.apex.model.policymodel.concepts.TestContextItem00A
-                    </schemaDefinition>
-                </value>
-            </entry>
-            <entry>
-                <key>
-                    <name xmlns="http://www.onap.org/policy/apex-pdp">StringType</name>
-                    <version xmlns="http://www.onap.org/policy/apex-pdp">0.0.1</version>
-                </key>
-                <value>
-                    <key>
-                        <name xmlns="http://www.onap.org/policy/apex-pdp">StringType</name>
-                        <version xmlns="http://www.onap.org/policy/apex-pdp">0.0.1</version>
-                    </key>
-                    <schemaFlavour>Java</schemaFlavour>
-                    <schemaDefinition>org.onap.policy.apex.model.policymodel.concepts.TestContextItem000
-                    </schemaDefinition>
-                </value>
-            </entry>
-            <entry>
-                <key>
-                    <name xmlns="http://www.onap.org/policy/apex-pdp">eventContextItem0</name>
-                    <version xmlns="http://www.onap.org/policy/apex-pdp">0.0.1</version>
-                </key>
-                <value>
-                    <key>
-                        <name xmlns="http://www.onap.org/policy/apex-pdp">eventContextItem0</name>
-                        <version xmlns="http://www.onap.org/policy/apex-pdp">0.0.1</version>
-                    </key>
-                    <schemaFlavour>Java</schemaFlavour>
-                    <schemaDefinition>java.lang.String</schemaDefinition>
-                </value>
-            </entry>
-            <entry>
-                <key>
-                    <name xmlns="http://www.onap.org/policy/apex-pdp">eventContextItem1</name>
-                    <version xmlns="http://www.onap.org/policy/apex-pdp">0.0.1</version>
-                </key>
-                <value>
-                    <key>
-                        <name xmlns="http://www.onap.org/policy/apex-pdp">eventContextItem1</name>
-                        <version xmlns="http://www.onap.org/policy/apex-pdp">0.0.1</version>
-                    </key>
-                    <schemaFlavour>Java</schemaFlavour>
-                    <schemaDefinition>java.lang.Long</schemaDefinition>
-                </value>
-            </entry>
-        </schemas>
-    </schemas>
-</apexPolicyModel>
diff --git a/model/model-api/src/test/resources/models/RealPolicyModel.json b/model/model-api/src/test/resources/models/RealPolicyModel.json
new file mode 100644 (file)
index 0000000..f084747
--- /dev/null
@@ -0,0 +1,3076 @@
+{
+  "key": {
+    "name": "ONAPvCPEPolicyModel",
+    "version": "0.0.1"
+  },
+  "keyInformation": {
+    "key": {
+      "name": "ONAPvCPEPolicyModel_KeyInfo",
+      "version": "0.0.1"
+    },
+    "keyInfoMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "AAILookupTask",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "AAILookupTask",
+              "version": "0.0.1"
+            },
+            "UUID": "bc77813f-e2fa-33e0-aef0-c5b6a8832698",
+            "description": "Generated description for concept referred to by key \"AAILookupTask:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "APPCLCMRequestType",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "APPCLCMRequestType",
+              "version": "0.0.1"
+            },
+            "UUID": "ab26e475-d09d-36cd-a65c-8a8b556f0fa2",
+            "description": "Generated description for concept referred to by key \"APPCLCMRequestType:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "APPCLCMResponseType",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "APPCLCMResponseType",
+              "version": "0.0.1"
+            },
+            "UUID": "a60b42bb-c308-30ea-be59-5bc54864508b",
+            "description": "Generated description for concept referred to by key \"APPCLCMResponseType:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "APPCRestartVNFRequestEvent",
+            "version": "2.0.0"
+          },
+          "value": {
+            "key": {
+              "name": "APPCRestartVNFRequestEvent",
+              "version": "2.0.0"
+            },
+            "UUID": "0b16f8d9-6ee9-30d7-bcd2-e4ded9fccf9b",
+            "description": "Generated description for concept referred to by key \"APPCRestartVNFRequestEvent:2.0.0\""
+          }
+        },
+        {
+          "key": {
+            "name": "APPCRestartVNFRequestTask",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "APPCRestartVNFRequestTask",
+              "version": "0.0.1"
+            },
+            "UUID": "719ae90e-ab01-322e-ace3-8c379e7c1fbf",
+            "description": "Generated description for concept referred to by key \"APPCRestartVNFRequestTask:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "APPCRestartVNFResponseEvent",
+            "version": "2.0.0"
+          },
+          "value": {
+            "key": {
+              "name": "APPCRestartVNFResponseEvent",
+              "version": "2.0.0"
+            },
+            "UUID": "7034c5a9-2ea7-3e9e-9ccf-3610c3bf80d9",
+            "description": "Generated description for concept referred to by key \"APPCRestartVNFResponseEvent:2.0.0\""
+          }
+        },
+        {
+          "key": {
+            "name": "APPCRestartVNFResponseTask",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "APPCRestartVNFResponseTask",
+              "version": "0.0.1"
+            },
+            "UUID": "fe641fd9-6583-37c5-b317-2a33a3ca5ac7",
+            "description": "Generated description for concept referred to by key \"APPCRestartVNFResponseTask:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "AbatedTask",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "AbatedTask",
+              "version": "0.0.1"
+            },
+            "UUID": "0eb3974f-4fdc-3c90-b351-34e7e18ff1ab",
+            "description": "Generated description for concept referred to by key \"AbatedTask:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e",
+            "version": "1.0.2"
+          },
+          "value": {
+            "key": {
+              "name": "ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e",
+              "version": "1.0.2"
+            },
+            "UUID": "63ff5c25-f245-37e9-a580-6ac274ced3a7",
+            "description": "Generated description for concept referred to by key \"ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e:1.0.2\""
+          }
+        },
+        {
+          "key": {
+            "name": "ControlLoopExecutionIDAlbum",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "ControlLoopExecutionIDAlbum",
+              "version": "0.0.1"
+            },
+            "UUID": "5b2bc0cf-0807-3ab1-9004-f21806d800f0",
+            "description": "Generated description for concept referred to by key \"ControlLoopExecutionIDAlbum:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "ControlLoopLogEvent",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "ControlLoopLogEvent",
+              "version": "0.0.1"
+            },
+            "UUID": "ed8a82ad-52c2-3d58-8c08-601606894b86",
+            "description": "Generated description for concept referred to by key \"ControlLoopLogEvent:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "ControlLoopLogTask",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "ControlLoopLogTask",
+              "version": "0.0.1"
+            },
+            "UUID": "1b175691-6b5d-31f6-bf2d-4be95a01f92e",
+            "description": "Generated description for concept referred to by key \"ControlLoopLogTask:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "DeniedTask",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "DeniedTask",
+              "version": "0.0.1"
+            },
+            "UUID": "00142e3c-ee3b-323f-9490-6e4b7f34b09f",
+            "description": "Generated description for concept referred to by key \"DeniedTask:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "GetVCPEStateTask",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "GetVCPEStateTask",
+              "version": "0.0.1"
+            },
+            "UUID": "644d2a3d-0f3a-3664-8000-280c400a5cc1",
+            "description": "Generated description for concept referred to by key \"GetVCPEStateTask:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "GuardDecisionAttributesType",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "GuardDecisionAttributesType",
+              "version": "0.0.1"
+            },
+            "UUID": "5f6dff51-c183-322f-9aba-c6074aa0ece5",
+            "description": "Generated description for concept referred to by key \"GuardDecisionAttributesType:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "GuardRequestEvent",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "GuardRequestEvent",
+              "version": "0.0.1"
+            },
+            "UUID": "fb383a58-715b-3972-a3e6-38010a8de234",
+            "description": "Generated description for concept referred to by key \"GuardRequestEvent:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "GuardRequestTask",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "GuardRequestTask",
+              "version": "0.0.1"
+            },
+            "UUID": "0427d63c-da78-334c-a5bd-95fbbb162398",
+            "description": "Generated description for concept referred to by key \"GuardRequestTask:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "GuardResponseEvent",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "GuardResponseEvent",
+              "version": "0.0.1"
+            },
+            "UUID": "395f6d46-cf24-3d3e-b1fd-1a189a58993d",
+            "description": "Generated description for concept referred to by key \"GuardResponseEvent:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "GuardResponseTask",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "GuardResponseTask",
+              "version": "0.0.1"
+            },
+            "UUID": "1a8b3f30-a7aa-330b-8131-4aea06ad6934",
+            "description": "Generated description for concept referred to by key \"GuardResponseTask:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "NoAAILookupTask",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "NoAAILookupTask",
+              "version": "0.0.1"
+            },
+            "UUID": "648bc8f9-ad2b-3a1b-abe2-89401645f191",
+            "description": "Generated description for concept referred to by key \"NoAAILookupTask:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "ONAPvCPEPolicyModel",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "ONAPvCPEPolicyModel",
+              "version": "0.0.1"
+            },
+            "UUID": "cf1aa7f4-6fe3-3cba-90b4-49dcf46f0d57",
+            "description": "Generated description for concept referred to by key \"ONAPvCPEPolicyModel:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "ONAPvCPEPolicyModel_Albums",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "ONAPvCPEPolicyModel_Albums",
+              "version": "0.0.1"
+            },
+            "UUID": "13f8471b-2b9c-32e0-940b-fe640ea442cf",
+            "description": "Generated description for concept referred to by key \"ONAPvCPEPolicyModel_Albums:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "ONAPvCPEPolicyModel_Events",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "ONAPvCPEPolicyModel_Events",
+              "version": "0.0.1"
+            },
+            "UUID": "4b8e6653-731d-38c5-a195-0cadf533a7a1",
+            "description": "Generated description for concept referred to by key \"ONAPvCPEPolicyModel_Events:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "ONAPvCPEPolicyModel_KeyInfo",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "ONAPvCPEPolicyModel_KeyInfo",
+              "version": "0.0.1"
+            },
+            "UUID": "87a9d6da-7d4b-3041-8a70-49442750d590",
+            "description": "Generated description for concept referred to by key \"ONAPvCPEPolicyModel_KeyInfo:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "ONAPvCPEPolicyModel_Policies",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "ONAPvCPEPolicyModel_Policies",
+              "version": "0.0.1"
+            },
+            "UUID": "6220cca4-66f5-3d1b-9f19-688a9b4b70f5",
+            "description": "Generated description for concept referred to by key \"ONAPvCPEPolicyModel_Policies:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "ONAPvCPEPolicyModel_Schemas",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "ONAPvCPEPolicyModel_Schemas",
+              "version": "0.0.1"
+            },
+            "UUID": "3df4eef8-e764-3398-afe9-86730e20905a",
+            "description": "Generated description for concept referred to by key \"ONAPvCPEPolicyModel_Schemas:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "ONAPvCPEPolicyModel_Tasks",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "ONAPvCPEPolicyModel_Tasks",
+              "version": "0.0.1"
+            },
+            "UUID": "1781b875-a3e8-3407-98bd-ba9580cfc543",
+            "description": "Generated description for concept referred to by key \"ONAPvCPEPolicyModel_Tasks:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "ReceiveEventPolicy",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "ReceiveEventPolicy",
+              "version": "0.0.1"
+            },
+            "UUID": "568b7345-9de1-36d3-b6a3-9b857e6809a1",
+            "description": "Generated description for concept referred to by key \"ReceiveEventPolicy:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "RequestIDVNFIDAlbum",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "RequestIDVNFIDAlbum",
+              "version": "0.0.1"
+            },
+            "UUID": "5d8e8298-ded6-30a5-9825-48111dc17a58",
+            "description": "Generated description for concept referred to by key \"RequestIDVNFIDAlbum:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "RestartAPPCRequestPolicy",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "RestartAPPCRequestPolicy",
+              "version": "0.0.1"
+            },
+            "UUID": "33d02162-314b-352b-b8b9-2862e8883894",
+            "description": "Generated description for concept referred to by key \"RestartAPPCRequestPolicy:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "RestartAPPCResponsePolicy",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "RestartAPPCResponsePolicy",
+              "version": "0.0.1"
+            },
+            "UUID": "ef4fcbd2-1609-377c-9875-8d27f7a901df",
+            "description": "Generated description for concept referred to by key \"RestartAPPCResponsePolicy:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "SimpleBooleanType",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SimpleBooleanType",
+              "version": "0.0.1"
+            },
+            "UUID": "7218fb2f-59e3-321d-9ae1-bc97b19eb4ae",
+            "description": "Generated description for concept referred to by key \"SimpleBooleanType:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "SimpleLongType",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SimpleLongType",
+              "version": "0.0.1"
+            },
+            "UUID": "2dfcd9ec-a6f9-3f9f-958f-9b36cf4ac574",
+            "description": "Generated description for concept referred to by key \"SimpleLongType:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "SimpleStringType",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SimpleStringType",
+              "version": "0.0.1"
+            },
+            "UUID": "8a4957cf-9493-3a76-8c22-a208e23259af",
+            "description": "Generated description for concept referred to by key \"SimpleStringType:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "UUIDType",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "UUIDType",
+              "version": "0.0.1"
+            },
+            "UUID": "6a8cc68e-dfc8-3403-9c6d-071c886b319c",
+            "description": "Generated description for concept referred to by key \"UUIDType:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "VCPEClosedLoopStatusAlbum",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "VCPEClosedLoopStatusAlbum",
+              "version": "0.0.1"
+            },
+            "UUID": "47a4403e-3074-3964-83ef-93eefaffd192",
+            "description": "Generated description for concept referred to by key \"VCPEClosedLoopStatusAlbum:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "VCPEClosedLoopStatusType",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "VCPEClosedLoopStatusType",
+              "version": "0.0.1"
+            },
+            "UUID": "6e7dced1-53f1-39e2-b4e6-412b75d5b9e6",
+            "description": "Generated description for concept referred to by key \"VCPEClosedLoopStatusType:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "VCPEStateUpdatedEvent",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "VCPEStateUpdatedEvent",
+              "version": "0.0.1"
+            },
+            "UUID": "5e56a3fd-f82a-3ced-821b-b9fbaf65d367",
+            "description": "Generated description for concept referred to by key \"VCPEStateUpdatedEvent:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "VirtualControlLoopEventType",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "VirtualControlLoopEventType",
+              "version": "0.0.1"
+            },
+            "UUID": "15aca887-8f6c-3713-8114-0f49f03adab7",
+            "description": "Generated description for concept referred to by key \"VirtualControlLoopEventType:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "VirtualControlLoopNotificationType",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "VirtualControlLoopNotificationType",
+              "version": "0.0.1"
+            },
+            "UUID": "283f5b0d-d8cd-31b0-91fa-89b9de2e1fda",
+            "description": "Generated description for concept referred to by key \"VirtualControlLoopNotificationType:0.0.1\""
+          }
+        }
+      ]
+    }
+  },
+  "policies": {
+    "key": {
+      "name": "ONAPvCPEPolicyModel_Policies",
+      "version": "0.0.1"
+    },
+    "policyMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "ReceiveEventPolicy",
+            "version": "0.0.1"
+          },
+          "value": {
+            "policyKey": {
+              "name": "ReceiveEventPolicy",
+              "version": "0.0.1"
+            },
+            "template": "Freestyle",
+            "state": {
+              "entry": [
+                {
+                  "key": "AbatedState",
+                  "value": {
+                    "stateKey": {
+                      "parentKeyName": "ReceiveEventPolicy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "AbatedState"
+                    },
+                    "trigger": {
+                      "name": "VCPEStateUpdatedEvent",
+                      "version": "0.0.1"
+                    },
+                    "stateOutputs": {
+                      "entry": [
+                        {
+                          "key": "AbatedOutput",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "ReceiveEventPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "AbatedState",
+                              "localName": "AbatedOutput"
+                            },
+                            "outgoingEvent": {
+                              "name": "ControlLoopLogEvent",
+                              "version": "0.0.1"
+                            },
+                            "outgoingEventReference": [
+                              {
+                                "name": "ControlLoopLogEvent",
+                                "version": "0.0.1"
+                              }
+                            ],
+                            "nextState": {
+                              "parentKeyName": "NULL",
+                              "parentKeyVersion": "0.0.0",
+                              "parentLocalName": "NULL",
+                              "localName": "NULL"
+                            }
+                          }
+                        }
+                      ]
+                    },
+                    "contextAlbumReference": [],
+                    "taskSelectionLogic": {
+                      "key": "NULL",
+                      "logicFlavour": "UNDEFINED",
+                      "logic": ""
+                    },
+                    "stateFinalizerLogicMap": {
+                      "entry": []
+                    },
+                    "defaultTask": {
+                      "name": "ControlLoopLogTask",
+                      "version": "0.0.1"
+                    },
+                    "taskReferences": {
+                      "entry": [
+                        {
+                          "key": {
+                            "name": "ControlLoopLogTask",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "ReceiveEventPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "AbatedState",
+                              "localName": "ReceiveEventPolicy"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "ReceiveEventPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "AbatedState",
+                              "localName": "AbatedOutput"
+                            }
+                          }
+                        }
+                      ]
+                    }
+                  }
+                },
+                {
+                  "key": "GetVCPEState",
+                  "value": {
+                    "stateKey": {
+                      "parentKeyName": "ReceiveEventPolicy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "GetVCPEState"
+                    },
+                    "trigger": {
+                      "name": "ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e",
+                      "version": "1.0.2"
+                    },
+                    "stateOutputs": {
+                      "entry": [
+                        {
+                          "key": "GetVCPEStateOutput",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "ReceiveEventPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "GetVCPEState",
+                              "localName": "GetVCPEStateOutput"
+                            },
+                            "outgoingEvent": {
+                              "name": "VCPEStateUpdatedEvent",
+                              "version": "0.0.1"
+                            },
+                            "outgoingEventReference": [
+                              {
+                                "name": "VCPEStateUpdatedEvent",
+                                "version": "0.0.1"
+                              }
+                            ],
+                            "nextState": {
+                              "parentKeyName": "ReceiveEventPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "RequestAAIState"
+                            }
+                          }
+                        }
+                      ]
+                    },
+                    "contextAlbumReference": [],
+                    "taskSelectionLogic": {
+                      "key": "NULL",
+                      "logicFlavour": "UNDEFINED",
+                      "logic": ""
+                    },
+                    "stateFinalizerLogicMap": {
+                      "entry": []
+                    },
+                    "defaultTask": {
+                      "name": "GetVCPEStateTask",
+                      "version": "0.0.1"
+                    },
+                    "taskReferences": {
+                      "entry": [
+                        {
+                          "key": {
+                            "name": "GetVCPEStateTask",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "ReceiveEventPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "GetVCPEState",
+                              "localName": "ReceiveEventPolicy"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "ReceiveEventPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "GetVCPEState",
+                              "localName": "GetVCPEStateOutput"
+                            }
+                          }
+                        }
+                      ]
+                    }
+                  }
+                },
+                {
+                  "key": "OnsetOrAbatedState",
+                  "value": {
+                    "stateKey": {
+                      "parentKeyName": "ReceiveEventPolicy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "OnsetOrAbatedState"
+                    },
+                    "trigger": {
+                      "name": "VCPEStateUpdatedEvent",
+                      "version": "0.0.1"
+                    },
+                    "stateOutputs": {
+                      "entry": [
+                        {
+                          "key": "AbatedOutput",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "ReceiveEventPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "OnsetOrAbatedState",
+                              "localName": "AbatedOutput"
+                            },
+                            "outgoingEvent": {
+                              "name": "VCPEStateUpdatedEvent",
+                              "version": "0.0.1"
+                            },
+                            "outgoingEventReference": [
+                              {
+                                "name": "VCPEStateUpdatedEvent",
+                                "version": "0.0.1"
+                              }
+                            ],
+                            "nextState": {
+                              "parentKeyName": "ReceiveEventPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "AbatedState"
+                            }
+                          }
+                        },
+                        {
+                          "key": "OnsetOutput",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "ReceiveEventPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "OnsetOrAbatedState",
+                              "localName": "OnsetOutput"
+                            },
+                            "outgoingEvent": {
+                              "name": "GuardRequestEvent",
+                              "version": "0.0.1"
+                            },
+                            "outgoingEventReference": [
+                              {
+                                "name": "GuardRequestEvent",
+                                "version": "0.0.1"
+                              }
+                            ],
+                            "nextState": {
+                              "parentKeyName": "NULL",
+                              "parentKeyVersion": "0.0.0",
+                              "parentLocalName": "NULL",
+                              "localName": "NULL"
+                            }
+                          }
+                        }
+                      ]
+                    },
+                    "contextAlbumReference": [
+                      {
+                        "name": "VCPEClosedLoopStatusAlbum",
+                        "version": "0.0.1"
+                      }
+                    ],
+                    "taskSelectionLogic": {
+                      "key": "TaskSelectionLogic",
+                      "logicFlavour": "JAVASCRIPT",
+                      "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n *  Modifications Copyright (C) 2020 Nordix Foundation.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *      http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.info(executor.subject.id);\nexecutor.logger.info(executor.inFields);\n\nvar returnValue = true;\nvar status = null;\n\nif( executor.inFields.get(\"vnfID\") == null) {\n   executor.logger.info(\"OnsetOrAbatedStateTSL: vnfID is null\");\n   var vnfName = executor.inFields.get(\"vnfName\");\n   var vcpeClosedLoopStatus = executor.getContextAlbum(\"VCPEClosedLoopStatusAlbum\").get(\n        executor.inFields.get(\"vnfName\"));\n   status = vcpeClosedLoopStatus.get(\"closedLoopEventStatus\").toString();\n} else {\n   var vcpeClosedLoopStatus = executor.getContextAlbum(\"VCPEClosedLoopStatusAlbum\").get(\n        executor.inFields.get(\"vnfID\").toString());\n   status = vcpeClosedLoopStatus.get(\"closedLoopEventStatus\").toString();\n}\n\nif (status == \"ONSET\") {\n    executor.subject.getTaskKey(\"GuardRequestTask\").copyTo(executor.selectedTask);\n} else if (status == \"ABATED\") {\n    executor.subject.getTaskKey(\"AbatedTask\").copyTo(executor.selectedTask);\n    onsetFlag = executor.isFalse;\n} else {\n    executor.message = \"closedLoopEventStatus is \\\"\" + status + \"\\\", it must be either \\\"ONSET\\\" or \\\"ABATED\\\"\";\n    returnValue = false;\n}\n\nexecutor.logger.info(\"ReceiveEventPolicyOnsetOrAbatedStateTSL State Selected Task:\" + executor.selectedTask);\n\nreturnValue;"
+                    },
+                    "stateFinalizerLogicMap": {
+                      "entry": []
+                    },
+                    "defaultTask": {
+                      "name": "AbatedTask",
+                      "version": "0.0.1"
+                    },
+                    "taskReferences": {
+                      "entry": [
+                        {
+                          "key": {
+                            "name": "AbatedTask",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "ReceiveEventPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "OnsetOrAbatedState",
+                              "localName": "ReceiveEventPolicy"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "ReceiveEventPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "OnsetOrAbatedState",
+                              "localName": "AbatedOutput"
+                            }
+                          }
+                        },
+                        {
+                          "key": {
+                            "name": "GuardRequestTask",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "ReceiveEventPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "OnsetOrAbatedState",
+                              "localName": "ReceiveEventPolicy"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "ReceiveEventPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "OnsetOrAbatedState",
+                              "localName": "OnsetOutput"
+                            }
+                          }
+                        }
+                      ]
+                    }
+                  }
+                },
+                {
+                  "key": "RequestAAIState",
+                  "value": {
+                    "stateKey": {
+                      "parentKeyName": "ReceiveEventPolicy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "RequestAAIState"
+                    },
+                    "trigger": {
+                      "name": "VCPEStateUpdatedEvent",
+                      "version": "0.0.1"
+                    },
+                    "stateOutputs": {
+                      "entry": [
+                        {
+                          "key": "RequestAAIStateOutput",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "ReceiveEventPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "RequestAAIState",
+                              "localName": "RequestAAIStateOutput"
+                            },
+                            "outgoingEvent": {
+                              "name": "VCPEStateUpdatedEvent",
+                              "version": "0.0.1"
+                            },
+                            "outgoingEventReference": [
+                              {
+                                "name": "VCPEStateUpdatedEvent",
+                                "version": "0.0.1"
+                              }
+                            ],
+                            "nextState": {
+                              "parentKeyName": "ReceiveEventPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "OnsetOrAbatedState"
+                            }
+                          }
+                        }
+                      ]
+                    },
+                    "contextAlbumReference": [
+                      {
+                        "name": "VCPEClosedLoopStatusAlbum",
+                        "version": "0.0.1"
+                      }
+                    ],
+                    "taskSelectionLogic": {
+                      "key": "NULL",
+                      "logicFlavour": "UNDEFINED",
+                      "logic": ""
+                    },
+                    "stateFinalizerLogicMap": {
+                      "entry": []
+                    },
+                    "defaultTask": {
+                      "name": "AAILookupTask",
+                      "version": "0.0.1"
+                    },
+                    "taskReferences": {
+                      "entry": [
+                        {
+                          "key": {
+                            "name": "AAILookupTask",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "ReceiveEventPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "RequestAAIState",
+                              "localName": "ReceiveEventPolicy"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "ReceiveEventPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "RequestAAIState",
+                              "localName": "RequestAAIStateOutput"
+                            }
+                          }
+                        }
+                      ]
+                    }
+                  }
+                }
+              ]
+            },
+            "firstState": "GetVCPEState"
+          }
+        },
+        {
+          "key": {
+            "name": "RestartAPPCRequestPolicy",
+            "version": "0.0.1"
+          },
+          "value": {
+            "policyKey": {
+              "name": "RestartAPPCRequestPolicy",
+              "version": "0.0.1"
+            },
+            "template": "Freestyle",
+            "state": {
+              "entry": [
+                {
+                  "key": "DeniedState",
+                  "value": {
+                    "stateKey": {
+                      "parentKeyName": "RestartAPPCRequestPolicy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "DeniedState"
+                    },
+                    "trigger": {
+                      "name": "VCPEStateUpdatedEvent",
+                      "version": "0.0.1"
+                    },
+                    "stateOutputs": {
+                      "entry": [
+                        {
+                          "key": "DeniedOutput",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "RestartAPPCRequestPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "DeniedState",
+                              "localName": "DeniedOutput"
+                            },
+                            "outgoingEvent": {
+                              "name": "ControlLoopLogEvent",
+                              "version": "0.0.1"
+                            },
+                            "outgoingEventReference": [
+                              {
+                                "name": "ControlLoopLogEvent",
+                                "version": "0.0.1"
+                              }
+                            ],
+                            "nextState": {
+                              "parentKeyName": "NULL",
+                              "parentKeyVersion": "0.0.0",
+                              "parentLocalName": "NULL",
+                              "localName": "NULL"
+                            }
+                          }
+                        }
+                      ]
+                    },
+                    "contextAlbumReference": [],
+                    "taskSelectionLogic": {
+                      "key": "NULL",
+                      "logicFlavour": "UNDEFINED",
+                      "logic": ""
+                    },
+                    "stateFinalizerLogicMap": {
+                      "entry": []
+                    },
+                    "defaultTask": {
+                      "name": "ControlLoopLogTask",
+                      "version": "0.0.1"
+                    },
+                    "taskReferences": {
+                      "entry": [
+                        {
+                          "key": {
+                            "name": "ControlLoopLogTask",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "RestartAPPCRequestPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "DeniedState",
+                              "localName": "RestartAPPCRequestPolicy"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "RestartAPPCRequestPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "DeniedState",
+                              "localName": "DeniedOutput"
+                            }
+                          }
+                        }
+                      ]
+                    }
+                  }
+                },
+                {
+                  "key": "PermitOrDenyState",
+                  "value": {
+                    "stateKey": {
+                      "parentKeyName": "RestartAPPCRequestPolicy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "PermitOrDenyState"
+                    },
+                    "trigger": {
+                      "name": "VCPEStateUpdatedEvent",
+                      "version": "0.0.1"
+                    },
+                    "stateOutputs": {
+                      "entry": [
+                        {
+                          "key": "DenyOutput",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "RestartAPPCRequestPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "PermitOrDenyState",
+                              "localName": "DenyOutput"
+                            },
+                            "outgoingEvent": {
+                              "name": "VCPEStateUpdatedEvent",
+                              "version": "0.0.1"
+                            },
+                            "outgoingEventReference": [
+                              {
+                                "name": "VCPEStateUpdatedEvent",
+                                "version": "0.0.1"
+                              }
+                            ],
+                            "nextState": {
+                              "parentKeyName": "RestartAPPCRequestPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "DeniedState"
+                            }
+                          }
+                        },
+                        {
+                          "key": "PermitOutput",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "RestartAPPCRequestPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "PermitOrDenyState",
+                              "localName": "PermitOutput"
+                            },
+                            "outgoingEvent": {
+                              "name": "APPCRestartVNFRequestEvent",
+                              "version": "2.0.0"
+                            },
+                            "outgoingEventReference": [
+                              {
+                                "name": "APPCRestartVNFRequestEvent",
+                                "version": "2.0.0"
+                              }
+                            ],
+                            "nextState": {
+                              "parentKeyName": "NULL",
+                              "parentKeyVersion": "0.0.0",
+                              "parentLocalName": "NULL",
+                              "localName": "NULL"
+                            }
+                          }
+                        }
+                      ]
+                    },
+                    "contextAlbumReference": [
+                      {
+                        "name": "VCPEClosedLoopStatusAlbum",
+                        "version": "0.0.1"
+                      }
+                    ],
+                    "taskSelectionLogic": {
+                      "key": "TaskSelectionLogic",
+                      "logicFlavour": "JAVASCRIPT",
+                      "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n *  Modifications Copyright (C) 2020 Nordix Foundation.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *      http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.info(executor.subject.id);\nexecutor.logger.info(executor.inFields);\n\nvar vcpeClosedLoopStatus = executor.getContextAlbum(\"VCPEClosedLoopStatusAlbum\").get(\n        executor.inFields.get(\"vnfID\").toString());\n\nvar guardResult = vcpeClosedLoopStatus.get(\"notification\");\n\nif (guardResult == \"OPERATION: GUARD_PERMIT\") {\n    executor.subject.getTaskKey(\"APPCRestartVNFRequestTask\").copyTo(executor.selectedTask);\n} else {\n    executor.subject.getTaskKey(\"DeniedTask\").copyTo(executor.selectedTask);\n}\n\nexecutor.logger.info(\"RestartAPPCRequestPolicyPermitOrDenyTSL State Selected Task:\" + executor.selectedTask);\n\ntrue;"
+                    },
+                    "stateFinalizerLogicMap": {
+                      "entry": []
+                    },
+                    "defaultTask": {
+                      "name": "DeniedTask",
+                      "version": "0.0.1"
+                    },
+                    "taskReferences": {
+                      "entry": [
+                        {
+                          "key": {
+                            "name": "APPCRestartVNFRequestTask",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "RestartAPPCRequestPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "PermitOrDenyState",
+                              "localName": "RestartAPPCRequestPolicy"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "RestartAPPCRequestPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "PermitOrDenyState",
+                              "localName": "PermitOutput"
+                            }
+                          }
+                        },
+                        {
+                          "key": {
+                            "name": "DeniedTask",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "RestartAPPCRequestPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "PermitOrDenyState",
+                              "localName": "RestartAPPCRequestPolicy"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "RestartAPPCRequestPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "PermitOrDenyState",
+                              "localName": "DenyOutput"
+                            }
+                          }
+                        }
+                      ]
+                    }
+                  }
+                },
+                {
+                  "key": "PolicyGuardResponseState",
+                  "value": {
+                    "stateKey": {
+                      "parentKeyName": "RestartAPPCRequestPolicy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "PolicyGuardResponseState"
+                    },
+                    "trigger": {
+                      "name": "GuardResponseEvent",
+                      "version": "0.0.1"
+                    },
+                    "stateOutputs": {
+                      "entry": [
+                        {
+                          "key": "GuardResponseOutput",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "RestartAPPCRequestPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "PolicyGuardResponseState",
+                              "localName": "GuardResponseOutput"
+                            },
+                            "outgoingEvent": {
+                              "name": "VCPEStateUpdatedEvent",
+                              "version": "0.0.1"
+                            },
+                            "outgoingEventReference": [
+                              {
+                                "name": "VCPEStateUpdatedEvent",
+                                "version": "0.0.1"
+                              }
+                            ],
+                            "nextState": {
+                              "parentKeyName": "RestartAPPCRequestPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "PermitOrDenyState"
+                            }
+                          }
+                        }
+                      ]
+                    },
+                    "contextAlbumReference": [],
+                    "taskSelectionLogic": {
+                      "key": "NULL",
+                      "logicFlavour": "UNDEFINED",
+                      "logic": ""
+                    },
+                    "stateFinalizerLogicMap": {
+                      "entry": []
+                    },
+                    "defaultTask": {
+                      "name": "GuardResponseTask",
+                      "version": "0.0.1"
+                    },
+                    "taskReferences": {
+                      "entry": [
+                        {
+                          "key": {
+                            "name": "GuardResponseTask",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "RestartAPPCRequestPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "PolicyGuardResponseState",
+                              "localName": "RestartAPPCRequestPolicy"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "RestartAPPCRequestPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "PolicyGuardResponseState",
+                              "localName": "GuardResponseOutput"
+                            }
+                          }
+                        }
+                      ]
+                    }
+                  }
+                }
+              ]
+            },
+            "firstState": "PolicyGuardResponseState"
+          }
+        },
+        {
+          "key": {
+            "name": "RestartAPPCResponsePolicy",
+            "version": "0.0.1"
+          },
+          "value": {
+            "policyKey": {
+              "name": "RestartAPPCResponsePolicy",
+              "version": "0.0.1"
+            },
+            "template": "Freestyle",
+            "state": {
+              "entry": [
+                {
+                  "key": "ResponseLogState",
+                  "value": {
+                    "stateKey": {
+                      "parentKeyName": "RestartAPPCResponsePolicy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "ResponseLogState"
+                    },
+                    "trigger": {
+                      "name": "VCPEStateUpdatedEvent",
+                      "version": "0.0.1"
+                    },
+                    "stateOutputs": {
+                      "entry": [
+                        {
+                          "key": "ResponseLogOutput",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "RestartAPPCResponsePolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "ResponseLogState",
+                              "localName": "ResponseLogOutput"
+                            },
+                            "outgoingEvent": {
+                              "name": "ControlLoopLogEvent",
+                              "version": "0.0.1"
+                            },
+                            "outgoingEventReference": [
+                              {
+                                "name": "ControlLoopLogEvent",
+                                "version": "0.0.1"
+                              }
+                            ],
+                            "nextState": {
+                              "parentKeyName": "NULL",
+                              "parentKeyVersion": "0.0.0",
+                              "parentLocalName": "NULL",
+                              "localName": "NULL"
+                            }
+                          }
+                        }
+                      ]
+                    },
+                    "contextAlbumReference": [],
+                    "taskSelectionLogic": {
+                      "key": "NULL",
+                      "logicFlavour": "UNDEFINED",
+                      "logic": ""
+                    },
+                    "stateFinalizerLogicMap": {
+                      "entry": []
+                    },
+                    "defaultTask": {
+                      "name": "ControlLoopLogTask",
+                      "version": "0.0.1"
+                    },
+                    "taskReferences": {
+                      "entry": [
+                        {
+                          "key": {
+                            "name": "ControlLoopLogTask",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "RestartAPPCResponsePolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "ResponseLogState",
+                              "localName": "RestartAPPCResponsePolicy"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "RestartAPPCResponsePolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "ResponseLogState",
+                              "localName": "ResponseLogOutput"
+                            }
+                          }
+                        }
+                      ]
+                    }
+                  }
+                },
+                {
+                  "key": "RestartAPPCResponseState",
+                  "value": {
+                    "stateKey": {
+                      "parentKeyName": "RestartAPPCResponsePolicy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "RestartAPPCResponseState"
+                    },
+                    "trigger": {
+                      "name": "APPCRestartVNFResponseEvent",
+                      "version": "2.0.0"
+                    },
+                    "stateOutputs": {
+                      "entry": [
+                        {
+                          "key": "APPCRestartVNFResponseOutput",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "RestartAPPCResponsePolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "RestartAPPCResponseState",
+                              "localName": "APPCRestartVNFResponseOutput"
+                            },
+                            "outgoingEvent": {
+                              "name": "VCPEStateUpdatedEvent",
+                              "version": "0.0.1"
+                            },
+                            "outgoingEventReference": [
+                              {
+                                "name": "VCPEStateUpdatedEvent",
+                                "version": "0.0.1"
+                              }
+                            ],
+                            "nextState": {
+                              "parentKeyName": "RestartAPPCResponsePolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "ResponseLogState"
+                            }
+                          }
+                        }
+                      ]
+                    },
+                    "contextAlbumReference": [],
+                    "taskSelectionLogic": {
+                      "key": "NULL",
+                      "logicFlavour": "UNDEFINED",
+                      "logic": ""
+                    },
+                    "stateFinalizerLogicMap": {
+                      "entry": []
+                    },
+                    "defaultTask": {
+                      "name": "APPCRestartVNFResponseTask",
+                      "version": "0.0.1"
+                    },
+                    "taskReferences": {
+                      "entry": [
+                        {
+                          "key": {
+                            "name": "APPCRestartVNFResponseTask",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "RestartAPPCResponsePolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "RestartAPPCResponseState",
+                              "localName": "RestartAPPCResponsePolicy"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "RestartAPPCResponsePolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "RestartAPPCResponseState",
+                              "localName": "APPCRestartVNFResponseOutput"
+                            }
+                          }
+                        }
+                      ]
+                    }
+                  }
+                }
+              ]
+            },
+            "firstState": "RestartAPPCResponseState"
+          }
+        }
+      ]
+    }
+  },
+  "tasks": {
+    "key": {
+      "name": "ONAPvCPEPolicyModel_Tasks",
+      "version": "0.0.1"
+    },
+    "taskMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "AAILookupTask",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "AAILookupTask",
+              "version": "0.0.1"
+            },
+            "inputEvent": {
+              "key": {
+                "name": "VCPEStateUpdatedEvent",
+                "version": "0.0.1"
+              },
+              "nameSpace": "org.onap.policy.apex.onap.vcpe",
+              "source": "APEX",
+              "target": "APEX",
+              "parameter": {
+                "entry": [
+                  {
+                    "key": "requestID",
+                    "value": {
+                      "key": "requestID",
+                      "fieldSchemaKey": {
+                        "name": "UUIDType",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "vnfID",
+                    "value": {
+                      "key": "vnfID",
+                      "fieldSchemaKey": {
+                        "name": "UUIDType",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "vnfName",
+                    "value": {
+                      "key": "vnfName",
+                      "fieldSchemaKey": {
+                        "name": "SimpleStringType",
+                        "version": "0.0.1"
+                      },
+                      "optional": true
+                    }
+                  }
+                ]
+              },
+              "toscaPolicyState": ""
+            },
+            "outputEvents": {
+              "entry": [
+                {
+                  "key": "VCPEStateUpdatedEvent",
+                  "value": {
+                    "key": {
+                      "name": "VCPEStateUpdatedEvent",
+                      "version": "0.0.1"
+                    },
+                    "nameSpace": "org.onap.policy.apex.onap.vcpe",
+                    "source": "APEX",
+                    "target": "APEX",
+                    "parameter": {
+                      "entry": [
+                        {
+                          "key": "requestID",
+                          "value": {
+                            "key": "requestID",
+                            "fieldSchemaKey": {
+                              "name": "UUIDType",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "vnfID",
+                          "value": {
+                            "key": "vnfID",
+                            "fieldSchemaKey": {
+                              "name": "UUIDType",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "vnfName",
+                          "value": {
+                            "key": "vnfName",
+                            "fieldSchemaKey": {
+                              "name": "SimpleStringType",
+                              "version": "0.0.1"
+                            },
+                            "optional": true
+                          }
+                        }
+                      ]
+                    },
+                    "toscaPolicyState": ""
+                  }
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": []
+            },
+            "contextAlbumReference": [
+              {
+                "name": "VCPEClosedLoopStatusAlbum",
+                "version": "0.0.1"
+              }
+            ],
+            "taskLogic": {
+              "key": "TaskLogic",
+              "logicFlavour": "JAVASCRIPT",
+              "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n *  Modifications Copyright (C) 2020 Nordix Foundation.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *      http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.info(executor.subject.id);\nexecutor.logger.info(executor.inFields);\n\nvar vcpeClosedLoopStatus = executor.getContextAlbum(\"VCPEClosedLoopStatusAlbum\").get(\n        executor.inFields.get(\"vnfID\").toString());\n\nexecutor.logger.info(\"Executing A&AI Lookup\");\nexecutor.logger.info(vcpeClosedLoopStatus);\n\nvar aaiInfo = vcpeClosedLoopStatus.get(\"AAI\");\nvar returnValue = true;\n\nif (aaiInfo.get(\"vserverName\") == null) {\n    executor.message = \"the field vserver.vserver-name must exist in the onset control loop event\";\n    executor.logger.warn(executor.message);\n    returnValue = false;\n}\nelse if (aaiInfo.get(\"genericVnfVnfId\") == null && aaiInfo.get(\"genericVnfVnfName\") == null) {\n    executor.message = \"either the field generic-vnf.vnf-id or generic-vnf.vnf-name must exist\"\n        + \" in the onset control loop event\";\n    executor.logger.warn(executor.message);\n    returnValue = false;\n}\nelse {\n    var restManager = new org.onap.policy.rest.RestManager;\n    var aaiManager = new org.onap.policy.aai.AaiManager(restManager);\n\n    // We need to instantiate the type in order to trigger the static JAXB handling\n    // in the AaiCqResponse class\n    var aaiCqResponseType = org.onap.policy.aai.AaiCqResponse;\n\n    var aaiResponse = aaiManager.getCustomQueryResponse(\n            \"http://localhost:54321/OnapVCpeSim/sim\",\n            \"aai.username\",\n            \"aai.password\",\n            executor.inFields.get(\"requestID\"),\n            vcpeClosedLoopStatus.get(\"AAI\").get(\"vserverName\")\n    );\n\n    var genericVnf;\n\n    if (aaiInfo.get(\"genericVnfVnfId\") != null) {\n        genericVnf = aaiResponse.getGenericVnfByModelInvariantId(aaiInfo.get(\"genericVnfVnfId\"));\n    }\n    else {\n        genericVnf = aaiResponse.getGenericVnfByVnfName(aaiInfo.get(\"genericVnfVnfId\"));\n    }\n\n    aaiInfo.put(\"genericVnfResourceVersion\",      genericVnf.getResourceVersion());\n    aaiInfo.put(\"genericVnfVnfName\",              genericVnf.getVnfName());\n    aaiInfo.put(\"genericVnfProvStatus\",           genericVnf.getProvStatus());\n    aaiInfo.put(\"genericVnfIsClosedLoopDisabled\", genericVnf.isIsClosedLoopDisabled().toString());\n    aaiInfo.put(\"genericVnfVnfType\",              genericVnf.getVnfType());\n    aaiInfo.put(\"genericVnfInMaint\",              genericVnf.isInMaint().toString());\n    aaiInfo.put(\"genericVnfServiceId\",            genericVnf.getServiceId());\n    aaiInfo.put(\"genericVnfVnfId\",                genericVnf.getVnfId());\n    aaiInfo.put(\"genericVnfOrchestrationStatus\",\n            genericVnf.getVfModules().getVfModule().get(0).getOrchestrationStatus());\n\n    executor.outFields.put(\"requestID\", executor.inFields.get(\"requestID\"));\n    executor.outFields.put(\"vnfID\", executor.inFields.get(\"vnfID\"));\n\n    executor.logger.info(executor.outFields);\n}\n\nreturnValue;"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "APPCRestartVNFRequestTask",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "APPCRestartVNFRequestTask",
+              "version": "0.0.1"
+            },
+            "inputEvent": {
+              "key": {
+                "name": "VCPEStateUpdatedEvent",
+                "version": "0.0.1"
+              },
+              "nameSpace": "org.onap.policy.apex.onap.vcpe",
+              "source": "APEX",
+              "target": "APEX",
+              "parameter": {
+                "entry": [
+                  {
+                    "key": "requestID",
+                    "value": {
+                      "key": "requestID",
+                      "fieldSchemaKey": {
+                        "name": "UUIDType",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "vnfID",
+                    "value": {
+                      "key": "vnfID",
+                      "fieldSchemaKey": {
+                        "name": "UUIDType",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "vnfName",
+                    "value": {
+                      "key": "vnfName",
+                      "fieldSchemaKey": {
+                        "name": "SimpleStringType",
+                        "version": "0.0.1"
+                      },
+                      "optional": true
+                    }
+                  }
+                ]
+              },
+              "toscaPolicyState": ""
+            },
+            "outputEvents": {
+              "entry": [
+                {
+                  "key": "APPCRestartVNFRequestEvent",
+                  "value": {
+                    "key": {
+                      "name": "APPCRestartVNFRequestEvent",
+                      "version": "2.0.0"
+                    },
+                    "nameSpace": "org.onap.policy.apex.onap.vcpe",
+                    "source": "APEX",
+                    "target": "APPC",
+                    "parameter": {
+                      "entry": [
+                        {
+                          "key": "APPCLCMRequestEvent",
+                          "value": {
+                            "key": "APPCLCMRequestEvent",
+                            "fieldSchemaKey": {
+                              "name": "APPCLCMRequestType",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        }
+                      ]
+                    },
+                    "toscaPolicyState": ""
+                  }
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": []
+            },
+            "contextAlbumReference": [
+              {
+                "name": "RequestIDVNFIDAlbum",
+                "version": "0.0.1"
+              },
+              {
+                "name": "VCPEClosedLoopStatusAlbum",
+                "version": "0.0.1"
+              }
+            ],
+            "taskLogic": {
+              "key": "TaskLogic",
+              "logicFlavour": "JAVASCRIPT",
+              "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n *  Modifications Copyright (C) 2020 Nordix Foundation.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *      http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.info(executor.subject.id);\nexecutor.logger.info(executor.inFields);\n\nvar appcRequest = new org.onap.policy.appclcm.AppcLcmDmaapWrapper;\nappcRequest.setBody(new org.onap.policy.appclcm.AppcLcmBody);\nappcRequest.getBody().setInput(new org.onap.policy.appclcm.AppcLcmInput);\nappcRequest.getBody().getInput().setCommonHeader(\n        new org.onap.policy.appclcm.AppcLcmCommonHeader);\n\nappcRequest.setVersion(\"2.0.0\");\nappcRequest.setRpcName(\"restart\");\nappcRequest.setCorrelationId(executor.inFields.get(\"requestID\"));\nappcRequest.setType(\"request\");\n\nvar vcpeClosedLoopStatus = executor\n        .getContextAlbum(\"VCPEClosedLoopStatusAlbum\").get(\n                executor.inFields.get(\"vnfID\").toString());\n\nappcRequest.getBody().getInput().getCommonHeader().setTimeStamp(java.time.Instant.now());\nappcRequest.getBody().getInput().getCommonHeader().setApiVer(\"2.00\");\nappcRequest.getBody().getInput().getCommonHeader().setOriginatorId(\n        executor.inFields.get(\"requestID\").toString());\nappcRequest.getBody().getInput().getCommonHeader().setRequestId(\n        executor.inFields.get(\"requestID\"));\nappcRequest.getBody().getInput().getCommonHeader().setSubRequestId(\"1\");\nappcRequest.getBody().getInput().getCommonHeader().getFlags().put(\"ttl\", \"10000\");\nappcRequest.getBody().getInput().getCommonHeader().getFlags().put(\"force\", \"TRUE\");\nappcRequest.getBody().getInput().getCommonHeader().getFlags().put(\"mode\", \"EXCLUSIVE\");\n\nappcRequest.getBody().getInput().setAction(\"Restart\");\nappcRequest.getBody().getInput().setActionIdentifiers(new java.util.HashMap());\nappcRequest.getBody().getInput().getActionIdentifiers().put(\"vnf-id\",\n        executor.inFields.get(\"vnfID\").toString());\n\nexecutor.getContextAlbum(\"RequestIDVNFIDAlbum\").put(\n        executor.inFields.get(\"requestID\").toString(),\n        executor.inFields.get(\"vnfID\"));\n\nvcpeClosedLoopStatus.put(\"notification\", \"OPERATION\");\nvcpeClosedLoopStatus.put(\"notificationTime\", java.lang.System\n        .currentTimeMillis());\n\nexecutor.outFields.put(\"APPCLCMRequestEvent\", appcRequest);\n\nexecutor.logger.info(executor.outFields);\n\ntrue;"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "APPCRestartVNFResponseTask",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "APPCRestartVNFResponseTask",
+              "version": "0.0.1"
+            },
+            "inputEvent": {
+              "key": {
+                "name": "APPCRestartVNFResponseEvent",
+                "version": "2.0.0"
+              },
+              "nameSpace": "org.onap.policy.apex.onap.vcpe",
+              "source": "APEX",
+              "target": "APPC",
+              "parameter": {
+                "entry": [
+                  {
+                    "key": "APPCLCMResponseEvent",
+                    "value": {
+                      "key": "APPCLCMResponseEvent",
+                      "fieldSchemaKey": {
+                        "name": "APPCLCMResponseType",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  }
+                ]
+              },
+              "toscaPolicyState": ""
+            },
+            "outputEvents": {
+              "entry": [
+                {
+                  "key": "VCPEStateUpdatedEvent",
+                  "value": {
+                    "key": {
+                      "name": "VCPEStateUpdatedEvent",
+                      "version": "0.0.1"
+                    },
+                    "nameSpace": "org.onap.policy.apex.onap.vcpe",
+                    "source": "APEX",
+                    "target": "APEX",
+                    "parameter": {
+                      "entry": [
+                        {
+                          "key": "requestID",
+                          "value": {
+                            "key": "requestID",
+                            "fieldSchemaKey": {
+                              "name": "UUIDType",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "vnfID",
+                          "value": {
+                            "key": "vnfID",
+                            "fieldSchemaKey": {
+                              "name": "UUIDType",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "vnfName",
+                          "value": {
+                            "key": "vnfName",
+                            "fieldSchemaKey": {
+                              "name": "SimpleStringType",
+                              "version": "0.0.1"
+                            },
+                            "optional": true
+                          }
+                        }
+                      ]
+                    },
+                    "toscaPolicyState": ""
+                  }
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": []
+            },
+            "contextAlbumReference": [
+              {
+                "name": "RequestIDVNFIDAlbum",
+                "version": "0.0.1"
+              },
+              {
+                "name": "VCPEClosedLoopStatusAlbum",
+                "version": "0.0.1"
+              }
+            ],
+            "taskLogic": {
+              "key": "TaskLogic",
+              "logicFlavour": "JAVASCRIPT",
+              "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n *  Modifications Copyright (C) 2020 Nordix Foundation.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *      http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * APPC LCM Response code: 100 ACCEPTED\n *                         200 ERROR UNEXPECTED ERROR means failure\n *                         312 REJECTED DUPLICATE REQUEST\n *                         400 SUCCESS\n *\n * Note: Sometimes the corelationId has a -1 at the tail, need to get rid of it when present.\n *\n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.info(executor.subject.id);\nexecutor.logger.info(executor.inFields);\n\nvar appcResponse = executor.inFields.get(\"APPCLCMResponseEvent\");\n\nvar requestIDString = appcResponse.getCorrelationId().substr(0, 36);\nexecutor.logger.info(\"requestIDString = \" + requestIDString);\nvar vnfID = executor.getContextAlbum(\"RequestIDVNFIDAlbum\")\n        .get(requestIDString);\nexecutor.logger.info(\"Size of RequestIDVNFIDAlbum = \"\n        + executor.getContextAlbum(\"RequestIDVNFIDAlbum\").size());\nexecutor.logger.info(\"vnfID = \" + vnfID);\n\nvar returnValue = true;\n\nif (vnfID != null) {\n    var vcpeClosedLoopStatus = executor.getContextAlbum(\n            \"VCPEClosedLoopStatusAlbum\").get(vnfID.toString());\n    var requestId = java.util.UUID.fromString(vcpeClosedLoopStatus\n            .get(\"requestID\"));\n\n    vcpeClosedLoopStatus.put(\"notificationTime\", java.lang.System\n            .currentTimeMillis());\n\n    executor.logger.info(\"Got from APPC code: \"\n            + org.onap.policy.appclcm.AppcLcmResponseCode\n                    .toResponseValue(appcResponse.getBody().getOutput()\n                            .getStatus().getCode()));\n\n    if (org.onap.policy.appclcm.AppcLcmResponseCode\n            .toResponseValue(appcResponse.getBody().getOutput().getStatus()\n                    .getCode()) == org.onap.policy.appclcm.AppcLcmResponseCode.SUCCESS) {\n        vcpeClosedLoopStatus.put(\"notification\", \"OPERATION_SUCCESS\");\n        vcpeClosedLoopStatus.put(\"message\", \"vCPE restarted\");\n        executor.getContextAlbum(\"RequestIDVNFIDAlbum\").remove(requestIDString);\n    } else if (org.onap.policy.appclcm.AppcLcmResponseCode\n            .toResponseValue(appcResponse.getBody().getOutput().getStatus()\n                    .getCode()) == \"ACCEPTED\"\n            || org.onap.policy.appclcm.AppcLcmResponseCode\n                    .toResponseValue(appcResponse.getBody().getOutput()\n                            .getStatus().getCode()) == \"REJECT\") {\n        executor.logger\n                .info(\"Got ACCEPTED 100 or REJECT 312, keep the context, wait for next response. Code is: \"\n                        + org.onap.policy.appclcm.AppcLcmResponseCode\n                                .toResponseValue(appcResponse.getBody()\n                                        .getOutput().getStatus().getCode()));\n    } else {\n        executor.getContextAlbum(\"RequestIDVNFIDAlbum\").remove(requestIDString);\n        vcpeClosedLoopStatus.put(\"notification\", \"OPERATION_FAILURE\");\n        vcpeClosedLoopStatus.put(\"message\", \"vCPE restart failed\");\n    }\n\n    executor.outFields.put(\"requestID\", requestId);\n    executor.outFields.put(\"vnfID\", vnfID);\n} else {\n    executor.message = \"VNF ID not found in context album for request ID \"\n            + requestIDString;\n    returnValue = false\n}\n\nexecutor.logger.info(executor.outFields);\n\nreturnValue;"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "AbatedTask",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "AbatedTask",
+              "version": "0.0.1"
+            },
+            "inputEvent": {
+              "key": {
+                "name": "VCPEStateUpdatedEvent",
+                "version": "0.0.1"
+              },
+              "nameSpace": "org.onap.policy.apex.onap.vcpe",
+              "source": "APEX",
+              "target": "APEX",
+              "parameter": {
+                "entry": [
+                  {
+                    "key": "requestID",
+                    "value": {
+                      "key": "requestID",
+                      "fieldSchemaKey": {
+                        "name": "UUIDType",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "vnfID",
+                    "value": {
+                      "key": "vnfID",
+                      "fieldSchemaKey": {
+                        "name": "UUIDType",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "vnfName",
+                    "value": {
+                      "key": "vnfName",
+                      "fieldSchemaKey": {
+                        "name": "SimpleStringType",
+                        "version": "0.0.1"
+                      },
+                      "optional": true
+                    }
+                  }
+                ]
+              },
+              "toscaPolicyState": ""
+            },
+            "outputEvents": {
+              "entry": [
+                {
+                  "key": "VCPEStateUpdatedEvent",
+                  "value": {
+                    "key": {
+                      "name": "VCPEStateUpdatedEvent",
+                      "version": "0.0.1"
+                    },
+                    "nameSpace": "org.onap.policy.apex.onap.vcpe",
+                    "source": "APEX",
+                    "target": "APEX",
+                    "parameter": {
+                      "entry": [
+                        {
+                          "key": "requestID",
+                          "value": {
+                            "key": "requestID",
+                            "fieldSchemaKey": {
+                              "name": "UUIDType",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "vnfID",
+                          "value": {
+                            "key": "vnfID",
+                            "fieldSchemaKey": {
+                              "name": "UUIDType",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "vnfName",
+                          "value": {
+                            "key": "vnfName",
+                            "fieldSchemaKey": {
+                              "name": "SimpleStringType",
+                              "version": "0.0.1"
+                            },
+                            "optional": true
+                          }
+                        }
+                      ]
+                    },
+                    "toscaPolicyState": ""
+                  }
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": []
+            },
+            "contextAlbumReference": [
+              {
+                "name": "VCPEClosedLoopStatusAlbum",
+                "version": "0.0.1"
+              }
+            ],
+            "taskLogic": {
+              "key": "TaskLogic",
+              "logicFlavour": "JAVASCRIPT",
+              "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n *  Modifications Copyright (C) 2020 Nordix Foundation.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *      http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.info(executor.subject.id);\nexecutor.logger.info(executor.inFields);\n\nvar vcpeClosedLoopStatus = null;\nif( executor.inFields.get(\"vnfID\") == null) {\n   executor.logger.info(\"AbatedTask: vnfID is null\");\n   var vnfName = executor.inFields.get(\"vnfName\");\n   vcpeClosedLoopStatus = executor.getContextAlbum(\"VCPEClosedLoopStatusAlbum\").get(\n        executor.inFields.get(\"vnfName\"));\n} else {\n   vcpeClosedLoopStatus = executor.getContextAlbum(\"VCPEClosedLoopStatusAlbum\").get(\n        executor.inFields.get(\"vnfID\").toString());\n}\n\nvcpeClosedLoopStatus.put(\"notification\",     \"FINAL_SUCCESS\");\nvcpeClosedLoopStatus.put(\"notificationTime\", java.lang.System.currentTimeMillis());\nvcpeClosedLoopStatus.put(\"message\",          \"situation has been abated\");\n\nexecutor.logger.info(executor.outFields);\n\ntrue;"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "ControlLoopLogTask",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "ControlLoopLogTask",
+              "version": "0.0.1"
+            },
+            "inputEvent": {
+              "key": {
+                "name": "VCPEStateUpdatedEvent",
+                "version": "0.0.1"
+              },
+              "nameSpace": "org.onap.policy.apex.onap.vcpe",
+              "source": "APEX",
+              "target": "APEX",
+              "parameter": {
+                "entry": [
+                  {
+                    "key": "requestID",
+                    "value": {
+                      "key": "requestID",
+                      "fieldSchemaKey": {
+                        "name": "UUIDType",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "vnfID",
+                    "value": {
+                      "key": "vnfID",
+                      "fieldSchemaKey": {
+                        "name": "UUIDType",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "vnfName",
+                    "value": {
+                      "key": "vnfName",
+                      "fieldSchemaKey": {
+                        "name": "SimpleStringType",
+                        "version": "0.0.1"
+                      },
+                      "optional": true
+                    }
+                  }
+                ]
+              },
+              "toscaPolicyState": ""
+            },
+            "outputEvents": {
+              "entry": [
+                {
+                  "key": "ControlLoopLogEvent",
+                  "value": {
+                    "key": {
+                      "name": "ControlLoopLogEvent",
+                      "version": "0.0.1"
+                    },
+                    "nameSpace": "org.onap.policy.apex.onap.vcpe",
+                    "source": "APEX",
+                    "target": "APEX",
+                    "parameter": {
+                      "entry": [
+                        {
+                          "key": "VirtualControlLoopNotification",
+                          "value": {
+                            "key": "VirtualControlLoopNotification",
+                            "fieldSchemaKey": {
+                              "name": "VirtualControlLoopNotificationType",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        }
+                      ]
+                    },
+                    "toscaPolicyState": ""
+                  }
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": []
+            },
+            "contextAlbumReference": [
+              {
+                "name": "VCPEClosedLoopStatusAlbum",
+                "version": "0.0.1"
+              }
+            ],
+            "taskLogic": {
+              "key": "TaskLogic",
+              "logicFlavour": "JAVASCRIPT",
+              "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n *  Modifications Copyright (C) 2020 Nordix Foundation.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *      http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.info(executor.subject.id);\nexecutor.logger.info(executor.inFields);\n\nvar vnfID = executor.inFields.get(\"vnfID\");\nif(vnfID == null) {\n   vnfID = executor.inFields.get(\"vnfName\");\n}\nexecutor.logger.info(\"vnfID=\" + vnfID);\n\nvar vcpeClosedLoopStatus = executor.getContextAlbum(\"VCPEClosedLoopStatusAlbum\").get(vnfID.toString());\n\nexecutor.logger.info(\"Logging context information for VNF \\\"\" + vnfID + \"\\\"\");\n\nvar clNotification = new org.onap.policy.controlloop.VirtualControlLoopNotification();\n\nclNotification.setClosedLoopControlName(vcpeClosedLoopStatus.get(\"closedLoopControlName\"));\nclNotification.setClosedLoopAlarmStart(java.time.Instant.ofEpochMilli(vcpeClosedLoopStatus.get(\"closedLoopAlarmStart\")));\nclNotification.setClosedLoopAlarmEnd(java.time.Instant.ofEpochMilli(vcpeClosedLoopStatus.get(\"closedLoopAlarmEnd\")));\nclNotification.setClosedLoopEventClient(vcpeClosedLoopStatus.get(\"closedLoopEventClient\"));\nclNotification.setVersion(vcpeClosedLoopStatus.get(\"version\"));\nclNotification.setRequestId(java.util.UUID.fromString(vcpeClosedLoopStatus.get(\"requestID\")));\nclNotification.setTargetType(vcpeClosedLoopStatus.get(\"target_type\"));\nclNotification.setTarget(vcpeClosedLoopStatus.get(\"target\"));\nclNotification.setFrom(vcpeClosedLoopStatus.get(\"from\"));\nclNotification.setPolicyScope(vcpeClosedLoopStatus.get(\"policyScope\"));\nclNotification.setPolicyName(vcpeClosedLoopStatus.get(\"policyName\"));\nclNotification.setPolicyVersion(vcpeClosedLoopStatus.get(\"policyVersion\"));\nclNotification.setNotification(org.onap.policy.controlloop.ControlLoopNotificationType.toType(vcpeClosedLoopStatus.get(\"notification\")));\nclNotification.setMessage(vcpeClosedLoopStatus.get(\"message\"));\n\nvar notificationInstant = java.time.Instant.ofEpochSecond(vcpeClosedLoopStatus.get(\"notificationTime\"));\nvar notificationTime = java.time.ZonedDateTime.ofInstant(notificationInstant, java.time.ZoneOffset.UTC);\nclNotification.setNotificationTime(notificationTime);\n\nvar aaiInfo = vcpeClosedLoopStatus.get(\"AAI\");\n\nclNotification.getAai().put(\"generic-vnf.resource-version\",        aaiInfo.get(\"genericVnfResourceVersion\"));\nclNotification.getAai().put(\"generic-vnf.vnf-name\",                aaiInfo.get(\"genericVnfVnfName\"));\nclNotification.getAai().put(\"generic-vnf.prov-status\",             aaiInfo.get(\"genericVnfProvStatus\"));\nclNotification.getAai().put(\"generic-vnf.is-closed-loop-disabled\", aaiInfo.get(\"genericVnfIsClosedLoopDisabled\"));\nclNotification.getAai().put(\"generic-vnf.orchestration-status\",    aaiInfo.get(\"genericVnfOrchestrationStatus\"));\nclNotification.getAai().put(\"generic-vnf.vnf-type\",                aaiInfo.get(\"genericVnfVnfType\"));\nclNotification.getAai().put(\"generic-vnf.in-maint\",                aaiInfo.get(\"genericVnfInMaint\"));\nclNotification.getAai().put(\"generic-vnf.service-id\",              aaiInfo.get(\"genericVnfServiceId\"));\n\nif(vnfID != null) {\n   clNotification.getAai().put(\"generic-vnf.vnf-id\",                  aaiInfo.get(\"genericVnfVnfId\"));\n}\nexecutor.outFields.put(\"VirtualControlLoopNotification\", clNotification);\n\nexecutor.logger.info(executor.outFields);\n\ntrue;"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "DeniedTask",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "DeniedTask",
+              "version": "0.0.1"
+            },
+            "inputEvent": {
+              "key": {
+                "name": "VCPEStateUpdatedEvent",
+                "version": "0.0.1"
+              },
+              "nameSpace": "org.onap.policy.apex.onap.vcpe",
+              "source": "APEX",
+              "target": "APEX",
+              "parameter": {
+                "entry": [
+                  {
+                    "key": "requestID",
+                    "value": {
+                      "key": "requestID",
+                      "fieldSchemaKey": {
+                        "name": "UUIDType",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "vnfID",
+                    "value": {
+                      "key": "vnfID",
+                      "fieldSchemaKey": {
+                        "name": "UUIDType",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "vnfName",
+                    "value": {
+                      "key": "vnfName",
+                      "fieldSchemaKey": {
+                        "name": "SimpleStringType",
+                        "version": "0.0.1"
+                      },
+                      "optional": true
+                    }
+                  }
+                ]
+              },
+              "toscaPolicyState": ""
+            },
+            "outputEvents": {
+              "entry": [
+                {
+                  "key": "VCPEStateUpdatedEvent",
+                  "value": {
+                    "key": {
+                      "name": "VCPEStateUpdatedEvent",
+                      "version": "0.0.1"
+                    },
+                    "nameSpace": "org.onap.policy.apex.onap.vcpe",
+                    "source": "APEX",
+                    "target": "APEX",
+                    "parameter": {
+                      "entry": [
+                        {
+                          "key": "requestID",
+                          "value": {
+                            "key": "requestID",
+                            "fieldSchemaKey": {
+                              "name": "UUIDType",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "vnfID",
+                          "value": {
+                            "key": "vnfID",
+                            "fieldSchemaKey": {
+                              "name": "UUIDType",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "vnfName",
+                          "value": {
+                            "key": "vnfName",
+                            "fieldSchemaKey": {
+                              "name": "SimpleStringType",
+                              "version": "0.0.1"
+                            },
+                            "optional": true
+                          }
+                        }
+                      ]
+                    },
+                    "toscaPolicyState": ""
+                  }
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": []
+            },
+            "contextAlbumReference": [
+              {
+                "name": "VCPEClosedLoopStatusAlbum",
+                "version": "0.0.1"
+              }
+            ],
+            "taskLogic": {
+              "key": "TaskLogic",
+              "logicFlavour": "JAVASCRIPT",
+              "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n *  Modifications Copyright (C) 2020 Nordix Foundation.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *      http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.info(executor.subject.id);\nexecutor.logger.info(executor.inFields);\n\nvar vcpeClosedLoopStatus = executor.getContextAlbum(\"VCPEClosedLoopStatusAlbum\").get(\n        executor.inFields.get(\"vnfID\").toString());\n\nvcpeClosedLoopStatus.put(\"notification\",     \"REJECTED\");\nvcpeClosedLoopStatus.put(\"notificationTime\", java.lang.System.currentTimeMillis());\n\nexecutor.logger.info(executor.outFields);\n\ntrue;"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "GetVCPEStateTask",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "GetVCPEStateTask",
+              "version": "0.0.1"
+            },
+            "inputEvent": {
+              "key": {
+                "name": "ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e",
+                "version": "1.0.2"
+              },
+              "nameSpace": "org.onap.policy.apex.onap.vcpe",
+              "source": "DCAE",
+              "target": "APEX",
+              "parameter": {
+                "entry": [
+                  {
+                    "key": "VirtualControlLoopEvent",
+                    "value": {
+                      "key": "VirtualControlLoopEvent",
+                      "fieldSchemaKey": {
+                        "name": "VirtualControlLoopEventType",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  }
+                ]
+              },
+              "toscaPolicyState": ""
+            },
+            "outputEvents": {
+              "entry": [
+                {
+                  "key": "VCPEStateUpdatedEvent",
+                  "value": {
+                    "key": {
+                      "name": "VCPEStateUpdatedEvent",
+                      "version": "0.0.1"
+                    },
+                    "nameSpace": "org.onap.policy.apex.onap.vcpe",
+                    "source": "APEX",
+                    "target": "APEX",
+                    "parameter": {
+                      "entry": [
+                        {
+                          "key": "requestID",
+                          "value": {
+                            "key": "requestID",
+                            "fieldSchemaKey": {
+                              "name": "UUIDType",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "vnfID",
+                          "value": {
+                            "key": "vnfID",
+                            "fieldSchemaKey": {
+                              "name": "UUIDType",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "vnfName",
+                          "value": {
+                            "key": "vnfName",
+                            "fieldSchemaKey": {
+                              "name": "SimpleStringType",
+                              "version": "0.0.1"
+                            },
+                            "optional": true
+                          }
+                        }
+                      ]
+                    },
+                    "toscaPolicyState": ""
+                  }
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": []
+            },
+            "contextAlbumReference": [
+              {
+                "name": "RequestIDVNFIDAlbum",
+                "version": "0.0.1"
+              },
+              {
+                "name": "VCPEClosedLoopStatusAlbum",
+                "version": "0.0.1"
+              }
+            ],
+            "taskLogic": {
+              "key": "TaskLogic",
+              "logicFlavour": "JAVASCRIPT",
+              "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n *  Modifications Copyright (C) 2020 Nordix Foundation.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *      http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * Note: The incoming closedloop message can be ONSET with both VNF-name and VNF-ID\n *       or ABATED with only VNF-name. So need to handle differently. For ABATED case,\n *       since we still keep the RequireIDVNFID context album, we can get it from there.\n *\n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.info(executor.subject.id);\nexecutor.logger.info(executor.inFields);\n\nvar clEventType = org.onap.policy.controlloop.VirtualControlLoopEvent;\nvar longType = java.lang.Long;\nvar uuidType = java.util.UUID;\n\nvar clEvent = executor.inFields.get(\"VirtualControlLoopEvent\");\n\nexecutor.logger.info(clEvent.toString());\nexecutor.logger.info(clEvent.getClosedLoopControlName());\n\nvar requestID = clEvent.getRequestId();\nexecutor.logger.info(\"requestID = \" + requestID);\nvar vnfID = null;\nvar vcpeClosedLoopStatus = null;\n\nif (clEvent.getAai().get(\"generic-vnf.vnf-id\") != null) {\n   vnfID = uuidType.fromString(clEvent.getAai().get(\"generic-vnf.vnf-id\"));\n   executor.logger.info(\"vnfID = \" + vnfID);\n   vcpeClosedLoopStatus = executor.getContextAlbum(\"VCPEClosedLoopStatusAlbum\").get(vnfID);\n\n   if (vcpeClosedLoopStatus == null) {\n      executor.logger.info(\"Creating context information for new vCPE VNF \\\"\" + vnfID.toString() + \"\\\"\");\n\n      vcpeClosedLoopStatus = executor.getContextAlbum(\"VCPEClosedLoopStatusAlbum\").getSchemaHelper().createNewInstance();\n\n      vcpeClosedLoopStatus.put(\"closedLoopControlName\", clEvent.getClosedLoopControlName());\n      vcpeClosedLoopStatus.put(\"closedLoopAlarmStart\",  clEvent.getClosedLoopAlarmStart().toEpochMilli());\n      vcpeClosedLoopStatus.put(\"closedLoopEventClient\", clEvent.getClosedLoopEventClient());\n      vcpeClosedLoopStatus.put(\"closedLoopEventStatus\", clEvent.getClosedLoopEventStatus().toString());\n      vcpeClosedLoopStatus.put(\"version\",               clEvent.getVersion());\n      vcpeClosedLoopStatus.put(\"requestID\",             clEvent.getRequestId().toString());\n      vcpeClosedLoopStatus.put(\"target_type\",           clEvent.getTargetType().toString());\n      vcpeClosedLoopStatus.put(\"target\",                clEvent.getTarget());\n      vcpeClosedLoopStatus.put(\"from\",                  clEvent.getFrom());\n      vcpeClosedLoopStatus.put(\"policyScope\",           \"vCPE\");\n      vcpeClosedLoopStatus.put(\"policyName\",            \"ONAPvCPEPolicyModel\");\n      vcpeClosedLoopStatus.put(\"policyVersion\",         \"0.0.1\");\n      vcpeClosedLoopStatus.put(\"notification\",          \"ACTIVE\");\n      vcpeClosedLoopStatus.put(\"notificationTime\",      java.lang.System.currentTimeMillis());\n      vcpeClosedLoopStatus.put(\"message\",               \"\");\n\n      var aaiInfo = executor.getContextAlbum(\"VCPEClosedLoopStatusAlbum\").getSchemaHelper().createNewSubInstance(\"VCPE_AAI_Type\");\n\n      aaiInfo.put(\"genericVnfResourceVersion\",      clEvent.getAai().get(\"generic-vnf.resource-version\"));\n      aaiInfo.put(\"genericVnfVnfName\",              clEvent.getAai().get(\"generic-vnf.vnf-name\"));\n      aaiInfo.put(\"genericVnfProvStatus\",           clEvent.getAai().get(\"generic-vnf.prov-status\"));\n      aaiInfo.put(\"genericVnfIsClosedLoopDisabled\", clEvent.getAai().get(\"generic-vnf.is-closed-loop-disabled\"));\n      aaiInfo.put(\"genericVnfOrchestrationStatus\",  clEvent.getAai().get(\"generic-vnf.orchestration-status\"));\n      aaiInfo.put(\"genericVnfVnfType\",              clEvent.getAai().get(\"generic-vnf.vnf-type\"));\n      aaiInfo.put(\"genericVnfInMaint\",              clEvent.getAai().get(\"generic-vnf.in-maint\"));\n      aaiInfo.put(\"genericVnfServiceId\",            clEvent.getAai().get(\"generic-vnf.service-id\"));\n      aaiInfo.put(\"genericVnfVnfId\",                clEvent.getAai().get(\"generic-vnf.vnf-id\"));\n      aaiInfo.put(\"vserverIsClosedLoopDisabled\",    clEvent.getAai().get(\"vserver.is-closed-loop-disabled\"));\n      aaiInfo.put(\"vserverProvStatus\",              clEvent.getAai().get(\"vserver.prov-status\"));\n      aaiInfo.put(\"vserverName\",                    clEvent.getAai().get(\"vserver.vserver-name\"));\n\n      vcpeClosedLoopStatus.put(\"AAI\", aaiInfo);\n\n      if (clEvent.getClosedLoopAlarmEnd() != null) {\n         vcpeClosedLoopStatus.put(\"closedLoopAlarmEnd\", clEvent.getClosedLoopAlarmEnd().toEpochMilli());\n      } else {\n         vcpeClosedLoopStatus.put(\"closedLoopAlarmEnd\", java.lang.Long.valueOf(0));\n      }\n\n      executor.getContextAlbum(\"VCPEClosedLoopStatusAlbum\").put(vnfID.toString(), vcpeClosedLoopStatus);\n\n      executor.logger.info(\"Created context information for new vCPE VNF \\\"\" + vnfID.toString() + \"\\\"\");\n   }\n\n   executor.outFields.put(\"requestID\", requestID);\n   executor.outFields.put(\"vnfID\", vnfID);\n\n   executor.logger.info(executor.outFields);\n}\nelse {\n    executor.logger.info(\"No vnf-id in VirtualControlLoopEvent, status:\" + clEvent.getClosedLoopEventStatus().toString());\n    var vnfName = clEvent.getAai().get(\"generic-vnf.vnf-name\");\n    executor.logger.info(\"No vnf-id in VirtualControlLoopEvent for \" + vnfName);\n\n    vcpeClosedLoopStatus = executor.getContextAlbum(\"VCPEClosedLoopStatusAlbum\").get(vnfName.toString());\n\n    if (vcpeClosedLoopStatus == null) {\n        executor.logger.info(\"Creating context information for new vCPE VNF \\\"\" + vnfName.toString() + \"\\\"\");\n\n        vcpeClosedLoopStatus = executor.getContextAlbum(\"VCPEClosedLoopStatusAlbum\").getSchemaHelper().createNewInstance();\n\n        vcpeClosedLoopStatus.put(\"closedLoopControlName\", clEvent.getClosedLoopControlName());\n        vcpeClosedLoopStatus.put(\"closedLoopAlarmStart\",  clEvent.getClosedLoopAlarmStart().toEpochMilli());\n        vcpeClosedLoopStatus.put(\"closedLoopEventClient\", clEvent.getClosedLoopEventClient());\n        vcpeClosedLoopStatus.put(\"closedLoopEventStatus\", clEvent.getClosedLoopEventStatus().toString());\n        vcpeClosedLoopStatus.put(\"version\",               clEvent.getVersion());\n        vcpeClosedLoopStatus.put(\"requestID\",             clEvent.getRequestId().toString());\n        vcpeClosedLoopStatus.put(\"target_type\",           clEvent.getTargetType().toString());\n        vcpeClosedLoopStatus.put(\"target\",                clEvent.getTarget());\n        vcpeClosedLoopStatus.put(\"from\",                  clEvent.getFrom());\n        vcpeClosedLoopStatus.put(\"policyScope\",           \"vCPE\");\n        vcpeClosedLoopStatus.put(\"policyName\",            \"ONAPvCPEPolicyModel\");\n        vcpeClosedLoopStatus.put(\"policyVersion\",         \"0.0.1\");\n        vcpeClosedLoopStatus.put(\"notification\",          \"ACTIVE\");\n        vcpeClosedLoopStatus.put(\"notificationTime\",      java.lang.System.currentTimeMillis());\n        vcpeClosedLoopStatus.put(\"message\",               \"\");\n\n        var aaiInfo = executor.getContextAlbum(\"VCPEClosedLoopStatusAlbum\").getSchemaHelper().createNewSubInstance(\"VCPE_AAI_Type\");\n\n        aaiInfo.put(\"genericVnfVnfName\", clEvent.getAai().get(\"generic-vnf.vnf-name\"));\n        vcpeClosedLoopStatus.put(\"AAI\", aaiInfo);\n\n        if (clEvent.getClosedLoopAlarmEnd() != null) {\n            vcpeClosedLoopStatus.put(\"closedLoopAlarmEnd\", clEvent.getClosedLoopAlarmEnd().toEpochMilli());\n        } else {\n            vcpeClosedLoopStatus.put(\"closedLoopAlarmEnd\", java.lang.Long.valueOf(0));\n        }\n\n        executor.getContextAlbum(\"VCPEClosedLoopStatusAlbum\").put(vnfName.toString(), vcpeClosedLoopStatus);\n\n        executor.logger.info(\"Created context information for new vCPE VNF \\\"\" + vnfName.toString() + \"\\\"\");\n    }\n    executor.outFields.put(\"requestID\", requestID);\n    executor.outFields.put(\"vnfName\", vnfName);\n    executor.logger.info(executor.outFields);\n}\n\ntrue;"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "GuardRequestTask",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "GuardRequestTask",
+              "version": "0.0.1"
+            },
+            "inputEvent": {
+              "key": {
+                "name": "VCPEStateUpdatedEvent",
+                "version": "0.0.1"
+              },
+              "nameSpace": "org.onap.policy.apex.onap.vcpe",
+              "source": "APEX",
+              "target": "APEX",
+              "parameter": {
+                "entry": [
+                  {
+                    "key": "requestID",
+                    "value": {
+                      "key": "requestID",
+                      "fieldSchemaKey": {
+                        "name": "UUIDType",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "vnfID",
+                    "value": {
+                      "key": "vnfID",
+                      "fieldSchemaKey": {
+                        "name": "UUIDType",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "vnfName",
+                    "value": {
+                      "key": "vnfName",
+                      "fieldSchemaKey": {
+                        "name": "SimpleStringType",
+                        "version": "0.0.1"
+                      },
+                      "optional": true
+                    }
+                  }
+                ]
+              },
+              "toscaPolicyState": ""
+            },
+            "outputEvents": {
+              "entry": [
+                {
+                  "key": "GuardRequestEvent",
+                  "value": {
+                    "key": {
+                      "name": "GuardRequestEvent",
+                      "version": "0.0.1"
+                    },
+                    "nameSpace": "org.onap.policy.apex.onap.vcpe",
+                    "source": "APEX",
+                    "target": "APEX",
+                    "parameter": {
+                      "entry": [
+                        {
+                          "key": "decisionAttributes",
+                          "value": {
+                            "key": "decisionAttributes",
+                            "fieldSchemaKey": {
+                              "name": "GuardDecisionAttributesType",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "onapName",
+                          "value": {
+                            "key": "onapName",
+                            "fieldSchemaKey": {
+                              "name": "SimpleStringType",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        }
+                      ]
+                    },
+                    "toscaPolicyState": ""
+                  }
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": []
+            },
+            "contextAlbumReference": [
+              {
+                "name": "ControlLoopExecutionIDAlbum",
+                "version": "0.0.1"
+              },
+              {
+                "name": "VCPEClosedLoopStatusAlbum",
+                "version": "0.0.1"
+              }
+            ],
+            "taskLogic": {
+              "key": "TaskLogic",
+              "logicFlavour": "JAVASCRIPT",
+              "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n *  Modifications Copyright (C) 2020 Nordix Foundation.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *      http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.info(executor.subject.id);\nexecutor.logger.info(executor.inFields);\n\nvar vcpeClosedLoopStatus = executor.getContextAlbum(\"VCPEClosedLoopStatusAlbum\").get(\n        executor.inFields.get(\"vnfID\").toString());\n\nvar guardDecisionAttributes = executor.subject.getOutFieldSchemaHelper(\"decisionAttributes\").createNewInstance();\n\nguardDecisionAttributes.put(\"actor\", \"APPC\");\nguardDecisionAttributes.put(\"recipe\", \"Restart\");\nguardDecisionAttributes.put(\"target\", executor.inFields.get(\"vnfID\").toString());\nguardDecisionAttributes.put(\"clname\", \"APEXvCPEImplementation\");\n\nexecutor.logger.info(guardDecisionAttributes);\n\nexecutor.outFields.put(\"decisionAttributes\", guardDecisionAttributes);\nexecutor.outFields.put(\"onapName\", \"PDPD\");\n\nexecutor.getContextAlbum(\"ControlLoopExecutionIDAlbum\").put(executor.executionId.toString(),\n        executor.inFields.get(\"vnfID\"));\n\nexecutor.logger.info(executor.outFields);\n\ntrue;"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "GuardResponseTask",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "GuardResponseTask",
+              "version": "0.0.1"
+            },
+            "inputEvent": {
+              "key": {
+                "name": "GuardResponseEvent",
+                "version": "0.0.1"
+              },
+              "nameSpace": "org.onap.policy.apex.onap.vcpe",
+              "source": "APEX",
+              "target": "APEX",
+              "parameter": {
+                "entry": [
+                  {
+                    "key": "decision",
+                    "value": {
+                      "key": "decision",
+                      "fieldSchemaKey": {
+                        "name": "SimpleStringType",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  },
+                  {
+                    "key": "details",
+                    "value": {
+                      "key": "details",
+                      "fieldSchemaKey": {
+                        "name": "SimpleStringType",
+                        "version": "0.0.1"
+                      },
+                      "optional": false
+                    }
+                  }
+                ]
+              },
+              "toscaPolicyState": ""
+            },
+            "outputEvents": {
+              "entry": [
+                {
+                  "key": "VCPEStateUpdatedEvent",
+                  "value": {
+                    "key": {
+                      "name": "VCPEStateUpdatedEvent",
+                      "version": "0.0.1"
+                    },
+                    "nameSpace": "org.onap.policy.apex.onap.vcpe",
+                    "source": "APEX",
+                    "target": "APEX",
+                    "parameter": {
+                      "entry": [
+                        {
+                          "key": "requestID",
+                          "value": {
+                            "key": "requestID",
+                            "fieldSchemaKey": {
+                              "name": "UUIDType",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "vnfID",
+                          "value": {
+                            "key": "vnfID",
+                            "fieldSchemaKey": {
+                              "name": "UUIDType",
+                              "version": "0.0.1"
+                            },
+                            "optional": false
+                          }
+                        },
+                        {
+                          "key": "vnfName",
+                          "value": {
+                            "key": "vnfName",
+                            "fieldSchemaKey": {
+                              "name": "SimpleStringType",
+                              "version": "0.0.1"
+                            },
+                            "optional": true
+                          }
+                        }
+                      ]
+                    },
+                    "toscaPolicyState": ""
+                  }
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": []
+            },
+            "contextAlbumReference": [
+              {
+                "name": "ControlLoopExecutionIDAlbum",
+                "version": "0.0.1"
+              },
+              {
+                "name": "VCPEClosedLoopStatusAlbum",
+                "version": "0.0.1"
+              }
+            ],
+            "taskLogic": {
+              "key": "TaskLogic",
+              "logicFlavour": "JAVASCRIPT",
+              "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n *  Modifications Copyright (C) 2020 Nordix Foundation.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *      http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.info(executor.subject.id);\nexecutor.logger.info(executor.inFields);\n\nvar vnfID = executor.getContextAlbum(\"ControlLoopExecutionIDAlbum\").remove(executor.executionId.toString());\n\nexecutor.logger.info(\"Continuing execution with VNF ID: \" + vnfID);\n\nvar vcpeClosedLoopStatus = executor.getContextAlbum(\"VCPEClosedLoopStatusAlbum\").get(vnfID.toString());\nexecutor.logger.info(vcpeClosedLoopStatus);\n\nvar guardResult = executor.inFields.get(\"decision\");\nvar returnValue = true;\n\nif (guardResult == \"PERMIT\") {\n    vcpeClosedLoopStatus.put(\"notification\", \"OPERATION: GUARD_PERMIT\");\n} else if (guardResult == \"DENY\") {\n    vcpeClosedLoopStatus.put(\"notification\", \"OPERATION: GUARD_DENY\");\n} else {\n    executor.message = \"guard result must be either \\\"PERMIT\\\" or \\\"DENY\\\"\";\n    returnValue = false;\n}\n\nvar uuidType = java.util.UUID;\nvar requestID = uuidType.fromString(vcpeClosedLoopStatus.get(\"requestID\"));\n\nexecutor.outFields.put(\"requestID\", requestID);\nexecutor.outFields.put(\"vnfID\", vnfID);\n\nexecutor.logger.info(executor.outFields);\n\n\nreturnValue;"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "NoAAILookupTask",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "NoAAILookupTask",
+              "version": "0.0.1"
+            },
+            "taskParameters": {
+              "entry": []
+            },
+            "contextAlbumReference": [],
+            "taskLogic": {
+              "key": "TaskLogic",
+              "logicFlavour": "JAVASCRIPT",
+              "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2016-2018 Ericsson. All rights reserved.\n *  Modifications Copyright (C) 2020 Nordix Foundation.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *      http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.info(executor.subject.id);\nexecutor.logger.info(executor.inFields);\n\nexecutor.logger.info(executor.outFields);\n\ntrue;"
+            }
+          }
+        }
+      ]
+    }
+  },
+  "events": {
+    "key": {
+      "name": "ONAPvCPEPolicyModel_Events",
+      "version": "0.0.1"
+    },
+    "eventMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "APPCRestartVNFRequestEvent",
+            "version": "2.0.0"
+          },
+          "value": {
+            "key": {
+              "name": "APPCRestartVNFRequestEvent",
+              "version": "2.0.0"
+            },
+            "nameSpace": "org.onap.policy.apex.onap.vcpe",
+            "source": "APEX",
+            "target": "APPC",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "APPCLCMRequestEvent",
+                  "value": {
+                    "key": "APPCLCMRequestEvent",
+                    "fieldSchemaKey": {
+                      "name": "APPCLCMRequestType",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "toscaPolicyState": ""
+          }
+        },
+        {
+          "key": {
+            "name": "APPCRestartVNFResponseEvent",
+            "version": "2.0.0"
+          },
+          "value": {
+            "key": {
+              "name": "APPCRestartVNFResponseEvent",
+              "version": "2.0.0"
+            },
+            "nameSpace": "org.onap.policy.apex.onap.vcpe",
+            "source": "APEX",
+            "target": "APPC",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "APPCLCMResponseEvent",
+                  "value": {
+                    "key": "APPCLCMResponseEvent",
+                    "fieldSchemaKey": {
+                      "name": "APPCLCMResponseType",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "toscaPolicyState": ""
+          }
+        },
+        {
+          "key": {
+            "name": "ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e",
+            "version": "1.0.2"
+          },
+          "value": {
+            "key": {
+              "name": "ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e",
+              "version": "1.0.2"
+            },
+            "nameSpace": "org.onap.policy.apex.onap.vcpe",
+            "source": "DCAE",
+            "target": "APEX",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "VirtualControlLoopEvent",
+                  "value": {
+                    "key": "VirtualControlLoopEvent",
+                    "fieldSchemaKey": {
+                      "name": "VirtualControlLoopEventType",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "toscaPolicyState": ""
+          }
+        },
+        {
+          "key": {
+            "name": "ControlLoopLogEvent",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "ControlLoopLogEvent",
+              "version": "0.0.1"
+            },
+            "nameSpace": "org.onap.policy.apex.onap.vcpe",
+            "source": "APEX",
+            "target": "APEX",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "VirtualControlLoopNotification",
+                  "value": {
+                    "key": "VirtualControlLoopNotification",
+                    "fieldSchemaKey": {
+                      "name": "VirtualControlLoopNotificationType",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "toscaPolicyState": ""
+          }
+        },
+        {
+          "key": {
+            "name": "GuardRequestEvent",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "GuardRequestEvent",
+              "version": "0.0.1"
+            },
+            "nameSpace": "org.onap.policy.apex.onap.vcpe",
+            "source": "APEX",
+            "target": "APEX",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "decisionAttributes",
+                  "value": {
+                    "key": "decisionAttributes",
+                    "fieldSchemaKey": {
+                      "name": "GuardDecisionAttributesType",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "onapName",
+                  "value": {
+                    "key": "onapName",
+                    "fieldSchemaKey": {
+                      "name": "SimpleStringType",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "toscaPolicyState": ""
+          }
+        },
+        {
+          "key": {
+            "name": "GuardResponseEvent",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "GuardResponseEvent",
+              "version": "0.0.1"
+            },
+            "nameSpace": "org.onap.policy.apex.onap.vcpe",
+            "source": "APEX",
+            "target": "APEX",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "decision",
+                  "value": {
+                    "key": "decision",
+                    "fieldSchemaKey": {
+                      "name": "SimpleStringType",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "details",
+                  "value": {
+                    "key": "details",
+                    "fieldSchemaKey": {
+                      "name": "SimpleStringType",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "toscaPolicyState": ""
+          }
+        },
+        {
+          "key": {
+            "name": "VCPEStateUpdatedEvent",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "VCPEStateUpdatedEvent",
+              "version": "0.0.1"
+            },
+            "nameSpace": "org.onap.policy.apex.onap.vcpe",
+            "source": "APEX",
+            "target": "APEX",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "requestID",
+                  "value": {
+                    "key": "requestID",
+                    "fieldSchemaKey": {
+                      "name": "UUIDType",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "vnfID",
+                  "value": {
+                    "key": "vnfID",
+                    "fieldSchemaKey": {
+                      "name": "UUIDType",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                },
+                {
+                  "key": "vnfName",
+                  "value": {
+                    "key": "vnfName",
+                    "fieldSchemaKey": {
+                      "name": "SimpleStringType",
+                      "version": "0.0.1"
+                    },
+                    "optional": true
+                  }
+                }
+              ]
+            },
+            "toscaPolicyState": ""
+          }
+        }
+      ]
+    }
+  },
+  "albums": {
+    "key": {
+      "name": "ONAPvCPEPolicyModel_Albums",
+      "version": "0.0.1"
+    },
+    "albums": {
+      "entry": [
+        {
+          "key": {
+            "name": "ControlLoopExecutionIDAlbum",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "ControlLoopExecutionIDAlbum",
+              "version": "0.0.1"
+            },
+            "scope": "policy",
+            "isWritable": true,
+            "itemSchema": {
+              "name": "UUIDType",
+              "version": "0.0.1"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "RequestIDVNFIDAlbum",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "RequestIDVNFIDAlbum",
+              "version": "0.0.1"
+            },
+            "scope": "policy",
+            "isWritable": true,
+            "itemSchema": {
+              "name": "UUIDType",
+              "version": "0.0.1"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "VCPEClosedLoopStatusAlbum",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "VCPEClosedLoopStatusAlbum",
+              "version": "0.0.1"
+            },
+            "scope": "policy",
+            "isWritable": true,
+            "itemSchema": {
+              "name": "VCPEClosedLoopStatusType",
+              "version": "0.0.1"
+            }
+          }
+        }
+      ]
+    }
+  },
+  "schemas": {
+    "key": {
+      "name": "ONAPvCPEPolicyModel_Schemas",
+      "version": "0.0.1"
+    },
+    "schemas": {
+      "entry": [
+        {
+          "key": {
+            "name": "APPCLCMRequestType",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "APPCLCMRequestType",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "org.onap.policy.appclcm.AppcLcmDmaapWrapper"
+          }
+        },
+        {
+          "key": {
+            "name": "APPCLCMResponseType",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "APPCLCMResponseType",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "org.onap.policy.appclcm.AppcLcmDmaapWrapper"
+          }
+        },
+        {
+          "key": {
+            "name": "GuardDecisionAttributesType",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "GuardDecisionAttributesType",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Avro",
+            "schemaDefinition": "{\n    \"type\": \"record\",\n    \"name\": \"GuardDecisionAttributes_Type\",\n    \"namespace\": \"org.onap.policy.apex.onap.vcpe\",\n    \"fields\": [\n        {\n            \"name\": \"actor\",\n            \"type\": \"string\"\n        },\n        {\n            \"name\": \"recipe\",\n            \"type\": \"string\"\n        },\n        {\n            \"name\": \"target\",\n            \"type\": \"string\"\n        },\n        {\n            \"name\": \"clname\",\n            \"type\": \"string\"\n        }\n    ]\n}"
+          }
+        },
+        {
+          "key": {
+            "name": "SimpleBooleanType",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SimpleBooleanType",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Boolean"
+          }
+        },
+        {
+          "key": {
+            "name": "SimpleLongType",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SimpleLongType",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Long"
+          }
+        },
+        {
+          "key": {
+            "name": "SimpleStringType",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SimpleStringType",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.String"
+          }
+        },
+        {
+          "key": {
+            "name": "UUIDType",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "UUIDType",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.util.UUID"
+          }
+        },
+        {
+          "key": {
+            "name": "VCPEClosedLoopStatusType",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "VCPEClosedLoopStatusType",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Avro",
+            "schemaDefinition": "{\n    \"type\": \"record\",\n    \"name\": \"VCPEClosedLoopStatus\",\n    \"fields\": [\n        {\n            \"name\": \"AAI\",\n            \"type\": {\n                \"type\": \"record\",\n                \"name\": \"VCPE_AAI_Type\",\n                \"namespace\": \"org.onap.policy.apex.onap.vcpe\",\n                \"fields\": [\n                    {\n                        \"name\": \"genericVnfResourceVersion\",\n                        \"type\": \"string\"\n                    },\n                    {\n                        \"name\": \"genericVnfVnfName\",\n                        \"type\": \"string\"\n                    },\n                    {\n                        \"name\": \"genericVnfProvStatus\",\n                        \"type\": \"string\"\n                    },\n                    {\n                        \"name\": \"genericVnfIsClosedLoopDisabled\",\n                        \"type\": \"string\"\n                    },\n                    {\n                        \"name\": \"genericVnfOrchestrationStatus\",\n                        \"type\": \"string\"\n                    },\n                    {\n                        \"name\": \"genericVnfVnfType\",\n                        \"type\": \"string\"\n                    },\n                    {\n                        \"name\": \"genericVnfInMaint\",\n                        \"type\": \"string\"\n                    },\n                    {\n                        \"name\": \"genericVnfServiceId\",\n                        \"type\": \"string\"\n                    },\n                    {\n                        \"name\": \"genericVnfVnfId\",\n                        \"type\": \"string\"\n                    },\n                    {\n                        \"name\": \"vserverIsClosedLoopDisabled\",\n                        \"type\": \"string\"\n                    },\n                    {\n                        \"name\": \"vserverName\",\n                        \"type\": \"string\"\n                    },\n                    {\n                        \"name\": \"vserverProvStatus\",\n                        \"type\": \"string\"\n                    }\n                ]\n            }\n        },\n        {\n            \"name\": \"closedLoopAlarmStart\",\n            \"type\": \"long\"\n        },\n        {\n            \"name\": \"closedLoopAlarmEnd\",\n            \"type\": \"long\"\n        },\n        {\n            \"name\": \"closedLoopControlName\",\n            \"type\": \"string\"\n        },\n        {\n            \"name\": \"version\",\n            \"type\": \"string\"\n        },\n        {\n            \"name\": \"requestID\",\n            \"type\": \"string\"\n        },\n        {\n            \"name\": \"closedLoopEventClient\",\n            \"type\": \"string\"\n        },\n        {\n            \"name\": \"closedLoopEventStatus\",\n            \"type\": \"string\"\n        },\n        {\n            \"name\": \"target_type\",\n            \"type\": \"string\"\n        },\n        {\n            \"name\": \"target\",\n            \"type\": \"string\"\n        },\n        {\n            \"name\": \"from\",\n            \"type\": \"string\"\n        },\n        {\n            \"name\": \"policyScope\",\n            \"type\": \"string\"\n        },\n        {\n            \"name\": \"policyName\",\n            \"type\": \"string\"\n        },\n        {\n            \"name\": \"policyVersion\",\n            \"type\": \"string\"\n        },\n        {\n            \"name\": \"notification\",\n            \"type\": \"string\"\n        },\n        {\n            \"name\": \"notificationTime\",\n            \"type\": \"long\"\n        },\n        {\n            \"name\": \"message\",\n            \"type\": \"string\"\n        }\n    ]\n}"
+          }
+        },
+        {
+          "key": {
+            "name": "VirtualControlLoopEventType",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "VirtualControlLoopEventType",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "org.onap.policy.controlloop.VirtualControlLoopEvent"
+          }
+        },
+        {
+          "key": {
+            "name": "VirtualControlLoopNotificationType",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "VirtualControlLoopNotificationType",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "org.onap.policy.controlloop.VirtualControlLoopNotification"
+          }
+        }
+      ]
+    }
+  }
+}
index 3fbf8b1..cde0fa8 100644 (file)
@@ -1,6 +1,7 @@
 <!--
   ============LICENSE_START=======================================================
    Copyright (C) 2018 Ericsson. All rights reserved.
+   Modifications Copyright (C) 2022 Nordix Foundation.
   ================================================================================
   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
             <scope>test</scope>
         </dependency>
     </dependencies>
-
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>org.codehaus.mojo</groupId>
-                <artifactId>exec-maven-plugin</artifactId>
-                <executions>
-                    <execution>
-                        <id>generate-xml-schema</id>
-                        <phase>process-classes</phase>
-                        <goals>
-                            <goal>java</goal>
-                        </goals>
-                        <configuration>
-                            <mainClass>org.onap.policy.apex.model.basicmodel.handling.ApexSchemaGenerator</mainClass>
-                            <classpathScope>compile</classpathScope>
-                            <arguments>
-                                <argument>org.onap.policy.apex.model.policymodel.concepts.AxPolicyModel</argument>
-                                <argument>${project.build.directory}/model/xml/apex-policy-model.xsd</argument>
-                            </arguments>
-                        </configuration>
-                    </execution>
-                </executions>
-            </plugin>
-        </plugins>
-    </build>
 </project>
index a7cb97a..0564d58 100644 (file)
 package org.onap.policy.apex.model.policymodel.concepts;
 
 import java.util.List;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlRootElement;
-import javax.xml.bind.annotation.XmlType;
-import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
 import org.onap.policy.apex.model.basicmodel.concepts.AxConcept;
 import org.onap.policy.apex.model.basicmodel.concepts.AxKey;
 import org.onap.policy.apex.model.basicmodel.concepts.AxReferenceKey;
 import org.onap.policy.apex.model.basicmodel.concepts.AxValidationMessage;
 import org.onap.policy.apex.model.basicmodel.concepts.AxValidationResult;
 import org.onap.policy.apex.model.basicmodel.concepts.AxValidationResult.ValidationResult;
-import org.onap.policy.apex.model.basicmodel.xml.AxReferenceKeyAdapter;
 import org.onap.policy.common.utils.validation.Assertions;
 
 /**
@@ -49,12 +42,6 @@ import org.onap.policy.common.utils.validation.Assertions;
  * <p>Validation checks that the logic key is valid, that the logic flavour is defined and is valid when checked against
  * the {@code LOGIC_FLAVOUR_REGEXP} regular expression, and that the specified logic string is not null or blank.
  */
-
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlRootElement(name = "apexLogic", namespace = "http://www.onap.org/policy/apex-pdp")
-@XmlType(name = "AxLogic", namespace = "http://www.onap.org/policy/apex-pdp", propOrder =
-    { "key", "logicFlavour", "logic" })
-
 public class AxLogic extends AxConcept {
     private static final long serialVersionUID = -4260562004005697328L;
 
@@ -74,14 +61,8 @@ public class AxLogic extends AxConcept {
     /** The maximum permissible size of a logic definition. */
     public static final int MAX_LOGIC_SIZE = 32672; // The maximum size supported by Apache Derby
 
-    @XmlElement(name = "key", required = true)
-    @XmlJavaTypeAdapter(AxReferenceKeyAdapter.class)
     private AxReferenceKey key;
-
-    @XmlElement(required = true)
     private String logicFlavour;
-
-    @XmlElement(required = true)
     private String logic;
 
     /**
index 4073046..bb30f46 100644 (file)
@@ -27,11 +27,6 @@ import java.util.Map.Entry;
 import java.util.NavigableMap;
 import java.util.Set;
 import java.util.TreeMap;
-import javax.xml.bind.Unmarshaller;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlType;
 import org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey;
 import org.onap.policy.apex.model.basicmodel.concepts.AxConcept;
 import org.onap.policy.apex.model.basicmodel.concepts.AxConceptGetter;
@@ -52,17 +47,10 @@ import org.onap.policy.common.utils.validation.Assertions;
  * container. Each policy entry is checked to ensure that its key and value are not null and that the key matches the
  * key in the map value. Each policy entry is then validated individually.
  */
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlType(name = "AxPolicies", namespace = "http://www.onap.org/policy/apex-pdp", propOrder =
-    { "key", "policyMap" })
-
 public class AxPolicies extends AxConcept implements AxConceptGetter<AxPolicy> {
     private static final long serialVersionUID = 4290442590545820316L;
 
-    @XmlElement(name = "key", required = true)
     private AxArtifactKey key;
-
-    @XmlElement(required = true)
     private Map<AxArtifactKey, AxPolicy> policyMap;
 
     /**
@@ -95,7 +83,7 @@ public class AxPolicies extends AxConcept implements AxConceptGetter<AxPolicy> {
     /**
      * This Constructor creates a policy container with all of its fields defined.
      *
-     * @param key the policy container key
+     * @param key       the policy container key
      * @param policyMap the policies to be stored in the policy container
      */
     public AxPolicies(final AxArtifactKey key, final Map<AxArtifactKey, AxPolicy> policyMap) {
@@ -108,22 +96,6 @@ public class AxPolicies extends AxConcept implements AxConceptGetter<AxPolicy> {
         this.policyMap.putAll(policyMap);
     }
 
-    /**
-     * When a model is unmarshalled from disk or from the database, the policy map is returned as a raw hash map. This
-     * method is called by JAXB after unmarshaling and is used to convert the hash map to a {@link NavigableMap} so that
-     * it will work with the {@link AxConceptGetter} interface.
-     *
-     * @param unmarshaler the unmarshaler that is unmarshaling the model
-     * @param parent the parent object of this object in the unmarshaler
-     */
-    public void afterUnmarshal(final Unmarshaller unmarshaler, final Object parent) {
-        // The map must be navigable to allow name and version searching, unmarshaling returns a
-        // hash map
-        final NavigableMap<AxArtifactKey, AxPolicy> navigablePolicyMap = new TreeMap<>();
-        navigablePolicyMap.putAll(policyMap);
-        policyMap = navigablePolicyMap;
-    }
-
     /**
      * {@inheritDoc}.
      */
@@ -146,6 +118,18 @@ public class AxPolicies extends AxConcept implements AxConceptGetter<AxPolicy> {
         return keyList;
     }
 
+    /**
+     * {@inheritDoc}.
+     */
+    @Override
+    public void buildReferences() {
+        policyMap.entrySet().stream().forEach(policyEntry -> {
+                policyEntry.getValue().setKey(policyEntry.getKey());
+                policyEntry.getValue().buildReferences();
+            }
+        );
+    }
+
     /**
      * Sets the key of the policy container.
      *
@@ -185,23 +169,23 @@ public class AxPolicies extends AxConcept implements AxConceptGetter<AxPolicy> {
 
         if (key.equals(AxArtifactKey.getNullKey())) {
             result.addValidationMessage(new AxValidationMessage(key, this.getClass(), ValidationResult.INVALID,
-                            "key is a null key"));
+                "key is a null key"));
         }
 
         result = key.validate(result);
 
         if (policyMap.size() == 0) {
             result.addValidationMessage(new AxValidationMessage(key, this.getClass(), ValidationResult.INVALID,
-                            "policyMap may not be empty"));
+                "policyMap may not be empty"));
         } else {
             for (final Entry<AxArtifactKey, AxPolicy> policyEntry : policyMap.entrySet()) {
                 final AxArtifactKey entryKey = policyEntry.getKey();
                 if (entryKey.equals(AxArtifactKey.getNullKey())) {
                     result.addValidationMessage(new AxValidationMessage(key, this.getClass(), ValidationResult.INVALID,
-                                    "key on policy entry " + entryKey + " may not be the null key"));
+                        "key on policy entry " + entryKey + " may not be the null key"));
                 } else if (policyEntry.getValue() == null) {
                     result.addValidationMessage(new AxValidationMessage(key, this.getClass(), ValidationResult.INVALID,
-                                    "value on policy entry " + entryKey + " may not be null"));
+                        "value on policy entry " + entryKey + " may not be null"));
                 } else {
                     validate(result, policyEntry, entryKey);
                     result = policyEntry.getValue().validate(result);
@@ -213,11 +197,11 @@ public class AxPolicies extends AxConcept implements AxConceptGetter<AxPolicy> {
     }
 
     private void validate(final AxValidationResult result, final Entry<AxArtifactKey, AxPolicy> policyEntry,
-                    final AxArtifactKey entryKey) {
+                          final AxArtifactKey entryKey) {
         if (!entryKey.equals(policyEntry.getValue().getKey())) {
             result.addValidationMessage(new AxValidationMessage(key, this.getClass(), ValidationResult.INVALID,
-                            "key on policy entry key " + entryKey + " does not equal policy value key "
-                                            + policyEntry.getValue().getKey()));
+                "key on policy entry key " + entryKey + " does not equal policy value key "
+                    + policyEntry.getValue().getKey()));
         }
     }
 
@@ -354,7 +338,7 @@ public class AxPolicies extends AxConcept implements AxConceptGetter<AxPolicy> {
     @Override
     public AxPolicy get(final String conceptKeyName, final String conceptKeyVersion) {
         return new AxConceptGetterImpl<>((NavigableMap<AxArtifactKey, AxPolicy>) policyMap).get(conceptKeyName,
-                        conceptKeyVersion);
+            conceptKeyVersion);
     }
 
     /**
@@ -371,6 +355,6 @@ public class AxPolicies extends AxConcept implements AxConceptGetter<AxPolicy> {
     @Override
     public Set<AxPolicy> getAll(final String conceptKeyName, final String conceptKeyVersion) {
         return new AxConceptGetterImpl<>((NavigableMap<AxArtifactKey, AxPolicy>) policyMap).getAll(conceptKeyName,
-                        conceptKeyVersion);
+            conceptKeyVersion);
     }
 }
index 64785da..a47afe4 100644 (file)
 
 package org.onap.policy.apex.model.policymodel.concepts;
 
+import com.google.gson.annotations.SerializedName;
 import java.util.List;
 import java.util.Map;
 import java.util.Map.Entry;
 import java.util.Set;
 import java.util.TreeMap;
 import java.util.TreeSet;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlRootElement;
-import javax.xml.bind.annotation.XmlType;
 import org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey;
 import org.onap.policy.apex.model.basicmodel.concepts.AxConcept;
 import org.onap.policy.apex.model.basicmodel.concepts.AxKey;
@@ -60,38 +56,42 @@ import org.slf4j.ext.XLoggerFactory;
  * <p>The template of a policy is a string that can be used by policy editors to store meta information on the policy
  * that can be used at design time. The policy template string is not used during policy execution.
  *
- * <p>During validation of a policy, the validation checks listed below are executed: <ol> <li>The policy key must not
- * be a null key <li>The policy key must be valid <li>If the policy template is not set, an observation is issued <li>At
- * least one state must be defined <li>Keys and values must all be defined, that is not null <li>The key on each entry
- * in the state map must match the key in the entry's value <li>The parent key of each state in the state map of a
- * policy must be the key of that policy <li>Each state must itself be valid, see validation in {@link AxState} <li>The
- * next state of the state output of each state must be defined as a state in the policy <li>The first state of a policy
- * must be set <li>The first state of a policy must be defined in the policy <li>If a state is defined but is not used
- * in a policy,a warning is issued <li>The state tree of the policy must be valid, see validation in {@link AxStateTree}
+ * <p>During validation of a policy, the validation checks listed below are executed:
+ * <ol>
+ * <li>The policy key must not
+ * be a null key
+ * <li>The policy key must be valid
+ * <li>If the policy template is not set, an observation is issued
+ * <li>At
+ * least one state must be defined
+ * <li>Keys and values must all be defined, that is not null
+ * <li>The key on each entry
+ * in the state map must match the key in the entry's value
+ * <li>The parent key of each state in the state map of a
+ * policy must be the key of that policy
+ * <li>Each state must itself be valid, see validation in {@link AxState}
+ * <li>The
+ * next state of the state output of each state must be defined as a state in the policy
+ * <li>The first state of a policy
+ * must be set
+ * <li>The first state of a policy must be defined in the policy
+ * <li>If a state is defined but is not used
+ * in a policy,a warning is issued
+ * <li>The state tree of the policy must be valid, see validation in {@link AxStateTree}
  * </ol>
  */
-
-@XmlRootElement(name = "apexPolicy", namespace = "http://www.onap.org/policy/apex-pdp")
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlType(name = "AxPolicy", namespace = "http://www.onap.org/policy/apex-pdp", propOrder =
-    { "key", "template", "stateMap", "firstState" })
-
 public class AxPolicy extends AxConcept {
     private static final long serialVersionUID = -1775614096390365941L;
 
     // Logger for this class
     private static final XLogger LOGGER = XLoggerFactory.getXLogger(AxPolicy.class);
 
-    @XmlElement(name = "policyKey", required = true)
+    @SerializedName("policyKey")
     private AxArtifactKey key;
-
-    @XmlElement(required = true)
     private String template;
 
-    @XmlElement(name = "state", required = true)
+    @SerializedName("state")
     private Map<String, AxState> stateMap;
-
-    @XmlElement(required = true)
     private String firstState;
 
     /**
@@ -116,15 +116,18 @@ public class AxPolicy extends AxConcept {
      * @param key the key of the policy
      */
     public AxPolicy(final AxArtifactKey key) {
-        this(key, "", new TreeMap<>(), "");
+        this(key,
+            "",
+            new TreeMap<>(),
+            "");
     }
 
     /**
      * This Constructor creates a policy with the given key and all its fields defined.
      *
-     * @param key the key of the policy
-     * @param template the policy template for policy editor metadata
-     * @param stateMap the state map containing the states of the policy
+     * @param key        the key of the policy
+     * @param template   the policy template for policy editor metadata
+     * @param stateMap   the state map containing the states of the policy
      * @param firstState the first state that will execute on this policy
      */
     public AxPolicy(final AxArtifactKey key, final String template, final Map<String, AxState> stateMap,
@@ -171,6 +174,20 @@ public class AxPolicy extends AxConcept {
         return keyList;
     }
 
+    /**
+     * {@inheritDoc}.
+     */
+    @Override
+    public void buildReferences() {
+        stateMap.entrySet().stream().forEach(stateEntry -> {
+                if (!stateEntry.getValue().getKey().getLocalName().equals(AxKey.NULL_KEY_NAME)) {
+                    stateEntry.getValue().getKey().setParentArtifactKey(key);
+                }
+                stateEntry.getValue().buildReferences();
+            }
+        );
+    }
+
     /**
      * Sets the key of the policy.
      *
@@ -246,20 +263,21 @@ public class AxPolicy extends AxConcept {
         AxValidationResult result = resultIn;
 
         if (key.equals(AxArtifactKey.getNullKey())) {
-            result.addValidationMessage(new AxValidationMessage(key, this.getClass(), ValidationResult.INVALID,
-                            "key is a null key"));
+            result.addValidationMessage(
+                new AxValidationMessage(key, this.getClass(), ValidationResult.INVALID, "key is a null key"));
         }
 
         result = key.validate(result);
 
         if (template.trim().length() == 0) {
             result.addValidationMessage(new AxValidationMessage(key, this.getClass(), ValidationResult.OBSERVATION,
-                            "a policy template has not been specified"));
+                "a policy template has not been specified"));
         }
 
         if (stateMap.size() == 0) {
-            result.addValidationMessage(new AxValidationMessage(key, this.getClass(), ValidationResult.INVALID,
-                            "stateMap may not be empty"));
+            result.addValidationMessage(
+                new AxValidationMessage(key, this.getClass(), ValidationResult.INVALID,
+                    "stateMap may not be empty"));
         } else {
             for (final Entry<String, AxState> stateEntry : stateMap.entrySet()) {
                 result = validateStateEntry(stateEntry, result);
@@ -275,11 +293,11 @@ public class AxPolicy extends AxConcept {
         // We only check the unused states on models validated this far
         if (firstState.trim().length() == 0) {
             result.addValidationMessage(new AxValidationMessage(key, this.getClass(), ValidationResult.INVALID,
-                            "no first state specified, first state may not be blank"));
+                "no first state specified, first state may not be blank"));
         } else {
             if (!stateMap.containsKey(firstState)) {
                 result.addValidationMessage(new AxValidationMessage(key, this.getClass(), ValidationResult.INVALID,
-                                "first state not found in stateMap"));
+                    "first state not found in stateMap"));
             } else {
                 validateStateTree(result);
             }
@@ -292,43 +310,42 @@ public class AxPolicy extends AxConcept {
      * Validate a state entry.
      *
      * @param stateEntry the state entry to validate
-     * @param result The validation result to append to
+     * @param result     The validation result to append to
      * @return The result of the validation
      */
-    private AxValidationResult validateStateEntry(final Entry<String, AxState> stateEntry, AxValidationResult result) {
+    private AxValidationResult validateStateEntry(final Entry<String, AxState> stateEntry, AxValidationResult
+        result) {
         if (stateEntry.getKey() == null || stateEntry.getKey().equals(AxKey.NULL_KEY_NAME)) {
             result.addValidationMessage(new AxValidationMessage(key, this.getClass(), ValidationResult.INVALID,
-                            "key on state entry key " + stateEntry.getKey() + " may not be the null key"));
+                "key on state entry key " + stateEntry.getKey() + " may not be the null key"));
             return result;
         }
 
         if (stateEntry.getValue() == null) {
             result.addValidationMessage(new AxValidationMessage(key, this.getClass(), ValidationResult.INVALID,
-                            "value on state entry value " + stateEntry.getKey() + " may not be null"));
+                "value on state entry value " + stateEntry.getKey() + " may not be null"));
             return result;
         }
 
         if (!stateEntry.getKey().equals(stateEntry.getValue().getKey().getLocalName())) {
             result.addValidationMessage(new AxValidationMessage(key, this.getClass(), ValidationResult.INVALID,
-                            "key on state entry key " + stateEntry.getKey()
-                                            + " does not equal state entry value local name "
-                                            + stateEntry.getValue().getKey().getLocalName()));
+                "key on state entry key " + stateEntry.getKey() + " does not equal state entry value local name "
+                    + stateEntry.getValue().getKey().getLocalName()));
         }
 
         if (!stateEntry.getValue().getKey().getParentArtifactKey().equals(key)) {
             result.addValidationMessage(new AxValidationMessage(key, this.getClass(), ValidationResult.INVALID,
-                            "parent key on state entry key " + stateEntry.getValue().getKey()
-                                            + " does not equal policy key"));
+                "parent key on state entry key " + stateEntry.getValue().getKey() + " does not equal policy key"));
         }
 
         result = stateEntry.getValue().validate(result);
 
         for (final AxStateOutput stateOutput : stateEntry.getValue().getStateOutputs().values()) {
             if (!stateOutput.getNextState().equals(AxReferenceKey.getNullKey())
-                            && !stateMap.containsKey(stateOutput.getNextState().getLocalName())) {
-                result.addValidationMessage(new AxValidationMessage(key, this.getClass(), ValidationResult.INVALID,
-                                " nextState of state " + stateEntry.getKey() + " not found in StateMap: "
-                                                + stateOutput.getNextState().getId()));
+                && !stateMap.containsKey(stateOutput.getNextState().getLocalName())) {
+                result.addValidationMessage(
+                    new AxValidationMessage(key, this.getClass(), ValidationResult.INVALID, " nextState of state "
+                        + stateEntry.getKey() + " not found in StateMap: " + stateOutput.getNextState().getId()));
             }
         }
 
@@ -353,12 +370,11 @@ public class AxPolicy extends AxConcept {
 
             for (final AxState unreferencedState : unreferencedStateSet) {
                 result.addValidationMessage(new AxValidationMessage(key, this.getClass(), ValidationResult.WARNING,
-                                "state " + unreferencedState.getKey()
-                                                + " is not referenced in the policy execution tree"));
+                    "state " + unreferencedState.getKey() + " is not referenced in the policy execution tree"));
             }
         } catch (PolicyRuntimeException pre) {
             AxValidationMessage validationMessage = new AxValidationMessage(key, this.getClass(),
-                            ValidationResult.WARNING, "state tree in policy is invalid");
+                ValidationResult.WARNING, "state tree in policy is invalid");
             LOGGER.trace(validationMessage.getMessage(), pre);
             result.addValidationMessage(validationMessage);
         }
index 38c08ed..e119536 100644 (file)
@@ -25,14 +25,6 @@ package org.onap.policy.apex.model.policymodel.concepts;
 
 import java.util.List;
 import java.util.Map.Entry;
-import javax.xml.bind.Marshaller;
-import javax.xml.bind.Unmarshaller;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlRootElement;
-import javax.xml.bind.annotation.XmlType;
-import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
 import org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey;
 import org.onap.policy.apex.model.basicmodel.concepts.AxConcept;
 import org.onap.policy.apex.model.basicmodel.concepts.AxKey;
@@ -41,7 +33,6 @@ import org.onap.policy.apex.model.basicmodel.concepts.AxModel;
 import org.onap.policy.apex.model.basicmodel.concepts.AxValidationMessage;
 import org.onap.policy.apex.model.basicmodel.concepts.AxValidationResult;
 import org.onap.policy.apex.model.basicmodel.concepts.AxValidationResult.ValidationResult;
-import org.onap.policy.apex.model.basicmodel.handling.KeyInfoMarshalFilter;
 import org.onap.policy.apex.model.basicmodel.service.ModelService;
 import org.onap.policy.apex.model.contextmodel.concepts.AxContextAlbum;
 import org.onap.policy.apex.model.contextmodel.concepts.AxContextAlbums;
@@ -50,7 +41,6 @@ import org.onap.policy.apex.model.contextmodel.concepts.AxContextSchemas;
 import org.onap.policy.apex.model.eventmodel.concepts.AxEvent;
 import org.onap.policy.apex.model.eventmodel.concepts.AxEvents;
 import org.onap.policy.apex.model.eventmodel.concepts.AxField;
-import org.onap.policy.apex.model.policymodel.handling.EmptyAlbumsAdapter;
 import org.onap.policy.common.utils.validation.Assertions;
 
 /**
@@ -98,30 +88,23 @@ import org.onap.policy.common.utils.validation.Assertions;
  * <li>All events referred to on direct state outputs must exist
  * </ol>
  */
-@XmlRootElement(name = "apexPolicyModel", namespace = "http://www.onap.org/policy/apex-pdp")
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlType(name = "AxPolicyModel", namespace = "http://www.onap.org/policy/apex-pdp",
-    propOrder = {"policies", "tasks", "events", "albums", "schemas"})
-
 public class AxPolicyModel extends AxModel {
+    // @formatter:off
+    private static final String SCHEMAS_TOKEN  = "_Schemas";
+    private static final String KEY_INFO_TOKEN  = "_KeyInfo";
+    private static final String EVENTS_TOKEN    = "_Events";
+    private static final String ALBUMS_TOKEN    = "_Albums";
+    private static final String TASKS_TOKEN     = "_Tasks";
+    private static final String POLICIESS_TOKEN = "_Policies";
+
     private static final String DOES_NOT_EXIST = " does not exist";
 
     private static final long serialVersionUID = 8800599637708309945L;
 
-    @XmlElement(name = "policies", required = true)
     private AxPolicies policies;
-
-    @XmlElement(name = "tasks", required = true)
     private AxTasks tasks;
-
-    @XmlElement(name = "events", required = true)
     private AxEvents events;
-
-    @XmlElement(name = "albums", required = false)
-    @XmlJavaTypeAdapter(EmptyAlbumsAdapter.class)
     private AxContextAlbums albums;
-
-    @XmlElement(name = "schemas", required = true)
     private AxContextSchemas schemas;
 
     /**
@@ -148,12 +131,13 @@ public class AxPolicyModel extends AxModel {
      * @param key the key
      */
     public AxPolicyModel(final AxArtifactKey key) {
-        this(key, new AxContextSchemas(new AxArtifactKey(key.getName() + "_Schemas", key.getVersion())),
-            new AxKeyInformation(new AxArtifactKey(key.getName() + "_KeyInfo", key.getVersion())),
-            new AxEvents(new AxArtifactKey(key.getName() + "_Events", key.getVersion())),
-            new AxContextAlbums(new AxArtifactKey(key.getName() + "_Albums", key.getVersion())),
-            new AxTasks(new AxArtifactKey(key.getName() + "_Tasks", key.getVersion())),
-            new AxPolicies(new AxArtifactKey(key.getName() + "_Policies", key.getVersion())));
+        this(key,
+            new AxContextSchemas(new AxArtifactKey(key.getName() + SCHEMAS_TOKEN, key.getVersion())),
+            new AxKeyInformation(new AxArtifactKey(key.getName() + KEY_INFO_TOKEN, key.getVersion())),
+            new AxEvents(new AxArtifactKey(key.getName() + EVENTS_TOKEN, key.getVersion())),
+            new AxContextAlbums(new AxArtifactKey(key.getName() + ALBUMS_TOKEN, key.getVersion())),
+            new AxTasks(new AxArtifactKey(key.getName() + TASKS_TOKEN,  key.getVersion())),
+            new AxPolicies(new AxArtifactKey(key.getName() + POLICIESS_TOKEN, key.getVersion())));
     }
 
     /**
@@ -168,7 +152,7 @@ public class AxPolicyModel extends AxModel {
      * @param policies the policy container for the policy model
      */
     public AxPolicyModel(final AxArtifactKey key, final AxContextSchemas schemas, final AxKeyInformation keyInformation,
-            final AxEvents events, final AxContextAlbums albums, final AxTasks tasks, final AxPolicies policies) {
+        final AxEvents events, final AxContextAlbums albums, final AxTasks tasks, final AxPolicies policies) {
         super(key, keyInformation);
         Assertions.argumentNotNull(schemas, "schemas may not be null");
         Assertions.argumentNotNull(events, "events may not be null");
@@ -334,7 +318,7 @@ public class AxPolicyModel extends AxModel {
 
         validateEventKeys(result);
         validateContextAlbumKeys(result);
-        result = validateAllTaskKeys(result);
+        validateAllTaskKeys(result);
         validatePolicyKeys(result);
 
         return result;
@@ -384,7 +368,7 @@ public class AxPolicyModel extends AxModel {
      */
     private AxValidationResult validateAllTaskKeys(AxValidationResult result) {
         for (final AxTask task : tasks.getAll(null)) {
-            result = validateTaskKeys(task, result);
+            validateTaskKeys(task, result);
         }
         return result;
     }
@@ -496,7 +480,7 @@ public class AxPolicyModel extends AxModel {
      * @param result the validation result to append to
      */
     private void validateEventTaskFieldCompatibilityOnStateOutput(final AxState state, final AxTask task,
-            final AxStateOutput stateOutput, AxValidationResult result) {
+        final AxStateOutput stateOutput, AxValidationResult result) {
         if (stateOutput == null) {
             result.addValidationMessage(new AxValidationMessage(state.getKey(), this.getClass(),
                 ValidationResult.INVALID, "state output on task reference for task " + task.getId() + " is null"));
@@ -512,38 +496,26 @@ public class AxPolicyModel extends AxModel {
     }
 
     /**
-     * When a model is unmarshalled from disk or from the database, if the albums field was missing a blank
-     * with a null key was added. This method is called by JAXB after unmarshalling and is
+     * When a model is deserialized, if the albums field was missing a blank
+     * with a null key was added. This method is called by JAXB after deserializing and is
      * used to insert an appropriate key
-     *
-     * @param unmarshaller the unmarshaller that is unmarshalling the model
-     * @param parent the parent object of this object in the unmarshaller
      */
-    public void afterUnmarshal(final Unmarshaller unmarshaller, final Object parent) {
-        new EmptyAlbumsAdapter().doAfterUnmarshal(this);
-    }
-
-    /**
-     * When a model is marshalled from disk or database, if the albums field is empty/null, then the albums field
-     * is not emitted. If the (empty) albums field is not emitted then it's keyinfo should also be suppressed
-     * This method is called by JAXB before marshaling and is used to insert the appropriate filters
-     *
-     * @param marshaller the marshaller that is marshaller the model
-     * @throws Exception if there is a problem with the marshalling
-     */
-    public void beforeMarshal(final Marshaller marshaller) throws Exception {
-        EmptyAlbumsAdapter albumsfilter = new EmptyAlbumsAdapter();
-        marshaller.setAdapter(EmptyAlbumsAdapter.class, albumsfilter);
-        //get/create the keyinfofilter
-        KeyInfoMarshalFilter keyinfoFilter = marshaller.getAdapter(KeyInfoMarshalFilter.class);
-        if (keyinfoFilter == null) {
-            keyinfoFilter = new KeyInfoMarshalFilter();
-        }
-        //if the albumsfilter would filter out this model's albums add the album's key to the keyinfofilter
-        if (albumsfilter.marshal(this.albums) == null && this.albums != null) {
-            keyinfoFilter.addFilterKey(this.albums.getKey());
+    @Override
+    public void buildReferences() {
+        getSchemas().buildReferences();
+        getEvents().buildReferences();
+        getAlbums().buildReferences();
+        getTasks().buildReferences();
+        getPolicies().buildReferences();
+        getKeyInformation().buildReferences();
+
+        AxArtifactKey nullAlbumskey = new AxArtifactKey(AxKey.NULL_KEY_NAME + ALBUMS_TOKEN, AxKey.NULL_KEY_VERSION);
+
+        if (AxArtifactKey.getNullKey().equals(getAlbums().getKey())
+            || nullAlbumskey.equals(getAlbums().getKey())) {
+            getAlbums().setKey(new AxArtifactKey(getKey().getName() + ALBUMS_TOKEN, getKey().getVersion()));
+            getKeyInformation().generateKeyInfo(getAlbums());
         }
-        marshaller.setAdapter(keyinfoFilter);
     }
 
     /**
index df07b0e..ae8efbf 100644 (file)
 
 package org.onap.policy.apex.model.policymodel.concepts;
 
+import com.google.gson.annotations.SerializedName;
 import java.util.List;
 import java.util.Map;
 import java.util.Map.Entry;
 import java.util.Set;
 import java.util.TreeMap;
 import java.util.TreeSet;
-import javax.xml.bind.Unmarshaller;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlRootElement;
-import javax.xml.bind.annotation.XmlType;
 import org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey;
 import org.onap.policy.apex.model.basicmodel.concepts.AxConcept;
 import org.onap.policy.apex.model.basicmodel.concepts.AxKey;
@@ -106,40 +101,27 @@ import org.onap.policy.common.utils.validation.Assertions;
  * <li>Each State Finalizer logic instance in a state must be valid, see validation in {@link AxStateFinalizerLogic}
  * </ol>
  */
-
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlRootElement(name = "apexState", namespace = "http://www.onap.org/policy/apex-pdp")
-@XmlType(name = "AxState", namespace = "http://www.onap.org/policy/apex-pdp", propOrder =
-    { "key", "trigger", "stateOutputs", "contextAlbumReferenceSet", "taskSelectionLogic", "stateFinalizerLogicMap",
-        "defaultTask", "taskReferenceMap" })
-
 public class AxState extends AxConcept {
     private static final String DOES_NOT_EQUAL_STATE_KEY = " does not equal state key";
 
     private static final long serialVersionUID = 8041771382337655535L;
 
-    @XmlElement(name = "stateKey", required = true)
+
+
+    @SerializedName("stateKey")
     private AxReferenceKey key;
 
-    @XmlElement(required = true)
     private AxArtifactKey trigger;
-
-    @XmlElement(name = "stateOutputs", required = true)
     private Map<String, AxStateOutput> stateOutputs;
 
-    @XmlElement(name = "contextAlbumReference")
+    @SerializedName("contextAlbumReference")
     private Set<AxArtifactKey> contextAlbumReferenceSet;
 
-    @XmlElement(required = true)
     private AxTaskSelectionLogic taskSelectionLogic;
-
-    @XmlElement(name = "stateFinalizerLogicMap", required = true)
     private Map<String, AxStateFinalizerLogic> stateFinalizerLogicMap;
-
-    @XmlElement(required = true)
     private AxArtifactKey defaultTask;
 
-    @XmlElement(name = "taskReferences", required = true)
+    @SerializedName("taskReferences")
     private Map<AxArtifactKey, AxStateTaskReference> taskReferenceMap;
 
     /**
@@ -210,29 +192,19 @@ public class AxState extends AxConcept {
     // CHECKSTYLE:ON: checkstyle:parameterNumber
 
     /**
-     * When a state is unmarshalled from disk or from the database, the parent of contained objects is not defined. This
-     * method is called by JAXB after unmarshaling and is used to set the parent keys of all
+     * When a state is deserialized from disk or from the database, the parent of contained objects is not defined. This
+     * method is called by JAXB after deserialized and is used to set the parent keys of all
      * {@link AxTaskSelectionLogic}, {@link AxStateOutput}, and {@link AxStateFinalizerLogic} instance in the state.
-     *
-     * @param unmarshaler the unmarshaler that is unmarshaling the model
-     * @param parent the parent object of this object in the unmarshaler
      */
-    public void afterUnmarshal(final Unmarshaller unmarshaler, final Object parent) {
+    @Override
+    public void buildReferences() {
         if (!taskSelectionLogic.getKey().getLocalName().equals(AxKey.NULL_KEY_NAME)) {
             taskSelectionLogic.getKey().setParentReferenceKey(key);
         }
 
-        for (final Entry<String, AxStateOutput> soEntry : stateOutputs.entrySet()) {
-            soEntry.getValue().getKey().setParentReferenceKey(key);
-        }
-
-        for (final Entry<String, AxStateFinalizerLogic> sflEntry : stateFinalizerLogicMap.entrySet()) {
-            sflEntry.getValue().getKey().setParentReferenceKey(key);
-        }
-
-        for (final Entry<AxArtifactKey, AxStateTaskReference> trEntry : taskReferenceMap.entrySet()) {
-            trEntry.getValue().getKey().setParentReferenceKey(key);
-        }
+        stateOutputs.values().stream().forEach(output -> output.getKey().setParentReferenceKey(key));
+        stateFinalizerLogicMap.values().stream().forEach(output -> output.getKey().setParentReferenceKey(key));
+        taskReferenceMap.values().stream().forEach(output -> output.getKey().setParentReferenceKey(key));
     }
 
     /**
index 51ec51a..31ffede 100644 (file)
 
 package org.onap.policy.apex.model.policymodel.concepts;
 
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlRootElement;
-import javax.xml.bind.annotation.XmlType;
 import org.onap.policy.apex.model.basicmodel.concepts.AxReferenceKey;
 
 /**
@@ -39,10 +35,6 @@ import org.onap.policy.apex.model.basicmodel.concepts.AxReferenceKey;
  *
  * <p>Validation uses standard Apex Logic validation, see validation in {@link AxLogic}.
  */
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlRootElement(name = "apexStateFinalizerLogic", namespace = "http://www.onap.org/policy/apex-pdp")
-@XmlType(name = "AxStateFinalizerLogic", namespace = "http://www.onap.org/policy/apex-pdp")
-
 public class AxStateFinalizerLogic extends AxLogic {
     private static final long serialVersionUID = 2090324845463750391L;
 
index b90f2c8..7d46952 100644 (file)
 
 package org.onap.policy.apex.model.policymodel.concepts;
 
+import com.google.gson.annotations.SerializedName;
 import java.util.List;
 import java.util.Set;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlRootElement;
-import javax.xml.bind.annotation.XmlType;
 import lombok.Getter;
 import lombok.NonNull;
 import lombok.Setter;
@@ -60,28 +56,20 @@ import org.onap.policy.common.utils.validation.Assertions;
  * <li>The next state key must be valid, see validation in {@link AxReferenceKey}
  * </ol>
  */
-
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlRootElement(name = "apexStateOutput", namespace = "http://www.onap.org/policy/apex-pdp")
-@XmlType(name = "AxStateOutput", namespace = "http://www.onap.org/policy/apex-pdp",
-        propOrder = {"key", "outgoingEvent", "outgoingEventSet", "nextState"})
 @Getter
 @Setter
 public class AxStateOutput extends AxConcept {
     private static final long serialVersionUID = 8041771382337655535L;
 
-    @XmlElement(name = "key", required = true)
     @NonNull
     private AxReferenceKey key;
 
-    @XmlElement(required = true)
     @NonNull
     private AxArtifactKey outgoingEvent;
 
-    @XmlElement(name = "outgoingEventReference", required = false)
+    @SerializedName("outgoingEventReference")
     private Set<AxArtifactKey> outgoingEventSet;
 
-    @XmlElement(required = true)
     @NonNull
     private AxReferenceKey nextState;
     // @formatter:on
index 741eb88..171747c 100644 (file)
@@ -1,37 +1,31 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
+ *  Modifications Copyright (C) 2022 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at
- * 
+ *
  *      http://www.apache.org/licenses/LICENSE-2.0
- * 
+ *
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
- * 
+ *
  * SPDX-License-Identifier: Apache-2.0
  * ============LICENSE_END=========================================================
  */
 
 package org.onap.policy.apex.model.policymodel.concepts;
 
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlType;
-
 /**
  * This enumeration defines the type of state output selection that is defined for a task in a
  * state. The {@link AxStateTaskReference} instance for each task uses this enumeration to decide
  * what type of output selection to use when a task has completed execution.
  */
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlType(name = "AxStateTaskOutputType", namespace = "http://www.onap.org/policy/apex-pdp")
-
 public enum AxStateTaskOutputType {
     /** The state output selection for the task has not been defined. */
     UNDEFINED,
index 711e184..748eca9 100644 (file)
 package org.onap.policy.apex.model.policymodel.concepts;
 
 import java.util.List;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlRootElement;
-import javax.xml.bind.annotation.XmlType;
 import org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey;
 import org.onap.policy.apex.model.basicmodel.concepts.AxConcept;
 import org.onap.policy.apex.model.basicmodel.concepts.AxKey;
@@ -61,22 +56,11 @@ import org.onap.policy.common.utils.validation.Assertions;
  * {@link AxReferenceKey}
  * </ol>
  */
-
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlRootElement(name = "apexStateTaskReference", namespace = "http://www.onap.org/policy/apex-pdp")
-@XmlType(name = "AxStateTaskReference", namespace = "http://www.onap.org/policy/apex-pdp",
-        propOrder = {"key", "outputType", "output"})
-
 public class AxStateTaskReference extends AxConcept {
     private static final long serialVersionUID = 8041771382337655535L;
 
-    @XmlElement(name = "key", required = true)
     private AxReferenceKey key;
-
-    @XmlElement(required = true)
     private AxStateTaskOutputType outputType;
-
-    @XmlElement(required = true)
     private AxReferenceKey output;
 
     /**
index 3911a1f..c8b6baf 100644 (file)
 
 package org.onap.policy.apex.model.policymodel.concepts;
 
+import com.google.gson.annotations.SerializedName;
 import java.util.List;
 import java.util.Map;
 import java.util.Map.Entry;
 import java.util.Set;
 import java.util.TreeMap;
 import java.util.TreeSet;
-import javax.xml.bind.Unmarshaller;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlRootElement;
-import javax.xml.bind.annotation.XmlType;
 import lombok.Getter;
 import lombok.NonNull;
 import lombok.Setter;
@@ -71,14 +66,6 @@ import org.onap.policy.common.utils.validation.Assertions;
  * <li>The task logic must be valid, see validation in {@link AxTaskLogic}
  * </ol>
  */
-
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlRootElement(name = "apexTask", namespace = "http://www.onap.org/policy/apex-pdp")
-@XmlType(
-    name = "AxTask",
-    namespace = "http://www.onap.org/policy/apex-pdp",
-    propOrder = {"key", "inputEvent", "outputEvents", "taskParameters",
-        "contextAlbumReferenceSet", "taskLogic"})
 @Getter
 @Setter
 public class AxTask extends AxConcept {
@@ -86,24 +73,17 @@ public class AxTask extends AxConcept {
 
     private static final long serialVersionUID = 5374237330697362762L;
 
-    @XmlElement(name = "key", required = true)
     @NonNull
     private AxArtifactKey key;
 
-    @XmlElement(name = "inputEvent", required = false)
     private AxEvent inputEvent;
-
-    @XmlElement(name = "outputEvents", required = false)
     private Map<String, AxEvent> outputEvents;
-
-    @XmlElement(name = "taskParameters", required = true)
     private Map<String, AxTaskParameter> taskParameters;
 
-    @XmlElement(name = "contextAlbumReference")
+    @SerializedName("contextAlbumReference")
     @NonNull
     private Set<AxArtifactKey> contextAlbumReferenceSet;
 
-    @XmlElement(required = true)
     @NonNull
     private AxTaskLogic taskLogic;
 
@@ -163,18 +143,17 @@ public class AxTask extends AxConcept {
     }
 
     /**
-     * When a task is unmarshalled from disk or from the database, the parent of contained objects
-     * is not defined. This method is called by JAXB after unmarshaling and is used to set the
+     * When a task is deserialized from disk or from the database, the parent of contained objects
+     * is not defined. This method is called by JAXB after deserialization and is used to set the
      * parent keys of all {@link AxTaskParameter} instance in the task.
-     *
-     * @param unmarshaler the unmarshaler that is unmarshaling the model
-     * @param parent the parent object of this object in the unmarshaler
      */
-    public void afterUnmarshal(final Unmarshaller unmarshaler, final Object parent) {
-        taskLogic.getKey().setParentArtifactKey(key);
-        for (final AxTaskParameter parameter : taskParameters.values()) {
-            parameter.getKey().setParentArtifactKey(key);
+    @Override
+    public void buildReferences() {
+        if (!taskLogic.getKey().getLocalName().equals(AxKey.NULL_KEY_NAME)) {
+            taskLogic.getKey().setParentArtifactKey(key);
         }
+
+        taskParameters.values().stream().forEach(parameter -> parameter.getKey().setParentArtifactKey(key));
     }
 
     /**
index 38c0d6d..8665d9e 100644 (file)
 
 package org.onap.policy.apex.model.policymodel.concepts;
 
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlRootElement;
-import javax.xml.bind.annotation.XmlType;
 import org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey;
 import org.onap.policy.apex.model.basicmodel.concepts.AxReferenceKey;
 
@@ -38,10 +34,6 @@ import org.onap.policy.apex.model.basicmodel.concepts.AxReferenceKey;
  *
  * <p>Validation uses standard Apex Logic validation, see validation in {@link AxLogic}.
  */
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlRootElement(name = "apexLogic", namespace = "http://www.onap.org/policy/apex-pdp")
-@XmlType(name = "AxTaskLogic", namespace = "http://www.onap.org/policy/apex-pdp")
-
 public class AxTaskLogic extends AxLogic {
     private static final long serialVersionUID = 2090324845463750391L;
 
index 7cb052a..a468ec4 100644 (file)
 package org.onap.policy.apex.model.policymodel.concepts;
 
 import java.util.List;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlRootElement;
-import javax.xml.bind.annotation.XmlType;
 import org.onap.policy.apex.model.basicmodel.concepts.AxConcept;
 import org.onap.policy.apex.model.basicmodel.concepts.AxKey;
 import org.onap.policy.apex.model.basicmodel.concepts.AxReferenceKey;
@@ -42,19 +37,10 @@ import org.onap.policy.common.utils.validation.Assertions;
  * a default value. If the task parameter is not set in a configuration file, the task uses its
  * default value.
  */
-
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlRootElement(name = "apexTaskParameter", namespace = "http://www.onap.org/policy/apex-pdp")
-@XmlType(name = "AxTaskParameter", namespace = "http://www.onap.org/policy/apex-pdp",
-        propOrder = {"key", "defaultValue"})
-
 public class AxTaskParameter extends AxConcept {
     private static final long serialVersionUID = 7351688156934099977L;
 
-    @XmlElement(name = "key", required = true)
     private AxReferenceKey key;
-
-    @XmlElement
     private String defaultValue;
 
     /**
index 43b8f11..b9cfd80 100644 (file)
 
 package org.onap.policy.apex.model.policymodel.concepts;
 
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlRootElement;
-import javax.xml.bind.annotation.XmlType;
 import org.onap.policy.apex.model.basicmodel.concepts.AxReferenceKey;
 
 /**
@@ -37,10 +33,6 @@ import org.onap.policy.apex.model.basicmodel.concepts.AxReferenceKey;
  *
  * <p>Validation uses standard Apex Logic validation, see validation in {@link AxLogic}.
  */
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlRootElement(name = "apexTaskSelectionLogic", namespace = "http://www.onap.org/policy/apex-pdp")
-@XmlType(name = "AxTaskSelectionLogic", namespace = "http://www.onap.org/policy/apex-pdp")
-
 public class AxTaskSelectionLogic extends AxLogic {
     private static final long serialVersionUID = 2090324845463750391L;
 
index bae50e0..f9ccafd 100644 (file)
@@ -27,11 +27,6 @@ import java.util.Map.Entry;
 import java.util.NavigableMap;
 import java.util.Set;
 import java.util.TreeMap;
-import javax.xml.bind.Unmarshaller;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlType;
 import org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey;
 import org.onap.policy.apex.model.basicmodel.concepts.AxConcept;
 import org.onap.policy.apex.model.basicmodel.concepts.AxConceptGetter;
@@ -52,15 +47,10 @@ import org.onap.policy.common.utils.validation.Assertions;
  * in the container. Each task entry is checked to ensure that its key and value are not null and
  * that the key matches the key in the map value. Each task entry is then validated individually.
  */
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlType(name = "AxTasks", namespace = "http://www.onap.org/policy/apex-pdp", propOrder = {"key", "taskMap"})
 public class AxTasks extends AxConcept implements AxConceptGetter<AxTask> {
     private static final long serialVersionUID = 4290442590545820316L;
 
-    @XmlElement(name = "key", required = true)
     private AxArtifactKey key;
-
-    @XmlElement(required = true)
     private Map<AxArtifactKey, AxTask> taskMap;
 
     /**
@@ -93,7 +83,7 @@ public class AxTasks extends AxConcept implements AxConceptGetter<AxTask> {
     /**
      * This Constructor creates a task container with all of its fields defined.
      *
-     * @param key the task container key
+     * @param key     the task container key
      * @param taskMap the tasks to be stored in the task container
      */
     public AxTasks(final AxArtifactKey key, final Map<AxArtifactKey, AxTask> taskMap) {
@@ -106,23 +96,6 @@ public class AxTasks extends AxConcept implements AxConceptGetter<AxTask> {
         this.taskMap.putAll(taskMap);
     }
 
-    /**
-     * When a model is unmarshalled from disk or from the database, the task map is returned as a
-     * raw hash map. This method is called by JAXB after unmarshaling and is used to convert the
-     * hash map to a {@link NavigableMap} so that it will work with the {@link AxConceptGetter}
-     * interface.
-     *
-     * @param unmarshaler the unmarshaler that is unmarshaling the model
-     * @param parent the parent object of this object in the unmarshaler
-     */
-    public void afterUnmarshal(final Unmarshaller unmarshaler, final Object parent) {
-        // The map must be navigable to allow name and version searching, unmarshaling returns a
-        // hash map
-        final NavigableMap<AxArtifactKey, AxTask> navigableTaskMap = new TreeMap<>();
-        navigableTaskMap.putAll(taskMap);
-        taskMap = navigableTaskMap;
-    }
-
     /**
      * {@inheritDoc}.
      */
@@ -145,6 +118,14 @@ public class AxTasks extends AxConcept implements AxConceptGetter<AxTask> {
         return keyList;
     }
 
+    /**
+     * {@inheritDoc}.
+     */
+    @Override
+    public void buildReferences() {
+        taskMap.values().stream().forEach(task -> task.buildReferences());
+    }
+
     /**
      * Sets the task container key.
      *
@@ -184,27 +165,27 @@ public class AxTasks extends AxConcept implements AxConceptGetter<AxTask> {
 
         if (key.equals(AxArtifactKey.getNullKey())) {
             result.addValidationMessage(
-                    new AxValidationMessage(key, this.getClass(), ValidationResult.INVALID, "key is a null key"));
+                new AxValidationMessage(key, this.getClass(), ValidationResult.INVALID, "key is a null key"));
         }
 
         result = key.validate(result);
 
         if (taskMap.size() == 0) {
             result.addValidationMessage(new AxValidationMessage(key, this.getClass(), ValidationResult.INVALID,
-                    "taskMap may not be empty"));
+                "taskMap may not be empty"));
         } else {
             for (final Entry<AxArtifactKey, AxTask> taskEntry : taskMap.entrySet()) {
                 if (taskEntry.getKey().equals(AxArtifactKey.getNullKey())) {
                     result.addValidationMessage(new AxValidationMessage(key, this.getClass(), ValidationResult.INVALID,
-                            "key on task entry " + taskEntry.getKey() + " may not be the null key"));
+                        "key on task entry " + taskEntry.getKey() + " may not be the null key"));
                 } else if (taskEntry.getValue() == null) {
                     result.addValidationMessage(new AxValidationMessage(key, this.getClass(), ValidationResult.INVALID,
-                            "value on task entry " + taskEntry.getKey() + " may not be null"));
+                        "value on task entry " + taskEntry.getKey() + " may not be null"));
                 } else {
                     if (!taskEntry.getKey().equals(taskEntry.getValue().getKey())) {
                         result.addValidationMessage(new AxValidationMessage(key, this.getClass(),
-                                ValidationResult.INVALID, "key on task entry key " + taskEntry.getKey()
-                                        + " does not equal task value key " + taskEntry.getValue().getKey()));
+                            ValidationResult.INVALID, "key on task entry key " + taskEntry.getKey()
+                            + " does not equal task value key " + taskEntry.getValue().getKey()));
                     }
 
                     result = taskEntry.getValue().validate(result);
@@ -348,7 +329,7 @@ public class AxTasks extends AxConcept implements AxConceptGetter<AxTask> {
     @Override
     public AxTask get(final String conceptKeyName, final String conceptKeyVersion) {
         return new AxConceptGetterImpl<>((NavigableMap<AxArtifactKey, AxTask>) taskMap).get(conceptKeyName,
-                conceptKeyVersion);
+            conceptKeyVersion);
     }
 
     /**
@@ -365,6 +346,6 @@ public class AxTasks extends AxConcept implements AxConceptGetter<AxTask> {
     @Override
     public Set<AxTask> getAll(final String conceptKeyName, final String conceptKeyVersion) {
         return new AxConceptGetterImpl<>((NavigableMap<AxArtifactKey, AxTask>) taskMap).getAll(conceptKeyName,
-                conceptKeyVersion);
+            conceptKeyVersion);
     }
 }
index cc15a6a..acf0e82 100644 (file)
@@ -1,19 +1,20 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
+ *  Modifications Copyright (C) 2022 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at
- * 
+ *
  *      http://www.apache.org/licenses/LICENSE-2.0
- * 
+ *
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
- * 
+ *
  * SPDX-License-Identifier: Apache-2.0
  * ============LICENSE_END=========================================================
  */
 /**
  * Contains the concepts required to specify policies and tasks in APEX. It defines the main Apex
  * concepts of policies and tasks.
- * 
+ *
  * @author Liam Fallon (liam.fallon@ericsson.com)
  */
-
-@XmlSchema(namespace = "http://www.onap.org/policy/apex-pdp", elementFormDefault = XmlNsForm.QUALIFIED,
-        xmlns = {@XmlNs(namespaceURI = "http://www.onap.org/policy/apex-pdp", prefix = "")})
-
 package org.onap.policy.apex.model.policymodel.concepts;
-
-import javax.xml.bind.annotation.XmlNs;
-import javax.xml.bind.annotation.XmlNsForm;
-import javax.xml.bind.annotation.XmlSchema;
diff --git a/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/handling/EmptyAlbumsAdapter.java b/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/handling/EmptyAlbumsAdapter.java
deleted file mode 100644 (file)
index aa19edf..0000000
+++ /dev/null
@@ -1,91 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2019 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.model.policymodel.handling;
-
-import javax.xml.bind.annotation.adapters.XmlAdapter;
-import org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey;
-import org.onap.policy.apex.model.contextmodel.concepts.AxContextAlbums;
-import org.onap.policy.apex.model.policymodel.concepts.AxPolicyModel;
-
-/**
- * This class makes the albums field optional in marshaled Policy Models.
- * Empty albums are not marshaled to JSON/XML.
- * When unmarshaled, if no albums value is present then a new empty albums entry is created.
- *
- * @author John Keeney (john.keeney@ericsson.com)
- */
-public class EmptyAlbumsAdapter extends XmlAdapter<AxContextAlbums, AxContextAlbums> {
-
-
-    /**
-     * Decide whether to marshall a context albums entry. Non-empty context albums are always marshalled.
-     * Empty albums are filtered.
-     *
-     * @param albums the albums entry
-     * @return the albums entry, or null if empty
-     * @throws Exception if there is a problem with the marshalling
-     * @see javax.xml.bind.annotation.adapters.XmlAdapter#marshal(Object)
-     */
-    @Override
-    public AxContextAlbums marshal(AxContextAlbums albums) throws Exception {
-        if ((albums == null) || (albums.getAlbumsMap() == null) || (albums.getAlbumsMap().isEmpty())) {
-            return null;
-        } else {
-            return albums;
-        }
-    }
-
-    /**
-     * Decide whether to unmarshall a context albums entry - Always.
-     *
-     * @param val the albums entry
-     * @return the albums entry
-     * @throws Exception if there is a problem with the unmarshalling
-     * @see javax.xml.bind.annotation.adapters.XmlAdapter#unmarshal(Object)
-     */
-    @Override
-    public AxContextAlbums unmarshal(AxContextAlbums val) throws Exception {
-        return val;
-    }
-
-    /**
-     * After unmarshalling has completed the model's context albums entry may be null/empty or default.
-     * If so the key for the albums entry should updated to a sensible value and additional keyinfo
-     * information should then be added for that key
-     *
-     * @param policyModel the policy model containing the possibly empty context albums entry
-     * @see javax.xml.bind.annotation.adapters.XmlAdapter#unmarshal(Object)
-     */
-    public void doAfterUnmarshal(AxPolicyModel policyModel) {
-        AxArtifactKey nullkey = new AxArtifactKey();
-        AxArtifactKey blanknullalbumskey =
-            new AxArtifactKey(nullkey.getKey().getName() + "_Albums", nullkey.getKey().getVersion());
-        AxArtifactKey thisalbumskey = policyModel.getAlbums().getKey();
-        AxArtifactKey thismodelkey = policyModel.getKey();
-        AxContextAlbums thismodelalbums = policyModel.getAlbums();
-
-        if (nullkey.equals(thisalbumskey) || blanknullalbumskey.equals(thisalbumskey)) {
-            thismodelalbums.setKey(new AxArtifactKey(thismodelkey.getName() + "_Albums", thismodelkey.getVersion()));
-            policyModel.getKeyInformation().generateKeyInfo(thismodelalbums);
-        }
-    }
-
-}
index e724a46..526f5a6 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2019-2020 Nordix Foundation.
+ *  Modifications Copyright (C) 2019-2020,2022 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -190,9 +190,9 @@ public class PoliciesTest {
 
         final AxState clonedState = new AxState(policyPN.getStateMap().get("state"));
         clonedState.getKey().setLocalName("ClonedState");
-        clonedState.afterUnmarshal(null, null);
 
         savedStateMap.put(clonedState.getKey().getLocalName(), clonedState);
+        policyPN.buildReferences();
         result = new AxValidationResult();
         result = policyPN.validate(result);
         assertEquals(ValidationResult.WARNING, result.getValidationResult());
@@ -213,7 +213,9 @@ public class PoliciesTest {
         assertEquals(policyPN, policyPN); // NOSONAR
         assertEquals(policyPN, clonedPolicy);
         assertNotNull(policyPN);
-        assertNotEquals(policyPN, (Object) "Hello");
+
+        Object helloObj = "Hello";
+        assertNotEquals(policyPN, helloObj);
         assertNotEquals(policyPN,
                         new AxPolicy(AxArtifactKey.getNullKey(), savedTemplate, savedStateMap, savedFirstState));
         assertNotEquals(policyPN, new AxPolicy(savedPolicyKey, "SomeTemplate", savedStateMap, savedFirstState));
@@ -287,7 +289,6 @@ public class PoliciesTest {
         assertEquals(ValidationResult.VALID, result.getValidationResult());
 
         policies.clean();
-        policies.afterUnmarshal(null, null);
 
         final AxPolicies clonedPolicies = new AxPolicies(policies);
         assertEquals("AxPolicies:(key=AxArtifactKey:(name=PoliciesKey,version=0.0.",
@@ -298,7 +299,7 @@ public class PoliciesTest {
         assertEquals(policies, policies); // NOSONAR
         assertEquals(policies, clonedPolicies);
         assertNotNull(policies);
-        assertNotEquals(policies, (Object) "Hello");
+        assertNotEquals(policyPN, helloObj);
         assertNotEquals(policies, new AxPolicies(new AxArtifactKey()));
 
         assertEquals(0, policies.compareTo(policies));
@@ -324,7 +325,6 @@ public class PoliciesTest {
 
         final AxState secondState = new AxState(policyPN.getStateMap().get("state"));
         secondState.getKey().setLocalName("SecondState");
-        secondState.afterUnmarshal(null, null);
         policyPN.getStateMap().put("SecondState", secondState);
         policyPN.getStateMap().get("state").getStateOutputs().get("stateOutput0").setNextState(secondState.getKey());
 
@@ -344,7 +344,6 @@ public class PoliciesTest {
 
         final AxState thirdState = new AxState(policyPN.getStateMap().get("state"));
         thirdState.getKey().setLocalName("ThirdState");
-        thirdState.afterUnmarshal(null, null);
         policyPN.getStateMap().put("ThirdState", thirdState);
         policyPN.getStateMap().get("SecondState").getStateOutputs().get("stateOutput0")
                         .setNextState(thirdState.getKey());
index 95a9132..7fbe780 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2020 Nordix Foundation
+ *  Modifications Copyright (C) 2020,2022 Nordix Foundation
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -147,10 +147,10 @@ public class StateTest {
         state.setTaskReferences(trMap);
         assertEquals(trMap, state.getTaskReferences());
 
-        state.afterUnmarshal(null, null);
+        state.buildReferences();
         assertEquals(state.getKey(), state.getKeys().get(0));
         state.getTaskSelectionLogic().getKey().setLocalName(AxKey.NULL_KEY_NAME);
-        state.afterUnmarshal(null, null);
+        state.buildReferences();
         assertEquals(state.getKey(), state.getKeys().get(0));
 
         final Set<String> stateSet = state.getNextStateSet();
@@ -387,7 +387,9 @@ public class StateTest {
         assertEquals(state, state); // NOSONAR
         assertEquals(state, clonedState);
         assertNotNull(state);
-        assertNotEquals(state, (Object) "Hello");
+
+        Object helloObj = "Hello";
+        assertNotEquals(state, helloObj);
         assertNotEquals(state, new AxState(new AxStateParamsBuilder().key(new AxReferenceKey()).trigger(triggerKey)
                         .stateOutputs(soMap).contextAlbumReferenceSet(ctxtSet).taskSelectionLogic(tsl)
                         .stateFinalizerLogicMap(sflMap).defaultTask(defTaskKey).taskReferenceMap(trMap)));
index 89dc9a0..9c7866c 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2019-2020 Nordix Foundation.
+ *  Modifications Copyright (C) 2019-2020,2022 Nordix Foundation.
  *  Modifications Copyright (C) 2021 Bell Canada. All rights reserved.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
@@ -85,7 +85,7 @@ public class TasksTest {
         assertEquals("TaskName:0.0.1", task.getKey().getId());
         assertEquals("TaskName:0.0.1", task.getKeys().get(0).getId());
 
-        task.afterUnmarshal(null, null);
+        task.buildReferences();
         assertEquals(1, task.getTaskParameters().size());
 
         AxValidationResult result = new AxValidationResult();
@@ -154,7 +154,9 @@ public class TasksTest {
         assertEquals(task, task); // NOSONAR
         assertEquals(task, clonedTask);
         assertNotNull(task);
-        assertNotEquals(task, (Object) "Hello");
+
+        Object helloObj = "Hello";
+        assertNotEquals(task, helloObj);
         assertNotEquals(task, new AxTask(new AxArtifactKey(), tpMap, ctxtSet, tl));
         assertEquals(task, new AxTask(taskKey, tpMap, ctxtSet, tl));
         assertNotEquals(task, new AxTask(taskKey, tpEmptyMap, ctxtSet, tl));
@@ -224,7 +226,6 @@ public class TasksTest {
         assertEquals(ValidationResult.VALID, result.getValidationResult());
 
         tasks.clean();
-        tasks.afterUnmarshal(null, null);
 
         final AxTasks clonedTasks = new AxTasks(tasks);
         assertEquals("AxTasks:(key=AxArtifactKey:(name=TasksKey,version=0.0.1),tas",
@@ -236,7 +237,7 @@ public class TasksTest {
         assertEquals(tasks, tasks); // NOSONAR
         assertEquals(tasks, clonedTasks);
         assertNotNull(tasks);
-        assertNotEquals(tasks, (Object) "Hello");
+        assertNotEquals(tasks, helloObj);
         assertNotEquals(tasks, new AxTasks(new AxArtifactKey()));
 
         assertEquals(0, tasks.compareTo(tasks));
index a2a997e..48e4f87 100644 (file)
@@ -131,11 +131,6 @@ public class ApexPolicyModelTest {
         assertEquals(INVALID_MODEL_MALSTRUCTURED_STRING, result.toString());
     }
 
-    @Test
-    public void testModelWriteReadXml() throws Exception {
-        testApexModel.testApexModelWriteReadXml();
-    }
-
     @Test
     public void testModelWriteReadJson() throws Exception {
         testApexModel.testApexModelWriteReadJson();
diff --git a/plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/pom.xml b/plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/pom.xml
deleted file mode 100644 (file)
index 743167d..0000000
+++ /dev/null
@@ -1,110 +0,0 @@
-<!--
-  ============LICENSE_START=======================================================
-   Copyright (C) 2018 Ericsson. All rights reserved.
-   Modifications Copyright (C) 2020 Nordix Foundation.
-  ================================================================================
-  Licensed under the Apache License, Version 2.0 (the "License");
-  you may not use this file except in compliance with the License.
-  You may obtain a copy of the License at
-
-       http://www.apache.org/licenses/LICENSE-2.0
-
-  Unless required by applicable law or agreed to in writing, software
-  distributed under the License is distributed on an "AS IS" BASIS,
-  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  See the License for the specific language governing permissions and
-  limitations under the License.
-
-  SPDX-License-Identifier: Apache-2.0
-  ============LICENSE_END=========================================================
--->
-<project
-    xmlns="http://maven.apache.org/POM/4.0.0"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-    <modelVersion>4.0.0</modelVersion>
-    <parent>
-        <groupId>org.onap.policy.apex-pdp.plugins.plugins-event.plugins-event-protocol</groupId>
-        <artifactId>plugins-event-protocol</artifactId>
-        <version>2.7.1-SNAPSHOT</version>
-    </parent>
-
-    <artifactId>plugins-event-protocol-xml</artifactId>
-    <name>${project.artifactId}</name>
-    <description>[${project.parent.artifactId}] Plugin for handling events that are being transported in XML format</description>
-
-    <properties>
-        <apex-plugins-event-protocol-xml-dir>${project.basedir}/src</apex-plugins-event-protocol-xml-dir>
-    </properties>
-
-    <dependencies>
-        <dependency>
-            <groupId>org.onap.policy.common</groupId>
-            <artifactId>utils</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.eclipse.persistence</groupId>
-            <artifactId>eclipselink</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.jvnet.jaxb2_commons</groupId>
-            <artifactId>jaxb2-basics-runtime</artifactId>
-            <version>1.11.1</version>
-        </dependency>
-    </dependencies>
-
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>org.jvnet.jaxb2.maven2</groupId>
-                <artifactId>maven-jaxb2-plugin</artifactId>
-                <version>0.14.0</version>
-                <configuration>
-                    <schemaDirectory>src/main/resources/xml</schemaDirectory>
-                    <schemaFiles>apex-event.xsd</schemaFiles>
-                    <bindingDirectory>src/main/resources/xml</bindingDirectory>
-                    <bindingFiles>apex-event.xjb</bindingFiles>
-                    <generatePackage>org.onap.policy.apex.plugins.event.protocol.xml.jaxb</generatePackage>
-                    <extension>true</extension>
-                    <addGeneratedAnnotation>true</addGeneratedAnnotation>
-                    <readOnly>true</readOnly>
-                    <verbose>true</verbose>
-                    <plugins>
-                        <plugin>
-                            <groupId>org.jvnet.jaxb2_commons</groupId>
-                            <artifactId>jaxb2-basics</artifactId>
-                            <version>1.11.1</version>
-                        </plugin>
-                        <plugin>
-                            <groupId>org.jvnet.jaxb2_commons</groupId>
-                            <artifactId>jaxb2-basics-annotate</artifactId>
-                            <version>1.0.2</version>
-                        </plugin>
-                        <plugin>
-                            <groupId>org.jvnet.jaxb2_commons</groupId>
-                            <artifactId>jaxb2-value-constructor</artifactId>
-                            <version>3.0</version>
-                        </plugin>
-                    </plugins>
-                    <args>
-                        <arg>-Xannotate</arg>
-                        <arg>-XtoString</arg>
-                        <arg>-Xmergeable</arg>
-                        <arg>-Xcopyable</arg>
-                        <arg>-Xequals</arg>
-                        <arg>-XhashCode</arg>
-                        <arg>-Xvalue-constructor</arg>
-                    </args>
-                </configuration>
-                <executions>
-                    <execution>
-                        <id>generate</id>
-                        <goals>
-                            <goal>generate</goal>
-                        </goals>
-                    </execution>
-                </executions>
-            </plugin>
-        </plugins>
-    </build>
-</project>
diff --git a/plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/src/main/java/org/onap/policy/apex/plugins/event/protocol/xml/Apex2XmlEventConverter.java b/plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/src/main/java/org/onap/policy/apex/plugins/event/protocol/xml/Apex2XmlEventConverter.java
deleted file mode 100644 (file)
index 907d426..0000000
+++ /dev/null
@@ -1,188 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2021-2022 Bell Canada. All rights reserved.
- *  Modifications Copyright (C) 2021 AT&T Intellectual Property. 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.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.plugins.event.protocol.xml;
-
-import java.io.ByteArrayInputStream;
-import java.io.StringWriter;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map.Entry;
-import javax.xml.XMLConstants;
-import javax.xml.bind.JAXBContext;
-import javax.xml.bind.JAXBElement;
-import javax.xml.bind.JAXBException;
-import javax.xml.bind.Marshaller;
-import javax.xml.bind.Unmarshaller;
-import javax.xml.transform.stream.StreamSource;
-import javax.xml.validation.SchemaFactory;
-import org.onap.policy.apex.plugins.event.protocol.xml.jaxb.ObjectFactory;
-import org.onap.policy.apex.plugins.event.protocol.xml.jaxb.XMLApexEvent;
-import org.onap.policy.apex.plugins.event.protocol.xml.jaxb.XMLApexEventData;
-import org.onap.policy.apex.service.engine.event.ApexEvent;
-import org.onap.policy.apex.service.engine.event.ApexEventException;
-import org.onap.policy.apex.service.engine.event.ApexEventProtocolConverter;
-import org.onap.policy.apex.service.engine.event.ApexEventRuntimeException;
-import org.onap.policy.apex.service.parameters.eventprotocol.EventProtocolParameters;
-import org.onap.policy.common.utils.resources.ResourceUtils;
-import org.xml.sax.SAXException;
-
-/**
- * The Class Apex2XMLEventConverter converts {@link ApexEvent} instances into string instances of {@link XMLApexEvent}
- * that are XML representations of Apex events defined in JAXB.
- *
- * @author Liam Fallon (liam.fallon@ericsson.com)
- */
-public final class Apex2XmlEventConverter implements ApexEventProtocolConverter {
-
-    private static final String MODEL_SCHEMA_NAME = "xml/apex-event.xsd";
-
-    // XML Unmarshaller and marshaller and object factory for events
-    private Unmarshaller unmarshaller;
-    private Marshaller marshaller;
-    private ObjectFactory objectFactory = new ObjectFactory();
-
-    /**
-     * Constructor to create the Apex to XML converter.
-     *
-     * @throws ApexEventException the apex event exception
-     */
-    public Apex2XmlEventConverter() throws ApexEventException {
-        try {
-            final var schemaUrl = ResourceUtils.getUrlResource(MODEL_SCHEMA_NAME);
-            final var apexEventSchema =
-                    SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI).newSchema(schemaUrl);
-
-            final var jaxbContext = JAXBContext.newInstance(XMLApexEvent.class);
-
-            // Set up the unmarshaller to carry out validation
-            unmarshaller = jaxbContext.createUnmarshaller();
-            unmarshaller.setEventHandler(new javax.xml.bind.helpers.DefaultValidationEventHandler());
-            unmarshaller.setSchema(apexEventSchema);
-
-            // Set up the marshaller
-            marshaller = jaxbContext.createMarshaller();
-            marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);
-            marshaller.setSchema(apexEventSchema);
-        } catch (JAXBException | SAXException e) {
-            throw new ApexEventException("Unable to set up marshalling and unmarshalling for XML events", e);
-        }
-    }
-
-    /**
-     * {@inheritDoc}.
-     */
-    @Override
-    public void init(final EventProtocolParameters parameters) {
-        // No initialization necessary on this class
-    }
-
-    /**
-     * {@inheritDoc}.
-     */
-    @Override
-    public List<ApexEvent> toApexEvent(final String eventName, final Object eventObject) throws ApexEventException {
-        // Check the XML event
-        if (eventObject == null) {
-            throw new ApexEventException("event processing failed, XML event is null");
-        }
-
-        // Cast the event to a string, if our conversion is correctly configured, this cast should always work
-        String xmlEventString = null;
-        try {
-            xmlEventString = (String) eventObject;
-        } catch (final Exception e) {
-            final String errorMessage = "error converting event \"" + eventObject + "\" to a string";
-            throw new ApexEventRuntimeException(errorMessage, e);
-        }
-
-        // The XML event
-        XMLApexEvent xmlApexEvent = null;
-
-        // Use JAXB to read and verify the event from the XML string
-        try {
-            final var source = new StreamSource(new ByteArrayInputStream(xmlEventString.getBytes()));
-            final JAXBElement<XMLApexEvent> rootElement = unmarshaller.unmarshal(source, XMLApexEvent.class);
-            xmlApexEvent = rootElement.getValue();
-        } catch (final JAXBException e) {
-            throw new ApexEventException("Unable to unmarshal Apex XML event\n" + xmlEventString, e);
-        }
-
-        // Create the Apex event
-        // FIXME: Introduce new AxEvent field for APEX to Xml conversion
-        final var apexEvent = new ApexEvent(xmlApexEvent.getName(), xmlApexEvent.getVersion(),
-                xmlApexEvent.getNameSpace(), xmlApexEvent.getSource(), xmlApexEvent.getTarget(), "");
-
-        // Set the data on the apex event
-        for (final XMLApexEventData xmlData : xmlApexEvent.getData()) {
-            apexEvent.put(xmlData.getKey(), xmlData.getValue());
-        }
-
-        // Return the event in a single element
-        final ArrayList<ApexEvent> eventList = new ArrayList<>();
-        eventList.add(apexEvent);
-        return eventList;
-    }
-
-    /**
-     * {@inheritDoc}.
-     */
-    @Override
-    public String fromApexEvent(final ApexEvent apexEvent) throws ApexEventException {
-        // Check the Apex event
-        if (apexEvent == null) {
-            throw new ApexEventException("event processing failed, Apex event is null");
-        }
-
-        // Get the Apex event data
-        final List<XMLApexEventData> xmlDataList = new ArrayList<>();
-
-        try {
-            for (final Entry<String, Object> apexDataEntry : apexEvent.entrySet()) {
-                // Add an XML event data item
-                if (apexDataEntry.getValue() != null) {
-                    xmlDataList.add(new XMLApexEventData(apexDataEntry.getKey(), apexDataEntry.getValue().toString()));
-                } else {
-                    xmlDataList.add(new XMLApexEventData(apexDataEntry.getKey(), ""));
-                }
-            }
-        } catch (final Exception e) {
-            throw new ApexEventException("Unable to transfer Apex event data to XML\n" + apexEvent, e);
-        }
-
-        // Create the XML event
-        final var xmlApexEvent = new XMLApexEvent(apexEvent.getName(), apexEvent.getVersion(),
-                apexEvent.getNameSpace(), apexEvent.getSource(), apexEvent.getTarget(), xmlDataList);
-
-        // Write the event into a DOM document
-        try {
-            // Marshal the event into XML
-            final var writer = new StringWriter();
-            marshaller.marshal(objectFactory.createXmlApexEvent(xmlApexEvent), writer);
-
-            // Return the event as XML in a string
-            return writer.toString();
-        } catch (final JAXBException e) {
-            throw new ApexEventException("Unable to unmarshal Apex event to XML\n" + apexEvent, e);
-        }
-    }
-}
\ No newline at end of file
diff --git a/plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/src/main/java/org/onap/policy/apex/plugins/event/protocol/xml/XmlEventProtocolParameters.java b/plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/src/main/java/org/onap/policy/apex/plugins/event/protocol/xml/XmlEventProtocolParameters.java
deleted file mode 100644 (file)
index 143669d..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- *  Copyright (C) 2016-2018 Ericsson. 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.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.plugins.event.protocol.xml;
-
-import org.onap.policy.apex.service.parameters.eventprotocol.EventProtocolTextTokenDelimitedParameters;
-
-/**
- * Event protocol parameters for XML as an event protocol.
- *
- * @author Liam Fallon (liam.fallon@ericsson.com)
- */
-public class XmlEventProtocolParameters extends EventProtocolTextTokenDelimitedParameters {
-    /** The label of this carrier technology. */
-    public static final String XML_EVENT_PROTOCOL_LABEL = "XML";
-
-    // Constants for the text delimiter token
-    private static final String XML_TEXT_DELIMITER_TOKEN = "<?xml";
-
-    /**
-     * Constructor to create a JSON event protocol parameter instance and register the instance with the parameter
-     * service.
-     */
-    public XmlEventProtocolParameters() {
-        super();
-
-        // Set the event protocol properties for the XML event protocol
-        this.setLabel(XML_EVENT_PROTOCOL_LABEL);
-
-        // Set the starting and ending delimiters for text blocks of XML events
-        this.setStartDelimiterToken(XML_TEXT_DELIMITER_TOKEN);
-
-        // Set the event protocol plugin class
-        this.setEventProtocolPluginClass(Apex2XmlEventConverter.class.getName());
-    }
-}
diff --git a/plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/src/main/java/org/onap/policy/apex/plugins/event/protocol/xml/package-info.java b/plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/src/main/java/org/onap/policy/apex/plugins/event/protocol/xml/package-info.java
deleted file mode 100644 (file)
index 4f97265..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * ============LICENSE_START=======================================================
- *  Copyright (C) 2016-2018 Ericsson. 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.
- * You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * 
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-/**
- * Contains the implementation of the APEX event protocol converter plugin for events in XML format.
- *
- * @author Liam Fallon (liam.fallon@ericsson.com)
- */
-package org.onap.policy.apex.plugins.event.protocol.xml;
diff --git a/plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/src/main/resources/xml/apex-event.xjb b/plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/src/main/resources/xml/apex-event.xjb
deleted file mode 100644 (file)
index fa334c4..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  ============LICENSE_START=======================================================
-   Copyright (C) 2016-2018 Ericsson. 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.
-  You may obtain a copy of the License at
-  
-       http://www.apache.org/licenses/LICENSE-2.0
-  
-  Unless required by applicable law or agreed to in writing, software
-  distributed under the License is distributed on an "AS IS" BASIS,
-  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  See the License for the specific language governing permissions and
-  limitations under the License.
-  
-  SPDX-License-Identifier: Apache-2.0
-  ============LICENSE_END=========================================================
--->
-
-<jaxb:bindings xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
-       xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"
-       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:annox="http://annox.dev.java.net"
-       xsi:schemaLocation="http://java.sun.com/xml/ns/jaxb http://java.sun.com/xml/ns/jaxb/bindingschema_2_0.xsd"
-       version="2.1">
-
-       <!--jaxb:globalBindings generateIsSetMethod="true">
-               <xjc:serializable uid="1" />
-               <xjc:javaType name="java.lang.String" xmlType="xs:string"
-                       adapter="org.onap.policy.apex.core.model.xml.StringTrimAdapter" />
-       </jaxb:globalBindings-->
-
-       <jaxb:bindings schemaLocation="apex-event.xsd" node="/xs:schema">
-               <jaxb:bindings node="xs:complexType[@name='XMLApexEvent']"> <annox:annotate> 
-                       <annox:annotate annox:class="java.lang.SuppressWarnings" value="all" /> </annox:annotate> 
-                       </jaxb:bindings>
-       </jaxb:bindings>
-</jaxb:bindings>
diff --git a/plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/src/main/resources/xml/apex-event.xsd b/plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/src/main/resources/xml/apex-event.xsd
deleted file mode 100644 (file)
index c831455..0000000
+++ /dev/null
@@ -1,119 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  ============LICENSE_START=======================================================
-   Copyright (C) 2016-2018 Ericsson. 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.
-  You may obtain a copy of the License at
-  
-       http://www.apache.org/licenses/LICENSE-2.0
-  
-  Unless required by applicable law or agreed to in writing, software
-  distributed under the License is distributed on an "AS IS" BASIS,
-  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  See the License for the specific language governing permissions and
-  limitations under the License.
-  
-  SPDX-License-Identifier: Apache-2.0
-  ============LICENSE_END=========================================================
--->
-
-<schema targetNamespace="http://www.onap.org/policy/apex-pdp/apexevent" elementFormDefault="qualified"
-    xmlns="http://www.w3.org/2001/XMLSchema" xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
-    xmlns:basic="http://jaxb2-commons.dev.java.net/basic"
-    xmlns:copyable="http://jaxb2-commons.dev.java.net/basic/copyable"
-    xmlns:equals="http://jaxb2-commons.dev.java.net/basic/equals"
-    xmlns:hashCode="http://jaxb2-commons.dev.java.net/basic/hashCode"
-    xmlns:mergeable="http://jaxb2-commons.dev.java.net/basic/mergeable"
-    xmlns:toString="http://jaxb2-commons.dev.java.net/basic/toString"
-    jaxb:extensionBindingPrefixes="xjc basic copyable equals hashCode mergeable toString"
-    xmlns:apexev="http://www.onap.org/policy/apex-pdp/apexevent" xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"
-    jaxb:version="2.0">
-
-    <annotation>
-        <documentation>An event that comes into or is emitted out of an Apex system.
-        </documentation>
-    </annotation>
-
-    <annotation>
-        <appinfo>
-            <jaxb:globalBindings generateIsSetMethod="true">
-                <xjc:serializable uid="1" />
-            </jaxb:globalBindings>
-        </appinfo>
-    </annotation>
-
-    <complexType name="XMLApexEvent">
-        <annotation>
-            <documentation>An event that comes into or goes out of an Apex system</documentation>
-        </annotation>
-        <sequence>
-            <element name="name" maxOccurs="1" minOccurs="1">
-                <simpleType>
-                    <restriction base="string">
-                        <pattern value="[A-Za-z0-9\-_:]+"></pattern>
-                    </restriction>
-                </simpleType>
-            </element>
-            <element name="version" maxOccurs="1" minOccurs="1">
-                <simpleType>
-                    <restriction base="string">
-                        <pattern value="[0-9.]+"></pattern>
-                    </restriction>
-                </simpleType>
-            </element>
-            <element name="nameSpace" maxOccurs="1" minOccurs="1">
-                <simpleType>
-                    <restriction base="string">
-                        <minLength value="1"></minLength>
-                    </restriction>
-                </simpleType>
-            </element>
-            <element name="source" maxOccurs="1" minOccurs="0">
-                <simpleType>
-                    <restriction base="string">
-                        <minLength value="0"></minLength>
-                    </restriction>
-                </simpleType>
-            </element>
-            <element name="target" maxOccurs="1" minOccurs="0">
-                <simpleType>
-                    <restriction base="string">
-                        <minLength value="0"></minLength>
-                    </restriction>
-                </simpleType>
-            </element>
-            <element name="data" type="apexev:XMLApexEventData" maxOccurs="unbounded" minOccurs="0">
-            </element>
-        </sequence>
-    </complexType>
-
-    <element name="xmlApexEvent" type="apexev:XMLApexEvent"></element>
-
-    <complexType name="XMLApexEventData">
-        <annotation>
-            <documentation>
-                A single data item of an Apex event.
-            </documentation>
-        </annotation>
-        <sequence>
-            <element name="key" maxOccurs="1" minOccurs="1">
-                <simpleType>
-                    <restriction base="string">
-                        <pattern value="[A-Za-z0-9\-_:]+"></pattern>
-                    </restriction>
-                </simpleType>
-            </element>
-            <element name="value" maxOccurs="1" minOccurs="1">
-                <simpleType>
-                    <restriction base="string">
-                        <minLength value="0"></minLength>
-                    </restriction>
-                </simpleType>
-            </element>
-        </sequence>
-    </complexType>
-
-
-</schema>
diff --git a/plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/src/test/java/org/onap/policy/apex/plugins/event/protocol/xml/XmlEventGenerator.java b/plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/src/test/java/org/onap/policy/apex/plugins/event/protocol/xml/XmlEventGenerator.java
deleted file mode 100644 (file)
index 9c8696c..0000000
+++ /dev/null
@@ -1,119 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2021 AT&T Intellectual Property. 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.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.plugins.event.protocol.xml;
-
-import java.util.Random;
-import lombok.Getter;
-
-/**
- * The Class XmlEventGenerator.
- */
-public class XmlEventGenerator {
-    @Getter
-    private static int nextEventNo = 0;
-
-    /**
-     * Xml events.
-     *
-     * @param eventCount the event count
-     * @return the string
-     */
-    public static String xmlEvents(final int eventCount) {
-        final StringBuilder builder = new StringBuilder();
-
-        for (int i = 0; i < eventCount; i++) {
-            if (i > 0) {
-                builder.append("\n");
-            }
-            builder.append(xmlEvent());
-        }
-
-        return builder.toString();
-    }
-
-    /**
-     * Xml event.
-     *
-     * @return the string
-     */
-    public static String xmlEvent() {
-        final Random rand = new Random();
-
-        final StringBuilder builder = new StringBuilder();
-
-        int nextEventNo = rand.nextInt(2);
-        final String eventName = (nextEventNo == 0 ? "Event0000" : "Event0100");
-        final int nextMatchCase = rand.nextInt(4);
-        final float nextTestTemperature = rand.nextFloat() * 10000;
-
-        builder.append("<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n");
-        builder.append("<xmlApexEvent xmlns=\"http://www.onap.org/policy/apex-pdp/apexevent\">\n");
-
-        builder.append("  <name>" + eventName + "</name>\n");
-        builder.append("  <version>0.0.1</version>\n");
-        builder.append("  <nameSpace>org.onap.policy.apex.sample.events</nameSpace>\n");
-        builder.append("  <source>test</source>\n");
-        builder.append("  <target>apex</target>\n");
-        builder.append("  <data>\n");
-        builder.append("    <key>TestSlogan</key>\n");
-        builder.append("    <value>Test slogan for External Event" + (nextEventNo++) + "</value>\n");
-        builder.append("  </data>\n");
-        builder.append("  <data>\n");
-        builder.append("    <key>TestMatchCase</key>\n");
-        builder.append("    <value>" + nextMatchCase + "</value>\n");
-        builder.append("  </data>\n");
-        builder.append("  <data>\n");
-        builder.append("    <key>TestTimestamp</key>\n");
-        builder.append("    <value>" + System.currentTimeMillis() + "</value>\n");
-        builder.append("  </data>\n");
-        builder.append("  <data>\n");
-        builder.append("    <key>TestTemperature</key>\n");
-        builder.append("    <value>" + nextTestTemperature + "</value>\n");
-        builder.append("  </data>\n");
-        builder.append("</xmlApexEvent>");
-
-        return builder.toString();
-    }
-
-    /**
-     * The main method.
-     *
-     * @param args the arguments
-     */
-    public static void main(final String[] args) {
-        if (args.length != 1) {
-            System.err.println("usage EventGenerator #events");
-            return;
-        }
-
-        int eventCount = 0;
-        try {
-            eventCount = Integer.parseInt(args[0]);
-        } catch (final Exception e) {
-            System.err.println("usage EventGenerator #events");
-            e.printStackTrace();
-            return;
-        }
-
-        System.out.println(xmlEvents(eventCount));
-    }
-}
diff --git a/plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/src/test/java/org/onap/policy/apex/plugins/event/protocol/xml/XmlEventHandlerTest.java b/plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/src/test/java/org/onap/policy/apex/plugins/event/protocol/xml/XmlEventHandlerTest.java
deleted file mode 100644 (file)
index f8caf8c..0000000
+++ /dev/null
@@ -1,205 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2020-2021 Nordix Foundation.
- *  Modifications Copyright (C) 2022 Bell Canada.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.plugins.event.protocol.xml;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertNull;
-import static org.junit.Assert.assertTrue;
-
-import java.util.Date;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Random;
-import org.apache.commons.lang3.RandomStringUtils;
-import org.junit.Test;
-import org.onap.policy.apex.model.basicmodel.concepts.ApexException;
-import org.onap.policy.apex.service.engine.event.ApexEvent;
-import org.onap.policy.apex.service.engine.event.ApexEventException;
-import org.onap.policy.apex.service.engine.event.ApexEventRuntimeException;
-import org.slf4j.ext.XLogger;
-import org.slf4j.ext.XLoggerFactory;
-
-/**
- * The Class TestApexXMLEventHandlerURL.
- *
- * @author Liam Fallon (liam.fallon@ericsson.com)
- */
-public class XmlEventHandlerTest {
-    private static final XLogger logger = XLoggerFactory.getXLogger(XmlEventHandlerTest.class);
-
-    /**
-     * Test XML to apex event. Null value is passed as parameter.
-     *
-     * @throws ApexException on Apex event handling errors
-     */
-    @Test(expected = ApexException.class)
-    public void testApexEventToApexNullObject() throws ApexException {
-        final Apex2XmlEventConverter xmlEventConverter = new Apex2XmlEventConverter();
-        // This is only for code coverage stats. This method does nothing
-        xmlEventConverter.init(null);
-
-        xmlEventConverter.toApexEvent("XMLEventName", null);
-    }
-
-    /**
-     * Test XML to apex event. There is no string passed as parameter.
-     *
-     * @throws ApexException on Apex event handling errors
-     */
-    @Test(expected = ApexEventRuntimeException.class)
-    public void testApexEventToApexNotString() throws ApexException {
-        final Apex2XmlEventConverter xmlEventConverter = new Apex2XmlEventConverter();
-
-        xmlEventConverter.toApexEvent("XMLEventName", new Random().nextInt());
-    }
-
-    /**
-     * Test not valid XML to apex event.
-     *
-     * @throws ApexException on Apex event handling errors
-     */
-    @Test(expected = ApexException.class)
-    public void testApexEventToApexNotXml() throws ApexException {
-        final Apex2XmlEventConverter xmlEventConverter = new Apex2XmlEventConverter();
-
-        xmlEventConverter.toApexEvent("XMLEventName", RandomStringUtils.randomAlphabetic(25));
-    }
-
-    /**
-     * Test XML to apex event.
-     *
-     * @throws ApexException on Apex event handling errors
-     */
-    @Test
-    public void testXmltoApexEvent() throws ApexException {
-        try {
-            final Apex2XmlEventConverter xmlEventConverter = new Apex2XmlEventConverter();
-            assertNotNull(xmlEventConverter);
-
-            final String apexEventXmlStringIn = XmlEventGenerator.xmlEvent();
-
-            logger.debug("input event\n" + apexEventXmlStringIn);
-
-            for (final ApexEvent apexEvent : xmlEventConverter.toApexEvent("XMLEventName", apexEventXmlStringIn)) {
-                assertNotNull(apexEvent);
-
-                logger.debug(apexEvent.toString());
-
-                assertTrue(apexEvent.getName().equals("Event0000") || apexEvent.getName().equals("Event0100"));
-                assertEquals("0.0.1", apexEvent.getVersion());
-                assertEquals("org.onap.policy.apex.sample.events", apexEvent.getNameSpace());
-                assertEquals("test", apexEvent.getSource());
-                assertEquals("apex", apexEvent.getTarget());
-                assertTrue(apexEvent.get("TestSlogan").toString().startsWith("Test slogan for External Event"));
-
-                final Object testMatchCaseSelected = apexEvent.get("TestMatchCaseSelected");
-                assertNull(testMatchCaseSelected);
-            }
-        } catch (final Exception e) {
-            e.printStackTrace();
-            throw new ApexException("Exception reading Apex event xml file", e);
-        }
-    }
-
-    /**
-     * Test null as apex event to xml.
-     *
-     * @throws ApexEventException on Apex event handling errors
-     */
-    @Test(expected = ApexEventException.class)
-    public void testApexEventToXmlNullEvent() throws ApexEventException {
-        final Apex2XmlEventConverter xmlEventConverter = new Apex2XmlEventConverter();
-        xmlEventConverter.fromApexEvent(null);
-    }
-
-    /**
-     * Test apex event to xml.
-     *
-     * @throws ApexException on Apex event handling errors
-     */
-    @Test
-    public void testApexEventToXml() throws ApexException {
-        try {
-            final Apex2XmlEventConverter xmlEventConverter = new Apex2XmlEventConverter();
-            assertNotNull(xmlEventConverter);
-
-            final Date event0000StartTime = new Date();
-            final Map<String, Object> event0000DataMap = new HashMap<String, Object>();
-            event0000DataMap.put("TestSlogan", "This is a test slogan");
-            event0000DataMap.put("TestMatchCase", 12345);
-            event0000DataMap.put("TestTimestamp", event0000StartTime.getTime());
-            event0000DataMap.put("TestTemperature", 34.5445667);
-            event0000DataMap.put("NullValue", null);
-
-            final ApexEvent apexEvent0000 =
-                    new ApexEvent("Event0000", "0.0.1", "org.onap.policy.apex.sample.events", "test", "apex", "");
-            apexEvent0000.putAll(event0000DataMap);
-
-            final String apexEvent0000XmlString = xmlEventConverter.fromApexEvent(apexEvent0000);
-
-            logger.debug(apexEvent0000XmlString);
-
-            assertTrue(apexEvent0000XmlString.contains("<name>Event0000</name>"));
-            assertTrue(apexEvent0000XmlString.contains("<version>0.0.1</version>"));
-            assertTrue(apexEvent0000XmlString.contains("<value>This is a test slogan</value>"));
-            assertTrue(apexEvent0000XmlString.contains("<value>12345</value>"));
-            assertTrue(apexEvent0000XmlString.contains("<value></value>"));
-            assertTrue(apexEvent0000XmlString.contains("<value>" + event0000StartTime.getTime() + "</value>"));
-            assertTrue(apexEvent0000XmlString.contains("<value>34.5445667</value>"));
-
-            final Date event0004StartTime = new Date(1434363272000L);
-            final Map<String, Object> event0004DataMap = new HashMap<String, Object>();
-            event0004DataMap.put("TestSlogan", "Test slogan for External Event");
-            event0004DataMap.put("TestMatchCase", Integer.valueOf(2));
-            event0004DataMap.put("TestTimestamp", Long.valueOf(event0004StartTime.getTime()));
-            event0004DataMap.put("TestTemperature", Double.valueOf(1064.43));
-            event0004DataMap.put("TestMatchCaseSelected", Integer.valueOf(2));
-            event0004DataMap.put("TestMatchStateTime", Long.valueOf(1434370506078L));
-            event0004DataMap.put("TestEstablishCaseSelected", Integer.valueOf(0));
-            event0004DataMap.put("TestEstablishStateTime", Long.valueOf(1434370506085L));
-            event0004DataMap.put("TestDecideCaseSelected", Integer.valueOf(3));
-            event0004DataMap.put("TestDecideStateTime", Long.valueOf(1434370506092L));
-            event0004DataMap.put("TestActCaseSelected", Integer.valueOf(2));
-            event0004DataMap.put("TestActStateTime", Long.valueOf(1434370506095L));
-
-            final ApexEvent apexEvent0004 = new ApexEvent("Event0004", "0.0.1",
-                    "org.onap.policy.apex.domains.sample.events", "test", "apex", "");
-            apexEvent0004.putAll(event0004DataMap);
-
-            final String apexEvent0004XmlString = xmlEventConverter.fromApexEvent(apexEvent0004);
-
-            logger.debug(apexEvent0004XmlString);
-
-            assertTrue(apexEvent0004XmlString.contains("<name>Event0004</name>"));
-            assertTrue(apexEvent0004XmlString.contains("<version>0.0.1</version>"));
-            assertTrue(apexEvent0004XmlString.contains("<value>Test slogan for External Event</value>"));
-            assertTrue(apexEvent0004XmlString.contains("<value>1434370506078</value>"));
-            assertTrue(apexEvent0004XmlString.contains("<value>" + event0004StartTime.getTime() + "</value>"));
-            assertTrue(apexEvent0004XmlString.contains("<value>1064.43</value>"));
-        } catch (final Exception e) {
-            e.printStackTrace();
-            throw new ApexException("Exception reading Apex event xml file", e);
-        }
-    }
-}
\ No newline at end of file
diff --git a/plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/src/test/java/org/onap/policy/apex/plugins/event/protocol/xml/XmlEventProtocolParametersTest.java b/plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/src/test/java/org/onap/policy/apex/plugins/event/protocol/xml/XmlEventProtocolParametersTest.java
deleted file mode 100644 (file)
index 27fd220..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- *  Copyright (C) 2021 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.plugins.event.protocol.xml;
-
-import static org.junit.Assert.assertEquals;
-
-import org.junit.Test;
-
-public class XmlEventProtocolParametersTest {
-
-    /**
-     * Test object creation.
-     */
-    @Test
-    public void instantiationTest() {
-        final XmlEventProtocolParameters parameters = new XmlEventProtocolParameters();
-
-        assertEquals(XmlEventProtocolParameters.XML_EVENT_PROTOCOL_LABEL, parameters.getLabel());
-        assertEquals("<?xml", parameters.getStartDelimiterToken());
-        assertEquals(Apex2XmlEventConverter.class.getName(), parameters.getEventProtocolPluginClass());
-    }
-}
\ No newline at end of file
diff --git a/plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/src/test/java/org/onap/policy/apex/plugins/event/protocol/xml/XmlTaggedEventConsumerTest.java b/plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/src/test/java/org/onap/policy/apex/plugins/event/protocol/xml/XmlTaggedEventConsumerTest.java
deleted file mode 100644 (file)
index 320d7ba..0000000
+++ /dev/null
@@ -1,339 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2021 AT&T Intellectual Property. 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.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.apex.plugins.event.protocol.xml;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertNull;
-import static org.junit.Assert.assertTrue;
-
-import java.io.ByteArrayInputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import org.junit.Test;
-import org.onap.policy.apex.service.engine.event.impl.filecarrierplugin.consumer.HeaderDelimitedTextBlockReader;
-import org.onap.policy.apex.service.engine.event.impl.filecarrierplugin.consumer.TextBlock;
-
-/**
- * The Class TestXmlTaggedEventConsumer.
- */
-public class XmlTaggedEventConsumerTest {
-
-    /**
-     * Test garbage text line.
-     *
-     * @throws IOException Signals that an I/O exception has occurred.
-     */
-    @Test
-    public void testGarbageTextLine() throws IOException {
-        verifyNull("testGarbageTextLine", "hello there");
-    }
-
-    /**
-     * Test partial event line.
-     *
-     * @throws IOException Signals that an I/O exception has occurred.
-     */
-    @Test
-    public void testPartialEventLine() throws IOException {
-        verifyNull("testPartialEventLine", "1469781869268</TestTimestamp></MainTag>");
-    }
-
-    /**
-     * Test full event line.
-     *
-     * @throws IOException Signals that an I/O exception has occurred.
-     */
-    @Test
-    public void testFullEventLine() throws IOException {
-        verifyLine("testFullEventLine", "<?xml><MainTag><TestTimestamp>1469781869268</TestTimestamp></MainTag>",
-                        "<?xml><MainTag><TestTimestamp>1469781869268</TestTimestamp></MainTag>");
-    }
-
-    /**
-     * Test full event garbage before line.
-     *
-     * @throws IOException Signals that an I/O exception has occurred.
-     */
-    @Test
-    public void testFullEventGarbageBeforeLine() throws IOException {
-        verifyEnd("testFullEventGarbageBeforeLine",
-                        "Garbage<?xml><MainTag><TestTimestamp>1469781869268</TestTimestamp></MainTag>");
-    }
-
-    /**
-     * Test full event garbage before after line.
-     *
-     * @throws IOException Signals that an I/O exception has occurred.
-     */
-    @Test
-    public void testFullEventGarbageBeforeAfterLine() throws IOException {
-        verifyEnd("testFullEventGarbageBeforeAfterLine",
-                        "Garbage<?xml><MainTag><TestTimestamp>1469781869268</TestTimestamp></MainTag>Rubbish");
-    }
-
-    /**
-     * Test full event garbage after line.
-     *
-     * @throws IOException Signals that an I/O exception has occurred.
-     */
-    @Test
-    public void testFullEventGarbageAfterLine() throws IOException {
-        verifyLine("testFullEventGarbageAfterLine",
-                        "<?xml><MainTag><TestTimestamp>1469781869268</TestTimestamp></MainTag>Rubbish",
-                        "<?xml><MainTag><TestTimestamp>1469781869268</TestTimestamp></MainTag>Rubbish");
-    }
-
-    /**
-     * Test garbage text multi line.
-     *
-     * @throws IOException Signals that an I/O exception has occurred.
-     */
-    @Test
-    public void testGarbageTextMultiLine() throws IOException {
-        verifyEnd("testGarbageTextMultiLine", "hello\nthere");
-    }
-
-    /**
-     * Test partial event multi line.
-     *
-     * @throws IOException Signals that an I/O exception has occurred.
-     */
-    @Test
-    public void testPartialEventMultiLine() throws IOException {
-        verifyEnd("testPartialEventMultiLine", "1469781869268\n</TestTimestamp>\n</MainTag>");
-    }
-
-    /**
-     * Test full event multi line.
-     *
-     * @throws IOException Signals that an I/O exception has occurred.
-     */
-    @Test
-    public void testFullEventMultiLine() throws IOException {
-        verifyLine("testFullEventMultiLine",
-                        "<?xml>\n<MainTag>\n<TestTimestamp>1469781869268</TestTimestamp>\n</MainTag>\n\n",
-                        "<?xml>\n<MainTag>\n<TestTimestamp>1469781869268</TestTimestamp>\n</MainTag>");
-    }
-
-    /**
-     * Test full event garbage before multi line.
-     *
-     * @throws IOException Signals that an I/O exception has occurred.
-     */
-    @Test
-    public void testFullEventGarbageBeforeMultiLine() throws IOException {
-        verifyLine("testFullEventGarbageBeforeMultiLine",
-                "Garbage\n<?xml>\n<MainTag>\n<TestTimestamp>1469781869268</TestTimestamp>\n</MainTag>\n\n",
-                "<?xml>\n<MainTag>\n<TestTimestamp>1469781869268</TestTimestamp>\n</MainTag>");
-    }
-
-    /**
-     * Test full event garbage before after multi line.
-     *
-     * @throws IOException Signals that an I/O exception has occurred.
-     */
-    @Test
-    public void testFullEventGarbageBeforeAfterMultiLine() throws IOException {
-        String garbageString = "Garbage\n<?xml>\n<MainTag>\n<TestTimestamp>1469781869268</TestTimestamp>"
-                        + "\n</MainTag>\nRubbish\n\n";
-
-        verifyLine("testFullEventsGarbageAfterLine", garbageString,
-                        "<?xml>\n<MainTag>\n<TestTimestamp>1469781869268</TestTimestamp>\n</MainTag>\nRubbish");
-    }
-
-    /**
-     * Test full event garbage after multi line.
-     *
-     * @throws IOException Signals that an I/O exception has occurred.
-     */
-    @Test
-    public void testFullEventGarbageAfterMultiLine() throws IOException {
-        verifyLine("testFullEventGarbageAfterMultiLine",
-                        "<?xml>\n<MainTag>\n<TestTimestamp>1469781869268</TestTimestamp>\n</MainTag>\nRubbish",
-                        "<?xml>\n<MainTag>\n<TestTimestamp>1469781869268</TestTimestamp>\n</MainTag>\nRubbish");
-    }
-
-    /**
-     * Test partial events line.
-     *
-     * @throws IOException Signals that an I/O exception has occurred.
-     */
-    @Test
-    public void testPartialEventsLine() throws IOException {
-        verifyEnd("testPartialEventsLine", "1469781869268</TestTimestamp></MainTag><?xml><MainTag>"
-                        + "<TestTimestamp>1469781869268</TestTimestamp>");
-    }
-
-    /**
-     * Test full events garbage before line.
-     *
-     * @throws IOException Signals that an I/O exception has occurred.
-     */
-    @Test
-    public void testFullEventsGarbageBeforeLine() throws IOException {
-        verifyEnd("testPartialEventsLine",
-                        "Garbage<?xml><MainTag><TestTimestamp>1469781869268</TestTimestamp></MainTag>"
-                                        + "<?xml><MainTag><TestTimestamp>");
-    }
-
-    /**
-     * Test full events garbage before after line.
-     *
-     * @throws IOException Signals that an I/O exception has occurred.
-     */
-    @Test
-    public void testFullEventsGarbageBeforeAfterLine() throws IOException {
-        verifyEnd("testFullEventGarbageBeforeLine", "Garbage<?xml><MainTag><TestTimestamp>1469781869268</TestTimestamp>"
-                        + "</MainTag>Rubbish<?xml><MainTag><TestTimestamp>\nRefuse");
-    }
-
-    /**
-     * Test full events garbage after line.
-     *
-     * @throws IOException Signals that an I/O exception has occurred.
-     */
-    @Test
-    public void testFullEventsGarbageAfterLine() throws IOException {
-        String garbageString = "<?xml><MainTag><TestTimestamp>1469781869268</TestTimestamp>"
-                        + "</MainTag>Rubbish<?xml><MainTag><TestTimestamp>Refuse";
-
-        verifyLine("testFullEventsGarbageAfterLine", garbageString, garbageString);
-    }
-
-    /**
-     * Test partial events multi line.
-     *
-     * @throws IOException Signals that an I/O exception has occurred.
-     */
-    @Test
-    public void testPartialEventsMultiLine() throws IOException {
-        verifyLine("testPartialEventsMultiLine",
-                        "1469781869268\n</TestTimestamp>\n</MainTag>\n<?xml>\n<MainTag>\n<TestTimestamp>",
-                        "<?xml>\n<MainTag>\n<TestTimestamp>");
-    }
-
-    /**
-     * Test full events multi line.
-     *
-     * @throws IOException Signals that an I/O exception has occurred.
-     */
-    @Test
-    public void testFullEventsMultiLine() throws IOException {
-        String garbageString = "<?xml>\n<MainTag>\n<TestTimestamp>1469781869268</TestTimestamp>\n"
-                        + "</MainTag>\n<?xml>\n<MainTag>\n<TestTimestamp>1469781869268</TestTimestamp>\n</MainTag>\n";
-
-        verifyLines("testFullEventsMultiLine", garbageString,
-                        "<?xml>\n<MainTag>\n<TestTimestamp>1469781869268</TestTimestamp>\n</MainTag>",
-                        "<?xml>\n<MainTag>\n<TestTimestamp>1469781869268</TestTimestamp>\n</MainTag>");
-    }
-
-    /**
-     * Test full events garbage before multi line.
-     *
-     * @throws IOException Signals that an I/O exception has occurred.
-     */
-    @Test
-    public void testFullEventsGarbageBeforeMultiLine() throws IOException {
-        String garbageString = "Garbage\n<?xml>\n<MainTag>\n<TestTimestamp>1469781869268</TestTimestamp>\n"
-                        + "</MainTag>\n\n<?xml>\n<MainTag>\n<TestTimestamp>1469781869268</TestTimestamp>\n</MainTag>\n";
-
-        verifyLines("testFullEventsGarbageBeforeMultiLine", garbageString,
-                        "<?xml>\n<MainTag>\n<TestTimestamp>1469781869268</TestTimestamp>\n</MainTag>",
-                        "<?xml>\n<MainTag>\n<TestTimestamp>1469781869268</TestTimestamp>\n</MainTag>");
-    }
-
-    /**
-     * Test full events garbage before after multi line.
-     *
-     * @throws IOException Signals that an I/O exception has occurred.
-     */
-    @Test
-    public void testFullEventsGarbageBeforeAfterMultiLine() throws IOException {
-        String garbageString = "Garbage\n<?xml>\n<MainTag>\n<TestTimestamp>1469781869268</TestTimestamp>\n"
-                        + "</MainTag>\nRubbish\n<?xml>\n<MainTag>\n<TestTimestamp>1469781869268</TestTimestamp>\n"
-                        + "</MainTag>\nRefuse\n";
-
-        verifyLines("testFullEventsGarbageBeforeAfterMultiLine", garbageString,
-                        "<?xml>\n<MainTag>\n<TestTimestamp>1469781869268</TestTimestamp>\n</MainTag>\nRubbish",
-                        "<?xml>\n<MainTag>\n<TestTimestamp>1469781869268</TestTimestamp>\n</MainTag>\nRefuse");
-    }
-
-    /**
-     * Test full events garbage after multi line.
-     *
-     * @throws IOException Signals that an I/O exception has occurred.
-     */
-    @Test
-    public void testFullEventsGarbageAfterMultiLine() throws IOException {
-        verifyLine("testFullEventsGarbageAfterMultiLine",
-                        "<?xml>\n<MainTag>\n<TestTimestamp>1469781869268</TestTimestamp>\n</MainTag>\nRubbish",
-                        "<?xml>\n<MainTag>\n<TestTimestamp>1469781869268</TestTimestamp>\n</MainTag>\nRubbish");
-    }
-
-    private void verifyNull(String testName, String xml) throws IOException {
-        final InputStream xmlInputStream = new ByteArrayInputStream(xml.getBytes());
-
-        final HeaderDelimitedTextBlockReader xmlTaggedReader = new HeaderDelimitedTextBlockReader("<?xml", null, true);
-        xmlTaggedReader.init(xmlInputStream);
-
-        final TextBlock textBlock = xmlTaggedReader.readTextBlock();
-        assertNull(testName, textBlock.getText());
-        assertTrue(testName, textBlock.isEndOfText());
-    }
-
-    private void verifyLine(String testName, String xml, String expected) throws IOException {
-        final InputStream xmlInputStream = new ByteArrayInputStream(xml.getBytes());
-
-        final HeaderDelimitedTextBlockReader xmlTaggedReader = new HeaderDelimitedTextBlockReader("<?xml", null, true);
-        xmlTaggedReader.init(xmlInputStream);
-
-        final TextBlock textBlock = xmlTaggedReader.readTextBlock();
-        assertEquals(testName, expected, textBlock.getText());
-        assertTrue(testName, textBlock.isEndOfText());
-    }
-
-    private void verifyLines(String testName, String xml, String expected, String expected2) throws IOException {
-        final InputStream xmlInputStream = new ByteArrayInputStream(xml.getBytes());
-
-        final HeaderDelimitedTextBlockReader xmlTaggedReader = new HeaderDelimitedTextBlockReader("<?xml", null, true);
-        xmlTaggedReader.init(xmlInputStream);
-
-        TextBlock textBlock = xmlTaggedReader.readTextBlock();
-        assertEquals(testName, expected, textBlock.getText());
-        assertFalse(testName, textBlock.isEndOfText());
-
-        textBlock = xmlTaggedReader.readTextBlock();
-        assertEquals(testName, expected2, textBlock.getText());
-        assertTrue(testName, textBlock.isEndOfText());
-    }
-
-    private void verifyEnd(String testName, String xml) throws IOException {
-        final InputStream xmlInputStream = new ByteArrayInputStream(xml.getBytes());
-
-        final HeaderDelimitedTextBlockReader xmlTaggedReader = new HeaderDelimitedTextBlockReader("<?xml", null, true);
-        xmlTaggedReader.init(xmlInputStream);
-
-        final TextBlock textBlock = xmlTaggedReader.readTextBlock();
-        assertTrue(testName, textBlock.isEndOfText());
-    }
-}
index b9e3026..a8d36a6 100644 (file)
@@ -1,6 +1,7 @@
 <!--
   ============LICENSE_START=======================================================
    Copyright (C) 2018 Ericsson. All rights reserved.
+   Modifications Copyright (C) 2022 Nordix Foundation.
   ================================================================================
   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
@@ -38,7 +39,6 @@
 
     <modules>
         <module>plugins-event-protocol-jms</module>
-        <module>plugins-event-protocol-xml</module>
         <module>plugins-event-protocol-yaml</module>
     </modules>
 </project>
index f69eae6..ebb1cdf 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2019-2020 Nordix Foundation.
+ *  Modifications Copyright (C) 2019-2020,2022 Nordix Foundation.
  *  Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
@@ -449,7 +449,6 @@ final class EngineWorker implements EngineService {
         try {
             final var baOutputStream = new ByteArrayOutputStream();
             final ApexModelWriter<AxEngineModel> modelWriter = new ApexModelWriter<>(AxEngineModel.class);
-            modelWriter.setJsonOutput(true);
             modelWriter.write(apexEngineModel, baOutputStream);
             return baOutputStream.toString();
         } catch (final Exception e) {
index cc19080..2e97c54 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2019-2021 Nordix Foundation.
+ *  Modifications Copyright (C) 2019-2022 Nordix Foundation.
  *  Modifications Copyright (C) 2020-2021 Bell Canada. All rights reserved.
  *  Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
  * ================================================================================
@@ -41,6 +41,7 @@ import org.onap.policy.apex.service.parameters.eventprotocol.EventProtocolParame
 import org.onap.policy.common.parameters.ParameterException;
 import org.onap.policy.common.parameters.ParameterService;
 import org.onap.policy.common.parameters.ValidationResult;
+import org.onap.policy.common.utils.coder.CoderException;
 import org.onap.policy.common.utils.coder.StandardCoder;
 import org.onap.policy.models.tosca.authorative.concepts.ToscaServiceTemplate;
 import org.slf4j.ext.XLogger;
@@ -61,6 +62,8 @@ public class ApexParameterHandler {
     private static final XLogger LOGGER = XLoggerFactory.getXLogger(ApexParameterHandler.class);
 
     private static final String POLICY_TYPE_IMPL = "policy_type_impl";
+    private static final String APEX_POLICY_MODEL = "apexPolicyModel";
+
     private String policyModel;
     private String apexConfig;
 
@@ -81,13 +84,13 @@ public class ApexParameterHandler {
             // Register the adapters for our carrier technologies and event protocols with GSON
             // @formatter:off
             final var gson = new GsonBuilder()
-                            .registerTypeAdapter(EngineParameters.class,
-                                            new EngineServiceParametersJsonAdapter())
-                            .registerTypeAdapter(CarrierTechnologyParameters.class,
-                                            new CarrierTechnologyParametersJsonAdapter())
-                            .registerTypeAdapter(EventProtocolParameters.class,
-                                            new EventProtocolParametersJsonAdapter())
-                            .create();
+                .registerTypeAdapter(EngineParameters.class,
+                    new EngineServiceParametersJsonAdapter())
+                .registerTypeAdapter(CarrierTechnologyParameters.class,
+                    new CarrierTechnologyParametersJsonAdapter())
+                .registerTypeAdapter(EventProtocolParameters.class,
+                    new EventProtocolParametersJsonAdapter())
+                .create();
             // @formatter:on
             parameters = gson.fromJson(apexConfig, ApexParameters.class);
         } catch (final Exception e) {
@@ -135,13 +138,13 @@ public class ApexParameterHandler {
         ParameterService.register(parameters.getEngineServiceParameters().getEngineParameters());
         ParameterService.register(parameters.getEngineServiceParameters().getEngineParameters().getContextParameters());
         ParameterService.register(parameters.getEngineServiceParameters().getEngineParameters().getContextParameters()
-                        .getSchemaParameters());
+            .getSchemaParameters());
         ParameterService.register(parameters.getEngineServiceParameters().getEngineParameters().getContextParameters()
-                        .getDistributorParameters());
+            .getDistributorParameters());
         ParameterService.register(parameters.getEngineServiceParameters().getEngineParameters().getContextParameters()
-                        .getLockManagerParameters());
+            .getLockManagerParameters());
         ParameterService.register(parameters.getEngineServiceParameters().getEngineParameters().getContextParameters()
-                        .getPersistorParameters());
+            .getPersistorParameters());
     }
 
     private void parseConfigAndModel(final String toscaPolicyFilePath) throws ApexException {
@@ -162,11 +165,7 @@ public class ApexParameterHandler {
                     || EVENT_OUTPUT_PARAMETERS.equals(property.getKey())) {
                     body = standardCoder.convert(property.getValue(), JsonObject.class);
                     if (ENGINE_SERVICE_PARAMETERS.equals(property.getKey())) {
-                        JsonElement policyModelObject = ((JsonObject) body).get(POLICY_TYPE_IMPL);
-                        if (null != policyModelObject) {
-                            policyModel = standardCoder.encode(policyModelObject);
-                        }
-                        ((JsonObject) body).remove(POLICY_TYPE_IMPL);
+                        policyModel = extractPolicyModel(standardCoder, body);
                     }
                 }
                 apexConfigJsonObject.add(property.getKey(), body);
@@ -176,4 +175,29 @@ public class ApexParameterHandler {
             throw new ApexException("Parsing config and model from the tosca policy failed.", e);
         }
     }
+
+    private String extractPolicyModel(StandardCoder standardCoder, JsonElement body) throws CoderException {
+        // Check for "policy_type_impl"
+        JsonElement policyTypeImplObject = ((JsonObject) body).get(POLICY_TYPE_IMPL);
+        if (null == policyTypeImplObject) {
+            return null;
+        }
+
+        // "policy_type_impl" found
+        if (policyTypeImplObject instanceof JsonObject) {
+
+            // Check for "apexPolicyModel", this is used to encapsulate policy models sometimes
+            JsonElement policyModelObject = ((JsonObject) policyTypeImplObject).get(APEX_POLICY_MODEL);
+
+            if (policyModelObject != null) {
+                // Policy model encased in an "apexPolicyModel" object
+                return standardCoder.encode(policyModelObject);
+            } else {
+                // No encasement
+                return standardCoder.encode(policyTypeImplObject);
+            }
+        } else {
+            return policyTypeImplObject.getAsString();
+        }
+    }
 }
index c58cb08..e2149ef 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2020 Nordix Foundation.
+ *  Modifications Copyright (C) 2020,2022 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -66,7 +66,7 @@ public class JsonEventHandlerForPojoTest {
         final String policyModelString =
                 TextFileUtils.getTextFileAsString("src/test/resources/policymodels/PojoEventModel.json");
         final ApexModelReader<AxPolicyModel> modelReader = new ApexModelReader<AxPolicyModel>(AxPolicyModel.class);
-        modelReader.setValidateFlag(false);
+        modelReader.setValidate(false);
         final AxPolicyModel apexPolicyModel = modelReader.read(new ByteArrayInputStream(policyModelString.getBytes()));
 
         // Set up the models in the model service
index 0095c96..a903a88 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2020-2021 Nordix Foundation.
+ *  Modifications Copyright (C) 2020-2022 Nordix Foundation.
  *  Modifications Copyright (C) 2020-2022 Bell Canada. All rights reserved.
  *  Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
  * ================================================================================
@@ -199,7 +199,7 @@ public class EngineServiceImplTest {
             .isInstanceOf(ApexException.class).hasMessage("engine with key DummyKey:0.0.1 not found in engine service");
 
         String status = esImpl.getStatus(esImpl.getEngineKeys().iterator().next());
-        assertTrue(status.contains("\n   \"apexEngineModel\" :"));
+        assertTrue(status.contains("\"timestamp\":"));
 
         assertFalse(esImpl.isStarted());
         assertFalse(esImpl.isStarted(null));
@@ -334,7 +334,7 @@ public class EngineServiceImplTest {
         assertEquals(AxEngineState.EXECUTING, esImpl.getState());
 
         String status = esImpl.getStatus(esImpl.getEngineKeys().iterator().next());
-        assertTrue(status.contains("\n   \"apexEngineModel\" :"));
+        assertTrue(status.contains("\"timestamp\":"));
         assertTrue(esImpl.isStarted());
         assertTrue(esImpl.isStarted(esImpl.getEngineKeys().iterator().next()));
         assertFalse(esImpl.isStopped());
@@ -421,4 +421,4 @@ public class EngineServiceImplTest {
             fail("test should not throw an exception");
         }
     }
-}
\ No newline at end of file
+}
index c95b465..b904fb1 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2020 Nordix Foundation.
+ *  Modifications Copyright (C) 2020,2022 Nordix Foundation.
  *  Modifications Copyright (C) 2021-2022 Bell Canada Intellectual Property. All rights reserved.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
@@ -219,7 +219,7 @@ public class EngineWorkerTest {
         assertEquals(AxEngineState.STOPPED, worker.getState());
 
         String status = worker.getStatus(worker.getEngineKeys().iterator().next());
-        assertEquals("{\"apexEngineModel\":{\"key\":", status.replaceAll("\\s+", "").substring(0, 26));
+        assertEquals("{\"TimeStamp\":", runtimeInfo.replaceAll("\\s+", "").substring(0, 13));
 
         assertFalse(worker.isStarted());
         assertFalse(worker.isStarted(null));
@@ -380,7 +380,7 @@ public class EngineWorkerTest {
         assertEquals(AxEngineState.READY, worker.getState());
 
         String status = worker.getStatus(worker.getEngineKeys().iterator().next());
-        assertEquals("{\"apexEngineModel\":{\"key\":", status.replaceAll("\\s+", "").substring(0, 26));
+        assertEquals("{\"timestamp\":", status.replaceAll("\\s+", "").substring(0, 13));
 
         assertTrue(worker.isStarted());
         assertTrue(worker.isStarted(worker.getEngineKeys().iterator().next()));
@@ -457,4 +457,4 @@ public class EngineWorkerTest {
         assertEquals(policyCounter.getPolicyExecutedCount(),
                 policyCounter.getPolicyExecutedFailCount() + policyCounter.getPolicyExecutedSuccessCount());
     }
-}
\ No newline at end of file
+}
index 59ff76e..5a7490f 100644 (file)
 {
-   "apexPolicyModel" : {
-      "key" : {
-         "name" : "PojoEventModel",
-         "version" : "0.0.1"
-      },
-      "keyInformation" : {
-         "key" : {
-            "name" : "PojoEventModel_KeyInfo",
-            "version" : "0.0.1"
-         },
-         "keyInfoMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "PojoEvent",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "PojoEvent",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "60411084-d846-3681-9ba7-093bacfd78d2",
-                  "description" : "Generated description for concept referred to by key \"PojoEvent:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "PojoEventModel",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "PojoEventModel",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "1a77f36c-7dd2-3188-91d1-5839114f3a3f",
-                  "description" : "Generated description for concept referred to by key \"PojoEventModel:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "PojoEventModel_Albums",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "PojoEventModel_Albums",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "b8fe7c9c-2445-3cb0-a671-da2d380e418a",
-                  "description" : "Generated description for concept referred to by key \"PojoEventModel_Albums:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "PojoEventModel_Events",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "PojoEventModel_Events",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "fb9f68f9-f5b7-361a-8b8e-df1fe987084e",
-                  "description" : "Generated description for concept referred to by key \"PojoEventModel_Events:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "PojoEventModel_KeyInfo",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "PojoEventModel_KeyInfo",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "2156f4d7-cfb2-3e15-ab78-4aced50730bf",
-                  "description" : "Generated description for concept referred to by key \"PojoEventModel_KeyInfo:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "PojoEventModel_Policies",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "PojoEventModel_Policies",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "45fd6cff-59de-3511-8398-8a88ad01cd1a",
-                  "description" : "Generated description for concept referred to by key \"PojoEventModel_Policies:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "PojoEventModel_Schemas",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "PojoEventModel_Schemas",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "9081b534-62db-384a-b7cc-4e5fc1d781b3",
-                  "description" : "Generated description for concept referred to by key \"PojoEventModel_Schemas:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "PojoEventModel_Tasks",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "PojoEventModel_Tasks",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "1e917c60-b5e5-3849-83ca-27d795a633a9",
-                  "description" : "Generated description for concept referred to by key \"PojoEventModel_Tasks:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "PojoListEvent",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "PojoListEvent",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "d9627e71-18ac-38d7-b033-33a704132afc",
-                  "description" : "Generated description for concept referred to by key \"PojoListEvent:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "PojoNoFieldEvent",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "PojoNoFieldEvent",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "d42ab6d1-9b39-3d94-9a65-d47c116a478f",
-                  "description" : "Generated description for concept referred to by key \"PojoNoFieldEvent:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "PojoTooManyFieldsEvent",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "PojoTooManyFieldsEvent",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "1d33d978-297f-3253-b9c6-f0bc9dc63e24",
-                  "description" : "Generated description for concept referred to by key \"PojoTooManyFieldsEvent:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TestPojoListType",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestPojoListType",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "ad74efe5-833f-30e5-837c-0d9ae607e4a2",
-                  "description" : "Generated description for concept referred to by key \"TestPojoListType:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TestPojoType",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestPojoType",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "254c248e-f172-3871-83aa-4de45f01b6c7",
-                  "description" : "Generated description for concept referred to by key \"TestPojoType:0.0.1\""
-               }
-            } ]
-         }
-      },
-      "policies" : {
-         "key" : {
-            "name" : "PojoEventModel_Policies",
-            "version" : "0.0.1"
-         },
-         "policyMap" : {
-            "entry" : [ ]
-         }
-      },
-      "tasks" : {
-         "key" : {
-            "name" : "PojoEventModel_Tasks",
-            "version" : "0.0.1"
-         },
-         "taskMap" : {
-            "entry" : [ ]
-         }
-      },
-      "events" : {
-         "key" : {
-            "name" : "PojoEventModel_Events",
-            "version" : "0.0.1"
-         },
-         "eventMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "PojoEvent",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "PojoEvent",
-                     "version" : "0.0.1"
-                  },
-                  "nameSpace" : "org.onap.policy.apex.service.engine.event.testpojos",
-                  "source" : "Outside",
-                  "target" : "Apex",
-                  "parameter" : {
-                     "entry" : [ {
-                        "key" : "POJO_PAR",
-                        "value" : {
-                           "key" : "POJO_PAR",
-                           "fieldSchemaKey" : {
-                              "name" : "TestPojoType",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
+  "key": {
+    "name": "PojoEventModel",
+    "version": "0.0.1"
+  },
+  "keyInformation": {
+    "key": {
+      "name": "PojoEventModel_KeyInfo",
+      "version": "0.0.1"
+    },
+    "keyInfoMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "PojoEvent",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "PojoEvent",
+              "version": "0.0.1"
+            },
+            "UUID": "60411084-d846-3681-9ba7-093bacfd78d2",
+            "description": "Generated description for concept referred to by key \"PojoEvent:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "PojoEventModel",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "PojoEventModel",
+              "version": "0.0.1"
+            },
+            "UUID": "1a77f36c-7dd2-3188-91d1-5839114f3a3f",
+            "description": "Generated description for concept referred to by key \"PojoEventModel:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "PojoEventModel_Albums",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "PojoEventModel_Albums",
+              "version": "0.0.1"
+            },
+            "UUID": "b8fe7c9c-2445-3cb0-a671-da2d380e418a",
+            "description": "Generated description for concept referred to by key \"PojoEventModel_Albums:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "PojoEventModel_Events",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "PojoEventModel_Events",
+              "version": "0.0.1"
+            },
+            "UUID": "fb9f68f9-f5b7-361a-8b8e-df1fe987084e",
+            "description": "Generated description for concept referred to by key \"PojoEventModel_Events:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "PojoEventModel_KeyInfo",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "PojoEventModel_KeyInfo",
+              "version": "0.0.1"
+            },
+            "UUID": "2156f4d7-cfb2-3e15-ab78-4aced50730bf",
+            "description": "Generated description for concept referred to by key \"PojoEventModel_KeyInfo:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "PojoEventModel_Policies",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "PojoEventModel_Policies",
+              "version": "0.0.1"
+            },
+            "UUID": "45fd6cff-59de-3511-8398-8a88ad01cd1a",
+            "description": "Generated description for concept referred to by key \"PojoEventModel_Policies:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "PojoEventModel_Schemas",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "PojoEventModel_Schemas",
+              "version": "0.0.1"
+            },
+            "UUID": "9081b534-62db-384a-b7cc-4e5fc1d781b3",
+            "description": "Generated description for concept referred to by key \"PojoEventModel_Schemas:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "PojoEventModel_Tasks",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "PojoEventModel_Tasks",
+              "version": "0.0.1"
+            },
+            "UUID": "1e917c60-b5e5-3849-83ca-27d795a633a9",
+            "description": "Generated description for concept referred to by key \"PojoEventModel_Tasks:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "PojoListEvent",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "PojoListEvent",
+              "version": "0.0.1"
+            },
+            "UUID": "d9627e71-18ac-38d7-b033-33a704132afc",
+            "description": "Generated description for concept referred to by key \"PojoListEvent:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "PojoNoFieldEvent",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "PojoNoFieldEvent",
+              "version": "0.0.1"
+            },
+            "UUID": "d42ab6d1-9b39-3d94-9a65-d47c116a478f",
+            "description": "Generated description for concept referred to by key \"PojoNoFieldEvent:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "PojoTooManyFieldsEvent",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "PojoTooManyFieldsEvent",
+              "version": "0.0.1"
+            },
+            "UUID": "1d33d978-297f-3253-b9c6-f0bc9dc63e24",
+            "description": "Generated description for concept referred to by key \"PojoTooManyFieldsEvent:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TestPojoListType",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestPojoListType",
+              "version": "0.0.1"
+            },
+            "UUID": "ad74efe5-833f-30e5-837c-0d9ae607e4a2",
+            "description": "Generated description for concept referred to by key \"TestPojoListType:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TestPojoType",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestPojoType",
+              "version": "0.0.1"
+            },
+            "UUID": "254c248e-f172-3871-83aa-4de45f01b6c7",
+            "description": "Generated description for concept referred to by key \"TestPojoType:0.0.1\""
+          }
+        }
+      ]
+    }
+  },
+  "policies": {
+    "key": {
+      "name": "PojoEventModel_Policies",
+      "version": "0.0.1"
+    },
+    "policyMap": {
+      "entry": []
+    }
+  },
+  "tasks": {
+    "key": {
+      "name": "PojoEventModel_Tasks",
+      "version": "0.0.1"
+    },
+    "taskMap": {
+      "entry": []
+    }
+  },
+  "events": {
+    "key": {
+      "name": "PojoEventModel_Events",
+      "version": "0.0.1"
+    },
+    "eventMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "PojoEvent",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "PojoEvent",
+              "version": "0.0.1"
+            },
+            "nameSpace": "org.onap.policy.apex.service.engine.event.testpojos",
+            "source": "Outside",
+            "target": "Apex",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "POJO_PAR",
+                  "value": {
+                    "key": "POJO_PAR",
+                    "fieldSchemaKey": {
+                      "name": "TestPojoType",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
                   }
-               }
-            }, {
-               "key" : {
-                  "name" : "PojoListEvent",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "PojoListEvent",
-                     "version" : "0.0.1"
-                  },
-                  "nameSpace" : "org.onap.policy.apex.service.engine.event.testpojos",
-                  "source" : "Outside",
-                  "target" : "Apex",
-                  "parameter" : {
-                     "entry" : [ {
-                        "key" : "POJO_LIST_PAR",
-                        "value" : {
-                           "key" : "POJO_LIST_PAR",
-                           "fieldSchemaKey" : {
-                              "name" : "TestPojoListType",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
+                }
+              ]
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "PojoListEvent",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "PojoListEvent",
+              "version": "0.0.1"
+            },
+            "nameSpace": "org.onap.policy.apex.service.engine.event.testpojos",
+            "source": "Outside",
+            "target": "Apex",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "POJO_LIST_PAR",
+                  "value": {
+                    "key": "POJO_LIST_PAR",
+                    "fieldSchemaKey": {
+                      "name": "TestPojoListType",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
                   }
-               }
-            }, {
-               "key" : {
-                  "name" : "PojoNoFieldEvent",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "PojoNoFieldEvent",
-                     "version" : "0.0.1"
-                  },
-                  "nameSpace" : "org.onap.policy.apex.service.engine.event.testpojos",
-                  "source" : "Outside",
-                  "target" : "Apex",
-                  "parameter" : {
-                     "entry" : [ ]
+                }
+              ]
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "PojoNoFieldEvent",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "PojoNoFieldEvent",
+              "version": "0.0.1"
+            },
+            "nameSpace": "org.onap.policy.apex.service.engine.event.testpojos",
+            "source": "Outside",
+            "target": "Apex",
+            "parameter": {
+              "entry": []
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "PojoTooManyFieldsEvent",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "PojoTooManyFieldsEvent",
+              "version": "0.0.1"
+            },
+            "nameSpace": "org.onap.policy.apex.service.engine.event.testpojos",
+            "source": "Outside",
+            "target": "Apex",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "POJO_LIST_PAR0",
+                  "value": {
+                    "key": "POJO_LIST_PAR0",
+                    "fieldSchemaKey": {
+                      "name": "TestPojoListType",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
                   }
-               }
-            }, {
-               "key" : {
-                  "name" : "PojoTooManyFieldsEvent",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "PojoTooManyFieldsEvent",
-                     "version" : "0.0.1"
-                  },
-                  "nameSpace" : "org.onap.policy.apex.service.engine.event.testpojos",
-                  "source" : "Outside",
-                  "target" : "Apex",
-                  "parameter" : {
-                     "entry" : [ {
-                        "key" : "POJO_LIST_PAR0",
-                        "value" : {
-                           "key" : "POJO_LIST_PAR0",
-                           "fieldSchemaKey" : {
-                              "name" : "TestPojoListType",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     }, {
-                        "key" : "POJO_LIST_PAR1",
-                        "value" : {
-                           "key" : "POJO_LIST_PAR1",
-                           "fieldSchemaKey" : {
-                              "name" : "TestPojoListType",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
+                },
+                {
+                  "key": "POJO_LIST_PAR1",
+                  "value": {
+                    "key": "POJO_LIST_PAR1",
+                    "fieldSchemaKey": {
+                      "name": "TestPojoListType",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
                   }
-               }
-            } ]
-         }
-      },
-      "albums" : {
-         "key" : {
-            "name" : "PojoEventModel_Albums",
-            "version" : "0.0.1"
-         },
-         "albums" : {
-            "entry" : [ ]
-         }
-      },
-      "schemas" : {
-         "key" : {
-            "name" : "PojoEventModel_Schemas",
-            "version" : "0.0.1"
-         },
-         "schemas" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "TestPojoListType",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestPojoListType",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "org.onap.policy.apex.service.engine.event.testpojos.DummyPojoList"
-               }
-            }, {
-               "key" : {
-                  "name" : "TestPojoType",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TestPojoType",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "org.onap.policy.apex.service.engine.event.testpojos.DummyPojo"
-               }
-            } ]
-         }
-      }
-   }
+                }
+              ]
+            }
+          }
+        }
+      ]
+    }
+  },
+  "albums": {
+    "key": {
+      "name": "PojoEventModel_Albums",
+      "version": "0.0.1"
+    },
+    "albums": {
+      "entry": []
+    }
+  },
+  "schemas": {
+    "key": {
+      "name": "PojoEventModel_Schemas",
+      "version": "0.0.1"
+    },
+    "schemas": {
+      "entry": [
+        {
+          "key": {
+            "name": "TestPojoListType",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestPojoListType",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "org.onap.policy.apex.service.engine.event.testpojos.DummyPojoList"
+          }
+        },
+        {
+          "key": {
+            "name": "TestPojoType",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TestPojoType",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "org.onap.policy.apex.service.engine.event.testpojos.DummyPojo"
+          }
+        }
+      ]
+    }
+  }
 }
index 5c06288..12c402d 100644 (file)
 {
-   "apexPolicyModel" : {
-      "key" : {
-         "name" : "SmallModel",
-         "version" : "0.0.1"
-      },
-      "keyInformation" : {
-         "key" : {
-            "name" : "SmallModel_KeyInfo",
-            "version" : "0.0.1"
-         },
-         "keyInfoMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "BasicContextAlbum",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "BasicContextAlbum",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "fec1b353-b35f-4384-b7d9-69622059c248",
-                  "description" : "Generated description for a concept called \"BasicContextAlbum\" with version \"0.0.1\" and UUID \"fec1b353-b35f-4384-b7d9-69622059c248\""
-               }
-            }, {
-               "key" : {
-                  "name" : "BasicEvent",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "BasicEvent",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "cc8d3c1a-e975-459a-bcd2-69f423eaa1f3",
-                  "description" : "Generated description for a concept called \"BasicEvent\" with version \"0.0.1\" and UUID \"cc8d3c1a-e975-459a-bcd2-69f423eaa1f3\""
-               }
-            }, {
-               "key" : {
-                  "name" : "BasicPolicy",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "BasicPolicy",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "d0c5d8ee-5fe7-4978-89ce-4a3e69cad043",
-                  "description" : "Generated description for a concept called \"BasicPolicy\" with version \"0.0.1\" and UUID \"d0c5d8ee-5fe7-4978-89ce-4a3e69cad043\""
-               }
-            }, {
-               "key" : {
-                  "name" : "BasicTask",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "BasicTask",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "c5651414-fc1c-493b-878d-75f0ce685c36",
-                  "description" : "Generated description for a concept called \"BasicTask\" with version \"0.0.1\" and UUID \"c5651414-fc1c-493b-878d-75f0ce685c36\""
-               }
-            }, {
-               "key" : {
-                  "name" : "IntType",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "IntType",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "790ff718-8dc0-44e0-89d8-1b3bbe238310",
-                  "description" : "Generated description for a concept called \"IntType\" with version \"0.0.1\" and UUID \"790ff718-8dc0-44e0-89d8-1b3bbe238310\""
-               }
-            }, {
-               "key" : {
-                  "name" : "SmallModel",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SmallModel",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "a1bd1f4e-713b-456b-b1a8-bb48beee28e8",
-                  "description" : "Generated description for a concept called \"SmallModel\" with version \"0.0.1\" and UUID \"a1bd1f4e-713b-456b-b1a8-bb48beee28e8\""
-               }
-            }, {
-               "key" : {
-                  "name" : "SmallModel_Albums",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SmallModel_Albums",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "72bed9af-ab7d-3379-b9f7-b5eca5c9ef22",
-                  "description" : "Generated description for concept referred to by key \"SmallModel_Albums:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "SmallModel_Events",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SmallModel_Events",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "796dc6b0-627d-34ae-a5e2-1bc4b4b486b8",
-                  "description" : "Generated description for concept referred to by key \"SmallModel_Events:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "SmallModel_KeyInfo",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SmallModel_KeyInfo",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "b4876774-6907-3d27-a2b8-f05737c5ee4a",
-                  "description" : "Generated description for concept referred to by key \"SmallModel_KeyInfo:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "SmallModel_Policies",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SmallModel_Policies",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "5bcf946b-67be-3190-a906-f954896f999f",
-                  "description" : "Generated description for concept referred to by key \"SmallModel_Policies:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "SmallModel_Schemas",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SmallModel_Schemas",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "c25bf5c3-7f1e-3667-b8a9-971ba21517bc",
-                  "description" : "Generated description for concept referred to by key \"SmallModel_Schemas:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "SmallModel_Tasks",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SmallModel_Tasks",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "43b015ca-2ed1-3a35-b103-e8a5aa68f1ef",
-                  "description" : "Generated description for concept referred to by key \"SmallModel_Tasks:0.0.1\""
-               }
-            } ]
-         }
-      },
-      "policies" : {
-         "key" : {
-            "name" : "SmallModel_Policies",
-            "version" : "0.0.1"
-         },
-         "policyMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "BasicPolicy",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "policyKey" : {
-                     "name" : "BasicPolicy",
-                     "version" : "0.0.1"
-                  },
-                  "template" : "FREEFORM",
-                  "state" : {
-                     "entry" : [ {
-                        "key" : "OnlyState",
-                        "value" : {
-                           "stateKey" : {
-                              "parentKeyName" : "BasicPolicy",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "OnlyState"
-                           },
-                           "trigger" : {
-                              "name" : "BasicEvent",
-                              "version" : "0.0.1"
-                           },
-                           "stateOutputs" : {
-                              "entry" : [ {
-                                 "key" : "OnlyOutput",
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "BasicPolicy",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "OnlyState",
-                                       "localName" : "OnlyOutput"
-                                    },
-                                    "outgoingEvent" : {
-                                       "name" : "BasicEvent",
-                                       "version" : "0.0.1"
-                                    },
-                                    "nextState" : {
-                                       "parentKeyName" : "NULL",
-                                       "parentKeyVersion" : "0.0.0",
-                                       "parentLocalName" : "NULL",
-                                       "localName" : "NULL"
-                                    }
-                                 }
-                              } ]
-                           },
-                           "contextAlbumReference" : [ {
-                              "name" : "BasicContextAlbum",
-                              "version" : "0.0.1"
-                           } ],
-                           "taskSelectionLogic" : {
-                              "key" : "NULL",
-                              "logicFlavour" : "UNDEFINED",
-                              "logic" : ""
-                           },
-                           "stateFinalizerLogicMap" : {
-                              "entry" : [ ]
-                           },
-                           "defaultTask" : {
-                              "name" : "BasicTask",
-                              "version" : "0.0.1"
-                           },
-                           "taskReferences" : {
-                              "entry" : [ {
-                                 "key" : {
-                                    "name" : "BasicTask",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "BasicPolicy",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "OnlyState",
-                                       "localName" : "BasicTask"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "BasicPolicy",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "OnlyState",
-                                       "localName" : "OnlyOutput"
-                                    }
-                                 }
-                              } ]
-                           }
+  "key": {
+    "name": "SmallModel",
+    "version": "0.0.1"
+  },
+  "keyInformation": {
+    "key": {
+      "name": "SmallModel_KeyInfo",
+      "version": "0.0.1"
+    },
+    "keyInfoMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "BasicContextAlbum",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "BasicContextAlbum",
+              "version": "0.0.1"
+            },
+            "UUID": "fec1b353-b35f-4384-b7d9-69622059c248",
+            "description": "Generated description for a concept called \"BasicContextAlbum\" with version \"0.0.1\" and UUID \"fec1b353-b35f-4384-b7d9-69622059c248\""
+          }
+        },
+        {
+          "key": {
+            "name": "BasicEvent",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "BasicEvent",
+              "version": "0.0.1"
+            },
+            "UUID": "cc8d3c1a-e975-459a-bcd2-69f423eaa1f3",
+            "description": "Generated description for a concept called \"BasicEvent\" with version \"0.0.1\" and UUID \"cc8d3c1a-e975-459a-bcd2-69f423eaa1f3\""
+          }
+        },
+        {
+          "key": {
+            "name": "BasicPolicy",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "BasicPolicy",
+              "version": "0.0.1"
+            },
+            "UUID": "d0c5d8ee-5fe7-4978-89ce-4a3e69cad043",
+            "description": "Generated description for a concept called \"BasicPolicy\" with version \"0.0.1\" and UUID \"d0c5d8ee-5fe7-4978-89ce-4a3e69cad043\""
+          }
+        },
+        {
+          "key": {
+            "name": "BasicTask",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "BasicTask",
+              "version": "0.0.1"
+            },
+            "UUID": "c5651414-fc1c-493b-878d-75f0ce685c36",
+            "description": "Generated description for a concept called \"BasicTask\" with version \"0.0.1\" and UUID \"c5651414-fc1c-493b-878d-75f0ce685c36\""
+          }
+        },
+        {
+          "key": {
+            "name": "IntType",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "IntType",
+              "version": "0.0.1"
+            },
+            "UUID": "790ff718-8dc0-44e0-89d8-1b3bbe238310",
+            "description": "Generated description for a concept called \"IntType\" with version \"0.0.1\" and UUID \"790ff718-8dc0-44e0-89d8-1b3bbe238310\""
+          }
+        },
+        {
+          "key": {
+            "name": "SmallModel",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SmallModel",
+              "version": "0.0.1"
+            },
+            "UUID": "a1bd1f4e-713b-456b-b1a8-bb48beee28e8",
+            "description": "Generated description for a concept called \"SmallModel\" with version \"0.0.1\" and UUID \"a1bd1f4e-713b-456b-b1a8-bb48beee28e8\""
+          }
+        },
+        {
+          "key": {
+            "name": "SmallModel_Albums",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SmallModel_Albums",
+              "version": "0.0.1"
+            },
+            "UUID": "72bed9af-ab7d-3379-b9f7-b5eca5c9ef22",
+            "description": "Generated description for concept referred to by key \"SmallModel_Albums:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "SmallModel_Events",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SmallModel_Events",
+              "version": "0.0.1"
+            },
+            "UUID": "796dc6b0-627d-34ae-a5e2-1bc4b4b486b8",
+            "description": "Generated description for concept referred to by key \"SmallModel_Events:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "SmallModel_KeyInfo",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SmallModel_KeyInfo",
+              "version": "0.0.1"
+            },
+            "UUID": "b4876774-6907-3d27-a2b8-f05737c5ee4a",
+            "description": "Generated description for concept referred to by key \"SmallModel_KeyInfo:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "SmallModel_Policies",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SmallModel_Policies",
+              "version": "0.0.1"
+            },
+            "UUID": "5bcf946b-67be-3190-a906-f954896f999f",
+            "description": "Generated description for concept referred to by key \"SmallModel_Policies:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "SmallModel_Schemas",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SmallModel_Schemas",
+              "version": "0.0.1"
+            },
+            "UUID": "c25bf5c3-7f1e-3667-b8a9-971ba21517bc",
+            "description": "Generated description for concept referred to by key \"SmallModel_Schemas:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "SmallModel_Tasks",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SmallModel_Tasks",
+              "version": "0.0.1"
+            },
+            "UUID": "43b015ca-2ed1-3a35-b103-e8a5aa68f1ef",
+            "description": "Generated description for concept referred to by key \"SmallModel_Tasks:0.0.1\""
+          }
+        }
+      ]
+    }
+  },
+  "policies": {
+    "key": {
+      "name": "SmallModel_Policies",
+      "version": "0.0.1"
+    },
+    "policyMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "BasicPolicy",
+            "version": "0.0.1"
+          },
+          "value": {
+            "policyKey": {
+              "name": "BasicPolicy",
+              "version": "0.0.1"
+            },
+            "template": "FREEFORM",
+            "state": {
+              "entry": [
+                {
+                  "key": "OnlyState",
+                  "value": {
+                    "stateKey": {
+                      "parentKeyName": "BasicPolicy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "OnlyState"
+                    },
+                    "trigger": {
+                      "name": "BasicEvent",
+                      "version": "0.0.1"
+                    },
+                    "stateOutputs": {
+                      "entry": [
+                        {
+                          "key": "OnlyOutput",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "BasicPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "OnlyState",
+                              "localName": "OnlyOutput"
+                            },
+                            "outgoingEvent": {
+                              "name": "BasicEvent",
+                              "version": "0.0.1"
+                            },
+                            "nextState": {
+                              "parentKeyName": "NULL",
+                              "parentKeyVersion": "0.0.0",
+                              "parentLocalName": "NULL",
+                              "localName": "NULL"
+                            }
+                          }
                         }
-                     } ]
-                  },
-                  "firstState" : "OnlyState"
-               }
-            } ]
-         }
-      },
-      "tasks" : {
-         "key" : {
-            "name" : "SmallModel_Tasks",
-            "version" : "0.0.1"
-         },
-         "taskMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "BasicTask",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "BasicTask",
-                     "version" : "0.0.1"
-                  },
-                  "inputFields" : {
-                     "entry" : [ {
-                        "key" : "intPar",
-                        "value" : {
-                           "key" : "intPar",
-                           "fieldSchemaKey" : {
-                              "name" : "IntType",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
+                      ]
+                    },
+                    "contextAlbumReference": [
+                      {
+                        "name": "BasicContextAlbum",
+                        "version": "0.0.1"
+                      }
+                    ],
+                    "taskSelectionLogic": {
+                      "key": "NULL",
+                      "logicFlavour": "UNDEFINED",
+                      "logic": ""
+                    },
+                    "stateFinalizerLogicMap": {
+                      "entry": []
+                    },
+                    "defaultTask": {
+                      "name": "BasicTask",
+                      "version": "0.0.1"
+                    },
+                    "taskReferences": {
+                      "entry": [
+                        {
+                          "key": {
+                            "name": "BasicTask",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "BasicPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "OnlyState",
+                              "localName": "BasicTask"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "BasicPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "OnlyState",
+                              "localName": "OnlyOutput"
+                            }
+                          }
                         }
-                     } ]
-                  },
-                  "outputFields" : {
-                     "entry" : [ {
-                        "key" : "intPar",
-                        "value" : {
-                           "key" : "intPar",
-                           "fieldSchemaKey" : {
-                              "name" : "IntType",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  },
-                  "taskParameters" : {
-                     "entry" : [ ]
-                  },
-                  "contextAlbumReference" : [ {
-                     "name" : "BasicContextAlbum",
-                     "version" : "0.0.1"
-                  } ],
-                  "taskLogic" : {
-                     "key" : "TaskLogic",
-                     "logicFlavour" : "JAVASCRIPT",
-                     "logic" : "executor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"BasicContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
+                      ]
+                    }
                   }
-               }
-            } ]
-         }
-      },
-      "events" : {
-         "key" : {
-            "name" : "SmallModel_Events",
-            "version" : "0.0.1"
-         },
-         "eventMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "BasicEvent",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "BasicEvent",
-                     "version" : "0.0.1"
-                  },
-                  "nameSpace" : "org.onap.policy.apex.events",
-                  "source" : "source",
-                  "target" : "target",
-                  "parameter" : {
-                     "entry" : [ {
-                        "key" : "intPar",
-                        "value" : {
-                           "key" : "intPar",
-                           "fieldSchemaKey" : {
-                              "name" : "IntType",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
+                }
+              ]
+            },
+            "firstState": "OnlyState"
+          }
+        }
+      ]
+    }
+  },
+  "tasks": {
+    "key": {
+      "name": "SmallModel_Tasks",
+      "version": "0.0.1"
+    },
+    "taskMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "BasicTask",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "BasicTask",
+              "version": "0.0.1"
+            },
+            "inputFields": {
+              "entry": [
+                {
+                  "key": "intPar",
+                  "value": {
+                    "key": "intPar",
+                    "fieldSchemaKey": {
+                      "name": "IntType",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "outputFields": {
+              "entry": [
+                {
+                  "key": "intPar",
+                  "value": {
+                    "key": "intPar",
+                    "fieldSchemaKey": {
+                      "name": "IntType",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
                   }
-               }
-            } ]
-         }
-      },
-      "albums" : {
-         "key" : {
-            "name" : "SmallModel_Albums",
-            "version" : "0.0.1"
-         },
-         "albums" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "BasicContextAlbum",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "BasicContextAlbum",
-                     "version" : "0.0.1"
-                  },
-                  "scope" : "GLOBAL",
-                  "isWritable" : true,
-                  "itemSchema" : {
-                     "name" : "IntType",
-                     "version" : "0.0.1"
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": []
+            },
+            "contextAlbumReference": [
+              {
+                "name": "BasicContextAlbum",
+                "version": "0.0.1"
+              }
+            ],
+            "taskLogic": {
+              "key": "TaskLogic",
+              "logicFlavour": "JAVASCRIPT",
+              "logic": "executor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"BasicContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
+            }
+          }
+        }
+      ]
+    }
+  },
+  "events": {
+    "key": {
+      "name": "SmallModel_Events",
+      "version": "0.0.1"
+    },
+    "eventMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "BasicEvent",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "BasicEvent",
+              "version": "0.0.1"
+            },
+            "nameSpace": "org.onap.policy.apex.events",
+            "source": "source",
+            "target": "target",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "intPar",
+                  "value": {
+                    "key": "intPar",
+                    "fieldSchemaKey": {
+                      "name": "IntType",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
                   }
-               }
-            } ]
-         }
-      },
-      "schemas" : {
-         "key" : {
-            "name" : "SmallModel_Schemas",
-            "version" : "0.0.1"
-         },
-         "schemas" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "IntType",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "IntType",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Integer"
-               }
-            } ]
-         }
-      }
-   }
+                }
+              ]
+            }
+          }
+        }
+      ]
+    }
+  },
+  "albums": {
+    "key": {
+      "name": "SmallModel_Albums",
+      "version": "0.0.1"
+    },
+    "albums": {
+      "entry": [
+        {
+          "key": {
+            "name": "BasicContextAlbum",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "BasicContextAlbum",
+              "version": "0.0.1"
+            },
+            "scope": "GLOBAL",
+            "isWritable": true,
+            "itemSchema": {
+              "name": "IntType",
+              "version": "0.0.1"
+            }
+          }
+        }
+      ]
+    }
+  },
+  "schemas": {
+    "key": {
+      "name": "SmallModel_Schemas",
+      "version": "0.0.1"
+    },
+    "schemas": {
+      "entry": [
+        {
+          "key": {
+            "name": "IntType",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "IntType",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Integer"
+          }
+        }
+      ]
+    }
+  }
 }
index bbee7da..21ee7e3 100644 (file)
 {
-   "apexPolicyModel" : {
-      "key" : {
-         "name" : "SmallModelDifferent",
-         "version" : "0.0.1"
-      },
-      "keyInformation" : {
-         "key" : {
-            "name" : "SmallModel_KeyInfo",
-            "version" : "0.0.1"
-         },
-         "keyInfoMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "BasicContextAlbum",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "BasicContextAlbum",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "fec1b353-b35f-4384-b7d9-69622059c248",
-                  "description" : "Generated description for a concept called \"BasicContextAlbum\" with version \"0.0.1\" and UUID \"fec1b353-b35f-4384-b7d9-69622059c248\""
-               }
-            }, {
-               "key" : {
-                  "name" : "BasicEvent",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "BasicEvent",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "cc8d3c1a-e975-459a-bcd2-69f423eaa1f3",
-                  "description" : "Generated description for a concept called \"BasicEvent\" with version \"0.0.1\" and UUID \"cc8d3c1a-e975-459a-bcd2-69f423eaa1f3\""
-               }
-            }, {
-               "key" : {
-                  "name" : "BasicPolicy",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "BasicPolicy",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "d0c5d8ee-5fe7-4978-89ce-4a3e69cad043",
-                  "description" : "Generated description for a concept called \"BasicPolicy\" with version \"0.0.1\" and UUID \"d0c5d8ee-5fe7-4978-89ce-4a3e69cad043\""
-               }
-            }, {
-               "key" : {
-                  "name" : "BasicTask",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "BasicTask",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "c5651414-fc1c-493b-878d-75f0ce685c36",
-                  "description" : "Generated description for a concept called \"BasicTask\" with version \"0.0.1\" and UUID \"c5651414-fc1c-493b-878d-75f0ce685c36\""
-               }
-            }, {
-               "key" : {
-                  "name" : "IntType",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "IntType",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "790ff718-8dc0-44e0-89d8-1b3bbe238310",
-                  "description" : "Generated description for a concept called \"IntType\" with version \"0.0.1\" and UUID \"790ff718-8dc0-44e0-89d8-1b3bbe238310\""
-               }
-            }, {
-               "key" : {
-                  "name" : "SmallModelDifferent",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SmallModelDifferent",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "a1bd1f4e-713b-456b-b1a8-bb48beee28e8",
-                  "description" : "Generated description for a concept called \"SmallModel\" with version \"0.0.1\" and UUID \"a1bd1f4e-713b-456b-b1a8-bb48beee28e8\""
-               }
-            }, {
-               "key" : {
-                  "name" : "SmallModel_Albums",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SmallModel_Albums",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "72bed9af-ab7d-3379-b9f7-b5eca5c9ef22",
-                  "description" : "Generated description for concept referred to by key \"SmallModel_Albums:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "SmallModel_Events",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SmallModel_Events",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "796dc6b0-627d-34ae-a5e2-1bc4b4b486b8",
-                  "description" : "Generated description for concept referred to by key \"SmallModel_Events:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "SmallModel_KeyInfo",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SmallModel_KeyInfo",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "b4876774-6907-3d27-a2b8-f05737c5ee4a",
-                  "description" : "Generated description for concept referred to by key \"SmallModel_KeyInfo:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "SmallModel_Policies",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SmallModel_Policies",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "5bcf946b-67be-3190-a906-f954896f999f",
-                  "description" : "Generated description for concept referred to by key \"SmallModel_Policies:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "SmallModel_Schemas",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SmallModel_Schemas",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "c25bf5c3-7f1e-3667-b8a9-971ba21517bc",
-                  "description" : "Generated description for concept referred to by key \"SmallModel_Schemas:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "SmallModel_Tasks",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SmallModel_Tasks",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "43b015ca-2ed1-3a35-b103-e8a5aa68f1ef",
-                  "description" : "Generated description for concept referred to by key \"SmallModel_Tasks:0.0.1\""
-               }
-            } ]
-         }
-      },
-      "policies" : {
-         "key" : {
-            "name" : "SmallModel_Policies",
-            "version" : "0.0.1"
-         },
-         "policyMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "BasicPolicy",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "policyKey" : {
-                     "name" : "BasicPolicy",
-                     "version" : "0.0.1"
-                  },
-                  "template" : "FREEFORM",
-                  "state" : {
-                     "entry" : [ {
-                        "key" : "OnlyState",
-                        "value" : {
-                           "stateKey" : {
-                              "parentKeyName" : "BasicPolicy",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "OnlyState"
-                           },
-                           "trigger" : {
-                              "name" : "BasicEvent",
-                              "version" : "0.0.1"
-                           },
-                           "stateOutputs" : {
-                              "entry" : [ {
-                                 "key" : "OnlyOutput",
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "BasicPolicy",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "OnlyState",
-                                       "localName" : "OnlyOutput"
-                                    },
-                                    "outgoingEvent" : {
-                                       "name" : "BasicEvent",
-                                       "version" : "0.0.1"
-                                    },
-                                    "nextState" : {
-                                       "parentKeyName" : "NULL",
-                                       "parentKeyVersion" : "0.0.0",
-                                       "parentLocalName" : "NULL",
-                                       "localName" : "NULL"
-                                    }
-                                 }
-                              } ]
-                           },
-                           "contextAlbumReference" : [ {
-                              "name" : "BasicContextAlbum",
-                              "version" : "0.0.1"
-                           } ],
-                           "taskSelectionLogic" : {
-                              "key" : "NULL",
-                              "logicFlavour" : "UNDEFINED",
-                              "logic" : ""
-                           },
-                           "stateFinalizerLogicMap" : {
-                              "entry" : [ ]
-                           },
-                           "defaultTask" : {
-                              "name" : "BasicTask",
-                              "version" : "0.0.1"
-                           },
-                           "taskReferences" : {
-                              "entry" : [ {
-                                 "key" : {
-                                    "name" : "BasicTask",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "BasicPolicy",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "OnlyState",
-                                       "localName" : "BasicTask"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "BasicPolicy",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "OnlyState",
-                                       "localName" : "OnlyOutput"
-                                    }
-                                 }
-                              } ]
-                           }
+  "key": {
+    "name": "SmallModelDifferent",
+    "version": "0.0.1"
+  },
+  "keyInformation": {
+    "key": {
+      "name": "SmallModel_KeyInfo",
+      "version": "0.0.1"
+    },
+    "keyInfoMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "BasicContextAlbum",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "BasicContextAlbum",
+              "version": "0.0.1"
+            },
+            "UUID": "fec1b353-b35f-4384-b7d9-69622059c248",
+            "description": "Generated description for a concept called \"BasicContextAlbum\" with version \"0.0.1\" and UUID \"fec1b353-b35f-4384-b7d9-69622059c248\""
+          }
+        },
+        {
+          "key": {
+            "name": "BasicEvent",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "BasicEvent",
+              "version": "0.0.1"
+            },
+            "UUID": "cc8d3c1a-e975-459a-bcd2-69f423eaa1f3",
+            "description": "Generated description for a concept called \"BasicEvent\" with version \"0.0.1\" and UUID \"cc8d3c1a-e975-459a-bcd2-69f423eaa1f3\""
+          }
+        },
+        {
+          "key": {
+            "name": "BasicPolicy",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "BasicPolicy",
+              "version": "0.0.1"
+            },
+            "UUID": "d0c5d8ee-5fe7-4978-89ce-4a3e69cad043",
+            "description": "Generated description for a concept called \"BasicPolicy\" with version \"0.0.1\" and UUID \"d0c5d8ee-5fe7-4978-89ce-4a3e69cad043\""
+          }
+        },
+        {
+          "key": {
+            "name": "BasicTask",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "BasicTask",
+              "version": "0.0.1"
+            },
+            "UUID": "c5651414-fc1c-493b-878d-75f0ce685c36",
+            "description": "Generated description for a concept called \"BasicTask\" with version \"0.0.1\" and UUID \"c5651414-fc1c-493b-878d-75f0ce685c36\""
+          }
+        },
+        {
+          "key": {
+            "name": "IntType",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "IntType",
+              "version": "0.0.1"
+            },
+            "UUID": "790ff718-8dc0-44e0-89d8-1b3bbe238310",
+            "description": "Generated description for a concept called \"IntType\" with version \"0.0.1\" and UUID \"790ff718-8dc0-44e0-89d8-1b3bbe238310\""
+          }
+        },
+        {
+          "key": {
+            "name": "SmallModelDifferent",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SmallModelDifferent",
+              "version": "0.0.1"
+            },
+            "UUID": "a1bd1f4e-713b-456b-b1a8-bb48beee28e8",
+            "description": "Generated description for a concept called \"SmallModel\" with version \"0.0.1\" and UUID \"a1bd1f4e-713b-456b-b1a8-bb48beee28e8\""
+          }
+        },
+        {
+          "key": {
+            "name": "SmallModel_Albums",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SmallModel_Albums",
+              "version": "0.0.1"
+            },
+            "UUID": "72bed9af-ab7d-3379-b9f7-b5eca5c9ef22",
+            "description": "Generated description for concept referred to by key \"SmallModel_Albums:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "SmallModel_Events",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SmallModel_Events",
+              "version": "0.0.1"
+            },
+            "UUID": "796dc6b0-627d-34ae-a5e2-1bc4b4b486b8",
+            "description": "Generated description for concept referred to by key \"SmallModel_Events:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "SmallModel_KeyInfo",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SmallModel_KeyInfo",
+              "version": "0.0.1"
+            },
+            "UUID": "b4876774-6907-3d27-a2b8-f05737c5ee4a",
+            "description": "Generated description for concept referred to by key \"SmallModel_KeyInfo:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "SmallModel_Policies",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SmallModel_Policies",
+              "version": "0.0.1"
+            },
+            "UUID": "5bcf946b-67be-3190-a906-f954896f999f",
+            "description": "Generated description for concept referred to by key \"SmallModel_Policies:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "SmallModel_Schemas",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SmallModel_Schemas",
+              "version": "0.0.1"
+            },
+            "UUID": "c25bf5c3-7f1e-3667-b8a9-971ba21517bc",
+            "description": "Generated description for concept referred to by key \"SmallModel_Schemas:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "SmallModel_Tasks",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SmallModel_Tasks",
+              "version": "0.0.1"
+            },
+            "UUID": "43b015ca-2ed1-3a35-b103-e8a5aa68f1ef",
+            "description": "Generated description for concept referred to by key \"SmallModel_Tasks:0.0.1\""
+          }
+        }
+      ]
+    }
+  },
+  "policies": {
+    "key": {
+      "name": "SmallModel_Policies",
+      "version": "0.0.1"
+    },
+    "policyMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "BasicPolicy",
+            "version": "0.0.1"
+          },
+          "value": {
+            "policyKey": {
+              "name": "BasicPolicy",
+              "version": "0.0.1"
+            },
+            "template": "FREEFORM",
+            "state": {
+              "entry": [
+                {
+                  "key": "OnlyState",
+                  "value": {
+                    "stateKey": {
+                      "parentKeyName": "BasicPolicy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "OnlyState"
+                    },
+                    "trigger": {
+                      "name": "BasicEvent",
+                      "version": "0.0.1"
+                    },
+                    "stateOutputs": {
+                      "entry": [
+                        {
+                          "key": "OnlyOutput",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "BasicPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "OnlyState",
+                              "localName": "OnlyOutput"
+                            },
+                            "outgoingEvent": {
+                              "name": "BasicEvent",
+                              "version": "0.0.1"
+                            },
+                            "nextState": {
+                              "parentKeyName": "NULL",
+                              "parentKeyVersion": "0.0.0",
+                              "parentLocalName": "NULL",
+                              "localName": "NULL"
+                            }
+                          }
                         }
-                     } ]
-                  },
-                  "firstState" : "OnlyState"
-               }
-            } ]
-         }
-      },
-      "tasks" : {
-         "key" : {
-            "name" : "SmallModel_Tasks",
-            "version" : "0.0.1"
-         },
-         "taskMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "BasicTask",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "BasicTask",
-                     "version" : "0.0.1"
-                  },
-                  "inputFields" : {
-                     "entry" : [ {
-                        "key" : "intPar",
-                        "value" : {
-                           "key" : "intPar",
-                           "fieldSchemaKey" : {
-                              "name" : "IntType",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
+                      ]
+                    },
+                    "contextAlbumReference": [
+                      {
+                        "name": "BasicContextAlbum",
+                        "version": "0.0.1"
+                      }
+                    ],
+                    "taskSelectionLogic": {
+                      "key": "NULL",
+                      "logicFlavour": "UNDEFINED",
+                      "logic": ""
+                    },
+                    "stateFinalizerLogicMap": {
+                      "entry": []
+                    },
+                    "defaultTask": {
+                      "name": "BasicTask",
+                      "version": "0.0.1"
+                    },
+                    "taskReferences": {
+                      "entry": [
+                        {
+                          "key": {
+                            "name": "BasicTask",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "BasicPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "OnlyState",
+                              "localName": "BasicTask"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "BasicPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "OnlyState",
+                              "localName": "OnlyOutput"
+                            }
+                          }
                         }
-                     } ]
-                  },
-                  "outputFields" : {
-                     "entry" : [ {
-                        "key" : "intPar",
-                        "value" : {
-                           "key" : "intPar",
-                           "fieldSchemaKey" : {
-                              "name" : "IntType",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  },
-                  "taskParameters" : {
-                     "entry" : [ ]
-                  },
-                  "contextAlbumReference" : [ {
-                     "name" : "BasicContextAlbum",
-                     "version" : "0.0.1"
-                  } ],
-                  "taskLogic" : {
-                     "key" : "TaskLogic",
-                     "logicFlavour" : "JAVASCRIPT",
-                     "logic" : "executor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"BasicContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
+                      ]
+                    }
                   }
-               }
-            } ]
-         }
-      },
-      "events" : {
-         "key" : {
-            "name" : "SmallModel_Events",
-            "version" : "0.0.1"
-         },
-         "eventMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "BasicEvent",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "BasicEvent",
-                     "version" : "0.0.1"
-                  },
-                  "nameSpace" : "org.onap.policy.apex.events",
-                  "source" : "source",
-                  "target" : "target",
-                  "parameter" : {
-                     "entry" : [ {
-                        "key" : "intPar",
-                        "value" : {
-                           "key" : "intPar",
-                           "fieldSchemaKey" : {
-                              "name" : "IntType",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
+                }
+              ]
+            },
+            "firstState": "OnlyState"
+          }
+        }
+      ]
+    }
+  },
+  "tasks": {
+    "key": {
+      "name": "SmallModel_Tasks",
+      "version": "0.0.1"
+    },
+    "taskMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "BasicTask",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "BasicTask",
+              "version": "0.0.1"
+            },
+            "inputFields": {
+              "entry": [
+                {
+                  "key": "intPar",
+                  "value": {
+                    "key": "intPar",
+                    "fieldSchemaKey": {
+                      "name": "IntType",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "outputFields": {
+              "entry": [
+                {
+                  "key": "intPar",
+                  "value": {
+                    "key": "intPar",
+                    "fieldSchemaKey": {
+                      "name": "IntType",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
                   }
-               }
-            } ]
-         }
-      },
-      "albums" : {
-         "key" : {
-            "name" : "SmallModel_Albums",
-            "version" : "0.0.1"
-         },
-         "albums" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "BasicContextAlbum",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "BasicContextAlbum",
-                     "version" : "0.0.1"
-                  },
-                  "scope" : "GLOBAL",
-                  "isWritable" : true,
-                  "itemSchema" : {
-                     "name" : "IntType",
-                     "version" : "0.0.1"
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": []
+            },
+            "contextAlbumReference": [
+              {
+                "name": "BasicContextAlbum",
+                "version": "0.0.1"
+              }
+            ],
+            "taskLogic": {
+              "key": "TaskLogic",
+              "logicFlavour": "JAVASCRIPT",
+              "logic": "executor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"BasicContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
+            }
+          }
+        }
+      ]
+    }
+  },
+  "events": {
+    "key": {
+      "name": "SmallModel_Events",
+      "version": "0.0.1"
+    },
+    "eventMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "BasicEvent",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "BasicEvent",
+              "version": "0.0.1"
+            },
+            "nameSpace": "org.onap.policy.apex.events",
+            "source": "source",
+            "target": "target",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "intPar",
+                  "value": {
+                    "key": "intPar",
+                    "fieldSchemaKey": {
+                      "name": "IntType",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
                   }
-               }
-            } ]
-         }
-      },
-      "schemas" : {
-         "key" : {
-            "name" : "SmallModel_Schemas",
-            "version" : "0.0.1"
-         },
-         "schemas" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "IntType",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "IntType",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Integer"
-               }
-            } ]
-         }
-      }
-   }
+                }
+              ]
+            }
+          }
+        }
+      ]
+    }
+  },
+  "albums": {
+    "key": {
+      "name": "SmallModel_Albums",
+      "version": "0.0.1"
+    },
+    "albums": {
+      "entry": [
+        {
+          "key": {
+            "name": "BasicContextAlbum",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "BasicContextAlbum",
+              "version": "0.0.1"
+            },
+            "scope": "GLOBAL",
+            "isWritable": true,
+            "itemSchema": {
+              "name": "IntType",
+              "version": "0.0.1"
+            }
+          }
+        }
+      ]
+    }
+  },
+  "schemas": {
+    "key": {
+      "name": "SmallModel_Schemas",
+      "version": "0.0.1"
+    },
+    "schemas": {
+      "entry": [
+        {
+          "key": {
+            "name": "IntType",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "IntType",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Integer"
+          }
+        }
+      ]
+    }
+  }
 }
index 362ccf9..324ae6c 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2019 Nordix Foundation.
+ *  Modifications Copyright (C) 2019,2022 Nordix Foundation.
  *  Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
@@ -57,35 +57,29 @@ public final class SampleDomainModelSaver {
         final ApexModelSaver<AxPolicyModel> javaModelSaver = new ApexModelSaver<>(AxPolicyModel.class, javaPolicyModel,
                         args[0]);
         javaModelSaver.apexModelWriteJson();
-        javaModelSaver.apexModelWriteXml();
 
         // Save Javascript model
         final AxPolicyModel javascriptPolicyModel = new SampleDomainModelFactory().getSamplePolicyModel("JAVASCRIPT");
         final ApexModelSaver<AxPolicyModel> javascriptModelSaver = new ApexModelSaver<>(AxPolicyModel.class,
                         javascriptPolicyModel, args[0]);
         javascriptModelSaver.apexModelWriteJson();
-        javascriptModelSaver.apexModelWriteXml();
 
         // Save JRuby model
         final AxPolicyModel jRubyPolicyModel = new SampleDomainModelFactory().getSamplePolicyModel("JRUBY");
         final ApexModelSaver<AxPolicyModel> jRubyModelSaver = new ApexModelSaver<>(AxPolicyModel.class,
                         jRubyPolicyModel, args[0]);
         jRubyModelSaver.apexModelWriteJson();
-        jRubyModelSaver.apexModelWriteXml();
 
         // Save Jython model
         final AxPolicyModel jythonPolicyModel = new SampleDomainModelFactory().getSamplePolicyModel("JYTHON");
         final ApexModelSaver<AxPolicyModel> jythonModelSaver = new ApexModelSaver<>(AxPolicyModel.class,
                         jythonPolicyModel, args[0]);
         jythonModelSaver.apexModelWriteJson();
-        jythonModelSaver.apexModelWriteXml();
 
         // Save MVEL model
         final AxPolicyModel mvelPolicyModel = new SampleDomainModelFactory().getSamplePolicyModel("MVEL");
         final ApexModelSaver<AxPolicyModel> mvelModelSaver = new ApexModelSaver<>(AxPolicyModel.class, mvelPolicyModel,
                         args[0]);
         mvelModelSaver.apexModelWriteJson();
-        mvelModelSaver.apexModelWriteXml();
     }
-
 }
index 67fdcbf..f2ada87 100644 (file)
 {
-    "apexPolicyModel": {
-        "key": {
+  "key": {
+    "name": "JMSTestModel",
+    "version": "0.0.1"
+  },
+  "keyInformation": {
+    "key": {
+      "name": "JMSTestModel_KeyInfo",
+      "version": "0.0.1"
+    },
+    "keyInfoMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "JMSCopyInOutTask",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "JMSCopyInOutTask",
+              "version": "0.0.1"
+            },
+            "UUID": "b59815ef-fc5b-4e44-9f6e-2f6212bb7296",
+            "description": "Generated description for a concept called \"JMSCopyInOutTask\" with version \"null\" and UUID \"b59815ef-fc5b-4e44-9f6e-2f6212bb7296\""
+          }
+        },
+        {
+          "key": {
             "name": "JMSTestModel",
             "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "JMSTestModel",
+              "version": "0.0.1"
+            },
+            "UUID": "a731a845-f984-46a9-adf4-c6c7ca0baa0d",
+            "description": "Generated description for a concept called \"JMSTestModel\" with version \"null\" and UUID \"a731a845-f984-46a9-adf4-c6c7ca0baa0d\""
+          }
         },
-        "keyInformation": {
+        {
+          "key": {
+            "name": "JMSTestModel_Albums",
+            "version": "0.0.1"
+          },
+          "value": {
             "key": {
-                "name": "JMSTestModel_KeyInfo",
-                "version": "0.0.1"
+              "name": "JMSTestModel_Albums",
+              "version": "0.0.1"
             },
-            "keyInfoMap": {
-                "entry": [
-                    {
-                        "key": {
-                            "name": "JMSCopyInOutTask",
-                            "version": "0.0.1"
-                        },
-                        "value": {
-                            "key": {
-                                "name": "JMSCopyInOutTask",
-                                "version": "0.0.1"
-                            },
-                            "UUID": "b59815ef-fc5b-4e44-9f6e-2f6212bb7296",
-                            "description": "Generated description for a concept called \"JMSCopyInOutTask\" with version \"null\" and UUID \"b59815ef-fc5b-4e44-9f6e-2f6212bb7296\""
-                        }
-                    },
-                    {
-                        "key": {
-                            "name": "JMSTestModel",
-                            "version": "0.0.1"
-                        },
-                        "value": {
-                            "key": {
-                                "name": "JMSTestModel",
-                                "version": "0.0.1"
-                            },
-                            "UUID": "a731a845-f984-46a9-adf4-c6c7ca0baa0d",
-                            "description": "Generated description for a concept called \"JMSTestModel\" with version \"null\" and UUID \"a731a845-f984-46a9-adf4-c6c7ca0baa0d\""
-                        }
-                    },
-                    {
-                        "key": {
-                            "name": "JMSTestModel_Albums",
-                            "version": "0.0.1"
-                        },
-                        "value": {
-                            "key": {
-                                "name": "JMSTestModel_Albums",
-                                "version": "0.0.1"
-                            },
-                            "UUID": "b580c2e2-067e-452c-8410-d69344fa718c",
-                            "description": "Generated description for concept referred to by key \"JMSTestModel_Albums:0.0.1\""
-                        }
-                    },
-                    {
-                        "key": {
-                            "name": "JMSTestModel_Events",
-                            "version": "0.0.1"
-                        },
-                        "value": {
-                            "key": {
-                                "name": "JMSTestModel_Events",
-                                "version": "0.0.1"
-                            },
-                            "UUID": "463f3fa6-2be3-4ded-a015-1f045ee8991e",
-                            "description": "Generated description for concept referred to by key \"JMSTestModel_Events:0.0.1\""
-                        }
-                    },
-                    {
-                        "key": {
-                            "name": "JMSTestModel_KeyInfo",
-                            "version": "0.0.1"
-                        },
-                        "value": {
-                            "key": {
-                                "name": "JMSTestModel_KeyInfo",
-                                "version": "0.0.1"
-                            },
-                            "UUID": "b14d97fb-f215-4b70-9cd6-cbfb3ed085ee",
-                            "description": "Generated description for concept referred to by key \"JMSTestModel_KeyInfo:0.0.1\""
-                        }
+            "UUID": "b580c2e2-067e-452c-8410-d69344fa718c",
+            "description": "Generated description for concept referred to by key \"JMSTestModel_Albums:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "JMSTestModel_Events",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "JMSTestModel_Events",
+              "version": "0.0.1"
+            },
+            "UUID": "463f3fa6-2be3-4ded-a015-1f045ee8991e",
+            "description": "Generated description for concept referred to by key \"JMSTestModel_Events:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "JMSTestModel_KeyInfo",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "JMSTestModel_KeyInfo",
+              "version": "0.0.1"
+            },
+            "UUID": "b14d97fb-f215-4b70-9cd6-cbfb3ed085ee",
+            "description": "Generated description for concept referred to by key \"JMSTestModel_KeyInfo:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "JMSTestModel_Policies",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "JMSTestModel_Policies",
+              "version": "0.0.1"
+            },
+            "UUID": "9ae9047f-e0d8-42c4-b3a6-e32954ace3b6",
+            "description": "Generated description for concept referred to by key \"JMSTestModel_Policies:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "JMSTestModel_Schemas",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "JMSTestModel_Schemas",
+              "version": "0.0.1"
+            },
+            "UUID": "adc30c29-d4b9-4408-9213-6d86b051d59c",
+            "description": "Generated description for concept referred to by key \"JMSTestModel_Schemas:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "JMSTestModel_Tasks",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "JMSTestModel_Tasks",
+              "version": "0.0.1"
+            },
+            "UUID": "c3545f15-710c-4339-9a4e-e0eacffac52e",
+            "description": "Generated description for concept referred to by key \"JMSTestModel_Tasks:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "JMSTestPolicy",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "JMSTestPolicy",
+              "version": "0.0.1"
+            },
+            "UUID": "fdda6a40-6767-45b0-8703-3b5b3bafaf19",
+            "description": "Generated description for a concept called \"JMSTestPolicy\" with version \"null\" and UUID \"fdda6a40-6767-45b0-8703-3b5b3bafaf19\""
+          }
+        },
+        {
+          "key": {
+            "name": "PingTestClassIncomingEvent",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "PingTestClassIncomingEvent",
+              "version": "0.0.1"
+            },
+            "UUID": "6cdd11f3-5fe8-4510-81b9-af3be303ebae",
+            "description": "Generated description for a concept called \"PingTestClassIncomingEvent\" with version \"null\" and UUID \"6cdd11f3-5fe8-4510-81b9-af3be303ebae\""
+          }
+        },
+        {
+          "key": {
+            "name": "PingTestClassOutgoingEvent",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "PingTestClassOutgoingEvent",
+              "version": "0.0.1"
+            },
+            "UUID": "dc04de01-2284-4461-9fe2-da58a2122a73",
+            "description": "Generated description for a concept called \"PingTestClassOutgoingEvent\" with version \"0.0.1\" and UUID \"dc04de01-2284-4461-9fe2-da58a2122a73\""
+          }
+        },
+        {
+          "key": {
+            "name": "PingTestClassType",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "PingTestClassType",
+              "version": "0.0.1"
+            },
+            "UUID": "bdc2f70a-de52-4127-8012-b9593657da3c",
+            "description": "Generated description for a concept called \"PingTestClassType\" with version \"null\" and UUID \"bdc2f70a-de52-4127-8012-b9593657da3c\""
+          }
+        }
+      ]
+    }
+  },
+  "policies": {
+    "key": {
+      "name": "JMSTestModel_Policies",
+      "version": "0.0.1"
+    },
+    "policyMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "JMSTestPolicy",
+            "version": "0.0.1"
+          },
+          "value": {
+            "policyKey": {
+              "name": "JMSTestPolicy",
+              "version": "0.0.1"
+            },
+            "template": "FREEFORM",
+            "state": {
+              "entry": [
+                {
+                  "key": "TestJMSState",
+                  "value": {
+                    "stateKey": {
+                      "parentKeyName": "JMSTestPolicy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "TestJMSState"
                     },
-                    {
-                        "key": {
-                            "name": "JMSTestModel_Policies",
-                            "version": "0.0.1"
-                        },
-                        "value": {
-                            "key": {
-                                "name": "JMSTestModel_Policies",
-                                "version": "0.0.1"
-                            },
-                            "UUID": "9ae9047f-e0d8-42c4-b3a6-e32954ace3b6",
-                            "description": "Generated description for concept referred to by key \"JMSTestModel_Policies:0.0.1\""
-                        }
+                    "trigger": {
+                      "name": "PingTestClassIncomingEvent",
+                      "version": "0.0.1"
                     },
-                    {
-                        "key": {
-                            "name": "JMSTestModel_Schemas",
-                            "version": "0.0.1"
-                        },
-                        "value": {
+                    "stateOutputs": {
+                      "entry": [
+                        {
+                          "key": "InOutOutputMapping",
+                          "value": {
                             "key": {
-                                "name": "JMSTestModel_Schemas",
-                                "version": "0.0.1"
+                              "parentKeyName": "JMSTestPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "TestJMSState",
+                              "localName": "InOutOutputMapping"
                             },
-                            "UUID": "adc30c29-d4b9-4408-9213-6d86b051d59c",
-                            "description": "Generated description for concept referred to by key \"JMSTestModel_Schemas:0.0.1\""
-                        }
-                    },
-                    {
-                        "key": {
-                            "name": "JMSTestModel_Tasks",
-                            "version": "0.0.1"
-                        },
-                        "value": {
-                            "key": {
-                                "name": "JMSTestModel_Tasks",
-                                "version": "0.0.1"
+                            "outgoingEvent": {
+                              "name": "PingTestClassOutgoingEvent",
+                              "version": "0.0.1"
                             },
-                            "UUID": "c3545f15-710c-4339-9a4e-e0eacffac52e",
-                            "description": "Generated description for concept referred to by key \"JMSTestModel_Tasks:0.0.1\""
+                            "nextState": {
+                              "parentKeyName": "NULL",
+                              "parentKeyVersion": "0.0.0",
+                              "parentLocalName": "NULL",
+                              "localName": "NULL"
+                            }
+                          }
                         }
+                      ]
                     },
-                    {
-                        "key": {
-                            "name": "JMSTestPolicy",
-                            "version": "0.0.1"
-                        },
-                        "value": {
-                            "key": {
-                                "name": "JMSTestPolicy",
-                                "version": "0.0.1"
-                            },
-                            "UUID": "fdda6a40-6767-45b0-8703-3b5b3bafaf19",
-                            "description": "Generated description for a concept called \"JMSTestPolicy\" with version \"null\" and UUID \"fdda6a40-6767-45b0-8703-3b5b3bafaf19\""
-                        }
+                    "contextAlbumReference": [],
+                    "taskSelectionLogic": {
+                      "key": "NULL",
+                      "logicFlavour": "UNDEFINED",
+                      "logic": ""
                     },
-                    {
-                        "key": {
-                            "name": "PingTestClassIncomingEvent",
-                            "version": "0.0.1"
-                        },
-                        "value": {
-                            "key": {
-                                "name": "PingTestClassIncomingEvent",
-                                "version": "0.0.1"
-                            },
-                            "UUID": "6cdd11f3-5fe8-4510-81b9-af3be303ebae",
-                            "description": "Generated description for a concept called \"PingTestClassIncomingEvent\" with version \"null\" and UUID \"6cdd11f3-5fe8-4510-81b9-af3be303ebae\""
-                        }
+                    "stateFinalizerLogicMap": {
+                      "entry": []
                     },
-                    {
-                        "key": {
-                            "name": "PingTestClassOutgoingEvent",
-                            "version": "0.0.1"
-                        },
-                        "value": {
-                            "key": {
-                                "name": "PingTestClassOutgoingEvent",
-                                "version": "0.0.1"
-                            },
-                            "UUID": "dc04de01-2284-4461-9fe2-da58a2122a73",
-                            "description": "Generated description for a concept called \"PingTestClassOutgoingEvent\" with version \"0.0.1\" and UUID \"dc04de01-2284-4461-9fe2-da58a2122a73\""
-                        }
+                    "defaultTask": {
+                      "name": "JMSCopyInOutTask",
+                      "version": "0.0.1"
                     },
-                    {
-                        "key": {
-                            "name": "PingTestClassType",
+                    "taskReferences": {
+                      "entry": [
+                        {
+                          "key": {
+                            "name": "JMSCopyInOutTask",
                             "version": "0.0.1"
-                        },
-                        "value": {
+                          },
+                          "value": {
                             "key": {
-                                "name": "PingTestClassType",
-                                "version": "0.0.1"
+                              "parentKeyName": "JMSTestPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "TestJMSState",
+                              "localName": "InOutTask"
                             },
-                            "UUID": "bdc2f70a-de52-4127-8012-b9593657da3c",
-                            "description": "Generated description for a concept called \"PingTestClassType\" with version \"null\" and UUID \"bdc2f70a-de52-4127-8012-b9593657da3c\""
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "JMSTestPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "TestJMSState",
+                              "localName": "InOutOutputMapping"
+                            }
+                          }
                         }
+                      ]
                     }
-                ]
-            }
-        },
-        "policies": {
-            "key": {
-                "name": "JMSTestModel_Policies",
-                "version": "0.0.1"
+                  }
+                }
+              ]
             },
-            "policyMap": {
-                "entry": [
-                    {
-                        "key": {
-                            "name": "JMSTestPolicy",
-                            "version": "0.0.1"
-                        },
-                        "value": {
-                            "policyKey": {
-                                "name": "JMSTestPolicy",
-                                "version": "0.0.1"
-                            },
-                            "template": "FREEFORM",
-                            "state": {
-                                "entry": [
-                                    {
-                                        "key": "TestJMSState",
-                                        "value": {
-                                            "stateKey": {
-                                                "parentKeyName": "JMSTestPolicy",
-                                                "parentKeyVersion": "0.0.1",
-                                                "parentLocalName": "NULL",
-                                                "localName": "TestJMSState"
-                                            },
-                                            "trigger": {
-                                                "name": "PingTestClassIncomingEvent",
-                                                "version": "0.0.1"
-                                            },
-                                            "stateOutputs": {
-                                                "entry": [
-                                                    {
-                                                        "key": "InOutOutputMapping",
-                                                        "value": {
-                                                            "key": {
-                                                                "parentKeyName": "JMSTestPolicy",
-                                                                "parentKeyVersion": "0.0.1",
-                                                                "parentLocalName": "TestJMSState",
-                                                                "localName": "InOutOutputMapping"
-                                                            },
-                                                            "outgoingEvent": {
-                                                                "name": "PingTestClassOutgoingEvent",
-                                                                "version": "0.0.1"
-                                                            },
-                                                            "nextState": {
-                                                                "parentKeyName": "NULL",
-                                                                "parentKeyVersion": "0.0.0",
-                                                                "parentLocalName": "NULL",
-                                                                "localName": "NULL"
-                                                            }
-                                                        }
-                                                    }
-                                                ]
-                                            },
-                                            "contextAlbumReference": [],
-                                            "taskSelectionLogic": {
-                                                "key": "NULL",
-                                                "logicFlavour": "UNDEFINED",
-                                                "logic": ""
-                                            },
-                                            "stateFinalizerLogicMap": {
-                                                "entry": []
-                                            },
-                                            "defaultTask": {
-                                                "name": "JMSCopyInOutTask",
-                                                "version": "0.0.1"
-                                            },
-                                            "taskReferences": {
-                                                "entry": [
-                                                    {
-                                                        "key": {
-                                                            "name": "JMSCopyInOutTask",
-                                                            "version": "0.0.1"
-                                                        },
-                                                        "value": {
-                                                            "key": {
-                                                                "parentKeyName": "JMSTestPolicy",
-                                                                "parentKeyVersion": "0.0.1",
-                                                                "parentLocalName": "TestJMSState",
-                                                                "localName": "InOutTask"
-                                                            },
-                                                            "outputType": "DIRECT",
-                                                            "output": {
-                                                                "parentKeyName": "JMSTestPolicy",
-                                                                "parentKeyVersion": "0.0.1",
-                                                                "parentLocalName": "TestJMSState",
-                                                                "localName": "InOutOutputMapping"
-                                                            }
-                                                        }
-                                                    }
-                                                ]
-                                            }
-                                        }
-                                    }
-                                ]
-                            },
-                            "firstState": "TestJMSState"
-                        }
-                    }
-                ]
-            }
-        },
-        "tasks": {
+            "firstState": "TestJMSState"
+          }
+        }
+      ]
+    }
+  },
+  "tasks": {
+    "key": {
+      "name": "JMSTestModel_Tasks",
+      "version": "0.0.1"
+    },
+    "taskMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "JMSCopyInOutTask",
+            "version": "0.0.1"
+          },
+          "value": {
             "key": {
-                "name": "JMSTestModel_Tasks",
-                "version": "0.0.1"
+              "name": "JMSCopyInOutTask",
+              "version": "0.0.1"
             },
-            "taskMap": {
-                "entry": [
-                    {
-                        "key": {
-                            "name": "JMSCopyInOutTask",
-                            "version": "0.0.1"
-                        },
-                        "value": {
-                            "key": {
-                                "name": "JMSCopyInOutTask",
-                                "version": "0.0.1"
-                            },
-                            "inputFields": {
-                                "entry": [
-                                    {
-                                        "key": "PingTestClass",
-                                        "value": {
-                                            "key": "PingTestClass",
-                                            "fieldSchemaKey": {
-                                                "name": "PingTestClassType",
-                                                "version": "0.0.1"
-                                            },
-                                            "optional": false
-                                        }
-                                    }
-                                ]
-                            },
-                            "outputFields": {
-                                "entry": [
-                                    {
-                                        "key": "PingTestClass",
-                                        "value": {
-                                            "key": "PingTestClass",
-                                            "fieldSchemaKey": {
-                                                "name": "PingTestClassType",
-                                                "version": "0.0.1"
-                                            },
-                                            "optional": false
-                                        }
-                                    }
-                                ]
-                            },
-                            "taskParameters": {
-                                "entry": []
-                            },
-                            "contextAlbumReference": [],
-                            "taskLogic": {
-                                "key": "TaskLogic",
-                                "logicFlavour": "JAVASCRIPT",
-                                "logic": "var outFieldType = org.onap.policy.apex.testsuites.integration.common.testclasses.PingTestClass;\nvar outValue = new outFieldType();\n\nvar inValue = executor.inFields.get(\"PingTestClass\");\n\nexecutor.logger.debug(inValue.toString());\n\noutValue.setPingTime(inValue.getPingTime());\noutValue.setPongTime(new Date().getTime());\noutValue.setName(inValue.getName() + \"_out\");\n\noutValue.setDescription(\ninValue.getDescription() +\n\". So Romeo would, were he not Romeo call'd,\" +\n\" retain that dear perfection which he owes, without that title.\");\n\nexecutor.logger.debug(outValue.toString());\nexecutor.outFields.put(\"PingTestClass\", outValue)\n\ntrue;"
-                            }
-                        }
-                    }
-                ]
+            "inputFields": {
+              "entry": [
+                {
+                  "key": "PingTestClass",
+                  "value": {
+                    "key": "PingTestClass",
+                    "fieldSchemaKey": {
+                      "name": "PingTestClassType",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "outputFields": {
+              "entry": [
+                {
+                  "key": "PingTestClass",
+                  "value": {
+                    "key": "PingTestClass",
+                    "fieldSchemaKey": {
+                      "name": "PingTestClassType",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": []
+            },
+            "contextAlbumReference": [],
+            "taskLogic": {
+              "key": "TaskLogic",
+              "logicFlavour": "JAVASCRIPT",
+              "logic": "var outFieldType = org.onap.policy.apex.testsuites.integration.common.testclasses.PingTestClass;\nvar outValue = new outFieldType();\n\nvar inValue = executor.inFields.get(\"PingTestClass\");\n\nexecutor.logger.debug(inValue.toString());\n\noutValue.setPingTime(inValue.getPingTime());\noutValue.setPongTime(new Date().getTime());\noutValue.setName(inValue.getName() + \"_out\");\n\noutValue.setDescription(\ninValue.getDescription() +\n\". So Romeo would, were he not Romeo call'd,\" +\n\" retain that dear perfection which he owes, without that title.\");\n\nexecutor.logger.debug(outValue.toString());\nexecutor.outFields.put(\"PingTestClass\", outValue)\n\ntrue;"
             }
-        },
-        "events": {
+          }
+        }
+      ]
+    }
+  },
+  "events": {
+    "key": {
+      "name": "JMSTestModel_Events",
+      "version": "0.0.1"
+    },
+    "eventMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "PingTestClassIncomingEvent",
+            "version": "0.0.1"
+          },
+          "value": {
             "key": {
-                "name": "JMSTestModel_Events",
-                "version": "0.0.1"
+              "name": "PingTestClassIncomingEvent",
+              "version": "0.0.1"
             },
-            "eventMap": {
-                "entry": [
-                    {
-                        "key": {
-                            "name": "PingTestClassIncomingEvent",
-                            "version": "0.0.1"
-                        },
-                        "value": {
-                            "key": {
-                                "name": "PingTestClassIncomingEvent",
-                                "version": "0.0.1"
-                            },
-                            "nameSpace": "org.onap.policy.apex.testsuites.integration.uservice.adapt.jms",
-                            "source": "JMS",
-                            "target": "Apex",
-                            "parameter": {
-                                "entry": [
-                                    {
-                                        "key": "PingTestClass",
-                                        "value": {
-                                            "key": "PingTestClass",
-                                            "fieldSchemaKey": {
-                                                "name": "PingTestClassType",
-                                                "version": "0.0.1"
-                                            },
-                                            "optional": false
-                                        }
-                                    }
-                                ]
-                            }
-                        }
+            "nameSpace": "org.onap.policy.apex.testsuites.integration.uservice.adapt.jms",
+            "source": "JMS",
+            "target": "Apex",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "PingTestClass",
+                  "value": {
+                    "key": "PingTestClass",
+                    "fieldSchemaKey": {
+                      "name": "PingTestClassType",
+                      "version": "0.0.1"
                     },
-                    {
-                        "key": {
-                            "name": "PingTestClassOutgoingEvent",
-                            "version": "0.0.1"
-                        },
-                        "value": {
-                            "key": {
-                                "name": "PingTestClassOutgoingEvent",
-                                "version": "0.0.1"
-                            },
-                            "nameSpace": "org.onap.policy.apex.testsuites.integration.uservice.adapt.jms",
-                            "source": "Apex",
-                            "target": "JMS",
-                            "parameter": {
-                                "entry": [
-                                    {
-                                        "key": "PingTestClass",
-                                        "value": {
-                                            "key": "PingTestClass",
-                                            "fieldSchemaKey": {
-                                                "name": "PingTestClassType",
-                                                "version": "0.0.1"
-                                            },
-                                            "optional": false
-                                        }
-                                    }
-                                ]
-                            }
-                        }
-                    }
-                ]
+                    "optional": false
+                  }
+                }
+              ]
             }
+          }
         },
-        "albums": {
+        {
+          "key": {
+            "name": "PingTestClassOutgoingEvent",
+            "version": "0.0.1"
+          },
+          "value": {
             "key": {
-                "name": "JMSTestModel_Albums",
-                "version": "0.0.1"
+              "name": "PingTestClassOutgoingEvent",
+              "version": "0.0.1"
             },
-            "albums": {
-                "entry": []
+            "nameSpace": "org.onap.policy.apex.testsuites.integration.uservice.adapt.jms",
+            "source": "Apex",
+            "target": "JMS",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "PingTestClass",
+                  "value": {
+                    "key": "PingTestClass",
+                    "fieldSchemaKey": {
+                      "name": "PingTestClassType",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
             }
-        },
-        "schemas": {
+          }
+        }
+      ]
+    }
+  },
+  "albums": {
+    "key": {
+      "name": "JMSTestModel_Albums",
+      "version": "0.0.1"
+    },
+    "albums": {
+      "entry": []
+    }
+  },
+  "schemas": {
+    "key": {
+      "name": "JMSTestModel_Schemas",
+      "version": "0.0.1"
+    },
+    "schemas": {
+      "entry": [
+        {
+          "key": {
+            "name": "PingTestClassType",
+            "version": "0.0.1"
+          },
+          "value": {
             "key": {
-                "name": "JMSTestModel_Schemas",
-                "version": "0.0.1"
+              "name": "PingTestClassType",
+              "version": "0.0.1"
             },
-            "schemas": {
-                "entry": [
-                    {
-                        "key": {
-                            "name": "PingTestClassType",
-                            "version": "0.0.1"
-                        },
-                        "value": {
-                            "key": {
-                                "name": "PingTestClassType",
-                                "version": "0.0.1"
-                            },
-                            "schemaFlavour": "Java",
-                            "schemaDefinition": "org.onap.policy.apex.testsuites.integration.common.testclasses.PingTestClass"
-                        }
-                    }
-                ]
-            }
+            "schemaFlavour": "Java",
+            "schemaDefinition": "org.onap.policy.apex.testsuites.integration.common.testclasses.PingTestClass"
+          }
         }
+      ]
     }
+  }
 }
index c7ab1d9..eaf2233 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2020 Nordix Foundation
+ *  Modifications Copyright (C) 2020,2022 Nordix Foundation
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -55,7 +55,7 @@ public class SampleDomainModelSaverTest {
 
         File tempDir = new File(tempDirectory.toString());
         assertTrue(tempDir.isDirectory());
-        assertEquals(10, tempDir.listFiles().length);
+        assertEquals(5, tempDir.listFiles().length);
 
         Files.walk(tempDirectory).sorted(Comparator.reverseOrder()).map(Path::toFile).forEach(File::delete);
     }
index 9566917..2cc7a79 100644 (file)
@@ -2,6 +2,7 @@
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
  *  Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
+ *  Modifications Copyright (C) 2022 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -35,7 +36,6 @@ public class TestApexSamplePolicyCreateModelFiles {
             final TestApexSamplePolicyModelCreator apexPolicyModelCreator = new TestApexSamplePolicyModelCreator(type);
             final TestApexModel<AxPolicyModel> testApexPolicyModel =
                     new TestApexModel<AxPolicyModel>(AxPolicyModel.class, apexPolicyModelCreator);
-            assertThatCode(() -> testApexPolicyModel.testApexModelWriteReadXml()).doesNotThrowAnyException();
             assertThatCode(() -> testApexPolicyModel.testApexModelWriteReadJson()).doesNotThrowAnyException();
         }
     }
index 54adc16..3cb7369 100644 (file)
@@ -58,16 +58,6 @@ public class TestApexSamplePolicyModel {
         assertEquals(VALID_MODEL_STRING, result.toString());
     }
 
-    /**
-     * Test model write read xml.
-     *
-     * @throws Exception the exception
-     */
-    @Test
-    public void testModelWriteReadXml() throws Exception {
-        testApexModel.testApexModelWriteReadXml();
-    }
-
     /**
      * Test model write read json.
      *
index bd5b835..d43e7cd 100644 (file)
@@ -4,6 +4,7 @@
  *  Modifications Copyright (C) 2019 Samsung Electronics Co., Ltd.
  *  Modifications Copyright (C) 2021 Bell Canada. All rights reserved.
  *  Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
+ *  Modifications Copyright (C) 2022 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -117,7 +118,7 @@ public class Model2Cli {
         final CodeGeneratorCliEditor codeGen = new CodeGeneratorCliEditor();
 
         final ApexModelFactory factory = new ApexModelFactory();
-        final ApexModel model = factory.createApexModel(new Properties(), true);
+        final ApexModel model = factory.createApexModel(new Properties());
 
         final ApexApiResult result = model.loadFromFile(modelFile);
         if (result.isNok()) {
index ad0f3b6..d9daee5 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2021 Nordix Foundation.
+ *  Modifications Copyright (C) 2021,2022 Nordix Foundation.
  *  Modifications Copyright (C) 2021 Bell Canada. All rights reserved.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
@@ -190,7 +190,7 @@ public class Model2JsonEventSchema {
         final ST stEvents = stg.getInstanceOf("events");
 
         final ApexModelFactory factory = new ApexModelFactory();
-        final ApexModel model = factory.createApexModel(new Properties(), true);
+        final ApexModel model = factory.createApexModel(new Properties());
 
         final ApexApiResult result = model.loadFromFile(modelFile);
         if (result.isNok()) {
index 56c4197..82c7a24 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2018 Ericsson. All rights reserved.
- *  Modifications Copyright (C) 2020 Nordix Foundation.
+ *  Modifications Copyright (C) 2020,2022 Nordix Foundation.
  *  Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
@@ -154,6 +154,5 @@ public class Model2CliTest {
 
         assertTrue(tempFile.isFile());
         assertTrue(tempFile.length() > 0);
-
     }
 }
index 14a6234..998488b 100644 (file)
 {
-   "apexPolicyModel" : {
-      "key" : {
-         "name" : "ExecutionPropertiesRestTestPolicyModel",
-         "version" : "0.0.1"
-      },
-      "keyInformation" : {
-         "key" : {
-            "name" : "ExecutionPropertiesRestTestPolicyModel_KeyInfo",
-            "version" : "0.0.1"
-         },
-         "keyInfoMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "Event0200",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Event0200",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "7be89b0e-07a6-38fe-a8fb-94f3f3473883",
-                  "description" : "Generated description for concept referred to by key \"Event0200:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Event0201",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Event0201",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "a44bcbd7-c30e-3a78-a9be-3cd3cecf1c93",
-                  "description" : "Generated description for concept referred to by key \"Event0201:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "ExecutionPropertiesRestTestPolicyModel",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "ExecutionPropertiesRestTestPolicyModel",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "08ff4009-748a-3b9c-90f8-a4ac19ebb472",
-                  "description" : "Generated description for concept referred to by key \"ExecutionPropertiesRestTestPolicyModel:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "ExecutionPropertiesRestTestPolicyModel_Events",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "ExecutionPropertiesRestTestPolicyModel_Events",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "afe732b9-baff-3235-a75c-29a0669b0d1d",
-                  "description" : "Generated description for concept referred to by key \"ExecutionPropertiesRestTestPolicyModel_Events:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "ExecutionPropertiesRestTestPolicyModel_KeyInfo",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "ExecutionPropertiesRestTestPolicyModel_KeyInfo",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "9ec07b81-7488-3b33-907e-335256c96e08",
-                  "description" : "Generated description for concept referred to by key \"ExecutionPropertiesRestTestPolicyModel_KeyInfo:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "ExecutionPropertiesRestTestPolicyModel_Policies",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "ExecutionPropertiesRestTestPolicyModel_Policies",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "c1df0d76-7445-32ca-914f-06167254fbce",
-                  "description" : "Generated description for concept referred to by key \"ExecutionPropertiesRestTestPolicyModel_Policies:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "ExecutionPropertiesRestTestPolicyModel_Schemas",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "ExecutionPropertiesRestTestPolicyModel_Schemas",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "9984fed6-9ec5-3c69-a458-5033767f00f1",
-                  "description" : "Generated description for concept referred to by key \"ExecutionPropertiesRestTestPolicyModel_Schemas:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "ExecutionPropertiesRestTestPolicyModel_Tasks",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "ExecutionPropertiesRestTestPolicyModel_Tasks",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "08f87bf9-4056-30de-8c4e-179f06bdaabb",
-                  "description" : "Generated description for concept referred to by key \"ExecutionPropertiesRestTestPolicyModel_Tasks:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "Policy2",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Policy2",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "9d2804df-f77d-3018-a024-5c6f7fd8e60e",
-                  "description" : "Generated description for concept referred to by key \"Policy2:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "SimpleStringType",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SimpleStringType",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "8a4957cf-9493-3a76-8c22-a208e23259af",
-                  "description" : "Generated description for concept referred to by key \"SimpleStringType:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TaskFetchHttpCode",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TaskFetchHttpCode",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "0a776ac8-cc11-37a5-8f40-7262a31ada0a",
-                  "description" : "Generated description for concept referred to by key \"TaskFetchHttpCode:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "TaskTagUrl",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TaskTagUrl",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "638c559b-dc94-3d71-bdb0-c4bdeb042de3",
-                  "description" : "Generated description for concept referred to by key \"TaskTagUrl:0.0.1\""
-               }
-            } ]
-         }
-      },
-      "policies" : {
-         "key" : {
-            "name" : "ExecutionPropertiesRestTestPolicyModel_Policies",
-            "version" : "0.0.1"
-         },
-         "policyMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "Policy2",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "policyKey" : {
-                     "name" : "Policy2",
-                     "version" : "0.0.1"
-                  },
-                  "template" : "freestyle",
-                  "state" : {
-                     "entry" : [ {
-                        "key" : "Decide",
-                        "value" : {
-                           "stateKey" : {
-                              "parentKeyName" : "Policy2",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Decide"
-                           },
-                           "trigger" : {
-                              "name" : "Event0201",
-                              "version" : "0.0.1"
-                           },
-                           "stateOutputs" : {
-                              "entry" : [ {
-                                 "key" : "TagUrlOut",
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy2",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Decide",
-                                       "localName" : "TagUrlOut"
-                                    },
-                                    "outgoingEvent" : {
-                                       "name" : "Event0201",
-                                       "version" : "0.0.1"
-                                    },
-                                    "nextState" : {
-                                       "parentKeyName" : "NULL",
-                                       "parentKeyVersion" : "0.0.0",
-                                       "parentLocalName" : "NULL",
-                                       "localName" : "NULL"
-                                    }
-                                 }
-                              } ]
-                           },
-                           "contextAlbumReference" : [ ],
-                           "taskSelectionLogic" : {
-                              "key" : "NULL",
-                              "logicFlavour" : "UNDEFINED",
-                              "logic" : ""
-                           },
-                           "stateFinalizerLogicMap" : {
-                              "entry" : [ ]
-                           },
-                           "defaultTask" : {
-                              "name" : "TaskTagUrl",
-                              "version" : "0.0.1"
-                           },
-                           "taskReferences" : {
-                              "entry" : [ {
-                                 "key" : {
-                                    "name" : "TaskTagUrl",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy2",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Decide",
-                                       "localName" : "tag"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "Policy2",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Decide",
-                                       "localName" : "TagUrlOut"
-                                    }
-                                 }
-                              } ]
-                           }
+  "key": {
+    "name": "ExecutionPropertiesRestTestPolicyModel",
+    "version": "0.0.1"
+  },
+  "keyInformation": {
+    "key": {
+      "name": "ExecutionPropertiesRestTestPolicyModel_KeyInfo",
+      "version": "0.0.1"
+    },
+    "keyInfoMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "Event0200",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Event0200",
+              "version": "0.0.1"
+            },
+            "UUID": "7be89b0e-07a6-38fe-a8fb-94f3f3473883",
+            "description": "Generated description for concept referred to by key \"Event0200:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Event0201",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Event0201",
+              "version": "0.0.1"
+            },
+            "UUID": "a44bcbd7-c30e-3a78-a9be-3cd3cecf1c93",
+            "description": "Generated description for concept referred to by key \"Event0201:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "ExecutionPropertiesRestTestPolicyModel",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "ExecutionPropertiesRestTestPolicyModel",
+              "version": "0.0.1"
+            },
+            "UUID": "08ff4009-748a-3b9c-90f8-a4ac19ebb472",
+            "description": "Generated description for concept referred to by key \"ExecutionPropertiesRestTestPolicyModel:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "ExecutionPropertiesRestTestPolicyModel_Events",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "ExecutionPropertiesRestTestPolicyModel_Events",
+              "version": "0.0.1"
+            },
+            "UUID": "afe732b9-baff-3235-a75c-29a0669b0d1d",
+            "description": "Generated description for concept referred to by key \"ExecutionPropertiesRestTestPolicyModel_Events:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "ExecutionPropertiesRestTestPolicyModel_KeyInfo",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "ExecutionPropertiesRestTestPolicyModel_KeyInfo",
+              "version": "0.0.1"
+            },
+            "UUID": "9ec07b81-7488-3b33-907e-335256c96e08",
+            "description": "Generated description for concept referred to by key \"ExecutionPropertiesRestTestPolicyModel_KeyInfo:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "ExecutionPropertiesRestTestPolicyModel_Policies",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "ExecutionPropertiesRestTestPolicyModel_Policies",
+              "version": "0.0.1"
+            },
+            "UUID": "c1df0d76-7445-32ca-914f-06167254fbce",
+            "description": "Generated description for concept referred to by key \"ExecutionPropertiesRestTestPolicyModel_Policies:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "ExecutionPropertiesRestTestPolicyModel_Schemas",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "ExecutionPropertiesRestTestPolicyModel_Schemas",
+              "version": "0.0.1"
+            },
+            "UUID": "9984fed6-9ec5-3c69-a458-5033767f00f1",
+            "description": "Generated description for concept referred to by key \"ExecutionPropertiesRestTestPolicyModel_Schemas:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "ExecutionPropertiesRestTestPolicyModel_Tasks",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "ExecutionPropertiesRestTestPolicyModel_Tasks",
+              "version": "0.0.1"
+            },
+            "UUID": "08f87bf9-4056-30de-8c4e-179f06bdaabb",
+            "description": "Generated description for concept referred to by key \"ExecutionPropertiesRestTestPolicyModel_Tasks:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "Policy2",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Policy2",
+              "version": "0.0.1"
+            },
+            "UUID": "9d2804df-f77d-3018-a024-5c6f7fd8e60e",
+            "description": "Generated description for concept referred to by key \"Policy2:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "SimpleStringType",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SimpleStringType",
+              "version": "0.0.1"
+            },
+            "UUID": "8a4957cf-9493-3a76-8c22-a208e23259af",
+            "description": "Generated description for concept referred to by key \"SimpleStringType:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TaskFetchHttpCode",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TaskFetchHttpCode",
+              "version": "0.0.1"
+            },
+            "UUID": "0a776ac8-cc11-37a5-8f40-7262a31ada0a",
+            "description": "Generated description for concept referred to by key \"TaskFetchHttpCode:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "TaskTagUrl",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TaskTagUrl",
+              "version": "0.0.1"
+            },
+            "UUID": "638c559b-dc94-3d71-bdb0-c4bdeb042de3",
+            "description": "Generated description for concept referred to by key \"TaskTagUrl:0.0.1\""
+          }
+        }
+      ]
+    }
+  },
+  "policies": {
+    "key": {
+      "name": "ExecutionPropertiesRestTestPolicyModel_Policies",
+      "version": "0.0.1"
+    },
+    "policyMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "Policy2",
+            "version": "0.0.1"
+          },
+          "value": {
+            "policyKey": {
+              "name": "Policy2",
+              "version": "0.0.1"
+            },
+            "template": "freestyle",
+            "state": {
+              "entry": [
+                {
+                  "key": "Decide",
+                  "value": {
+                    "stateKey": {
+                      "parentKeyName": "Policy2",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Decide"
+                    },
+                    "trigger": {
+                      "name": "Event0201",
+                      "version": "0.0.1"
+                    },
+                    "stateOutputs": {
+                      "entry": [
+                        {
+                          "key": "TagUrlOut",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy2",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Decide",
+                              "localName": "TagUrlOut"
+                            },
+                            "outgoingEvent": {
+                              "name": "Event0201",
+                              "version": "0.0.1"
+                            },
+                            "nextState": {
+                              "parentKeyName": "NULL",
+                              "parentKeyVersion": "0.0.0",
+                              "parentLocalName": "NULL",
+                              "localName": "NULL"
+                            }
+                          }
                         }
-                     }, {
-                        "key" : "Junit",
-                        "value" : {
-                           "stateKey" : {
-                              "parentKeyName" : "Policy2",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "Junit"
-                           },
-                           "trigger" : {
-                              "name" : "Event0200",
-                              "version" : "0.0.1"
-                           },
-                           "stateOutputs" : {
-                              "entry" : [ {
-                                 "key" : "HttpCodeOut",
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy2",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Junit",
-                                       "localName" : "HttpCodeOut"
-                                    },
-                                    "outgoingEvent" : {
-                                       "name" : "Event0201",
-                                       "version" : "0.0.1"
-                                    },
-                                    "nextState" : {
-                                       "parentKeyName" : "Policy2",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "NULL",
-                                       "localName" : "Decide"
-                                    }
-                                 }
-                              } ]
-                           },
-                           "contextAlbumReference" : [ ],
-                           "taskSelectionLogic" : {
-                              "key" : "NULL",
-                              "logicFlavour" : "UNDEFINED",
-                              "logic" : ""
-                           },
-                           "stateFinalizerLogicMap" : {
-                              "entry" : [ ]
-                           },
-                           "defaultTask" : {
-                              "name" : "TaskFetchHttpCode",
-                              "version" : "0.0.1"
-                           },
-                           "taskReferences" : {
-                              "entry" : [ {
-                                 "key" : {
-                                    "name" : "TaskFetchHttpCode",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "Policy2",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Junit",
-                                       "localName" : "check"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "Policy2",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "Junit",
-                                       "localName" : "HttpCodeOut"
-                                    }
-                                 }
-                              } ]
-                           }
+                      ]
+                    },
+                    "contextAlbumReference": [],
+                    "taskSelectionLogic": {
+                      "key": "NULL",
+                      "logicFlavour": "UNDEFINED",
+                      "logic": ""
+                    },
+                    "stateFinalizerLogicMap": {
+                      "entry": []
+                    },
+                    "defaultTask": {
+                      "name": "TaskTagUrl",
+                      "version": "0.0.1"
+                    },
+                    "taskReferences": {
+                      "entry": [
+                        {
+                          "key": {
+                            "name": "TaskTagUrl",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy2",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Decide",
+                              "localName": "tag"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "Policy2",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Decide",
+                              "localName": "TagUrlOut"
+                            }
+                          }
                         }
-                     } ]
-                  },
-                  "firstState" : "Junit"
-               }
-            } ]
-         }
-      },
-      "tasks" : {
-         "key" : {
-            "name" : "ExecutionPropertiesRestTestPolicyModel_Tasks",
-            "version" : "0.0.1"
-         },
-         "taskMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "TaskFetchHttpCode",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TaskFetchHttpCode",
-                     "version" : "0.0.1"
-                  },
-                  "inputFields" : {
-                     "entry" : [ {
-                        "key" : "testToRun",
-                        "value" : {
-                           "key" : "testToRun",
-                           "fieldSchemaKey" : {
-                              "name" : "SimpleStringType",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  },
-                  "outputFields" : {
-                     "entry" : [ {
-                        "key" : "testToRun",
-                        "value" : {
-                           "key" : "testToRun",
-                           "fieldSchemaKey" : {
-                              "name" : "SimpleStringType",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  },
-                  "taskParameters" : {
-                     "entry" : [ ]
-                  },
-                  "contextAlbumReference" : [ ],
-                  "taskLogic" : {
-                     "key" : "TaskLogic",
-                     "logicFlavour" : "JAVASCRIPT",
-                     "logic" : "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2019 Nordix Foundation.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *      http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.info(executor.subject.id);\nexecutor.logger.info(executor.inFields);\n\nexecutor.logger.info(executor.outFields);\n\nexecutor.logger.info(\"executionProperties:\" + executor.getExecutionProperties());\n\nif (executor.getExecutionProperties() == \"{HTTP_CODE_STATUS=500}\" )\nexecutor.outFields.put(\"testToRun\", \"CodeFilterSet\");\nelse\nexecutor.outFields.put(\"testToRun\", \"CodeFilterDefault\");\n\nvar returnValue = executor.isTrue;"
+                      ]
+                    }
                   }
-               }
-            }, {
-               "key" : {
-                  "name" : "TaskTagUrl",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "TaskTagUrl",
-                     "version" : "0.0.1"
-                  },
-                  "inputFields" : {
-                     "entry" : [ {
-                        "key" : "testToRun",
-                        "value" : {
-                           "key" : "testToRun",
-                           "fieldSchemaKey" : {
-                              "name" : "SimpleStringType",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
+                },
+                {
+                  "key": "Junit",
+                  "value": {
+                    "stateKey": {
+                      "parentKeyName": "Policy2",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "Junit"
+                    },
+                    "trigger": {
+                      "name": "Event0200",
+                      "version": "0.0.1"
+                    },
+                    "stateOutputs": {
+                      "entry": [
+                        {
+                          "key": "HttpCodeOut",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy2",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Junit",
+                              "localName": "HttpCodeOut"
+                            },
+                            "outgoingEvent": {
+                              "name": "Event0201",
+                              "version": "0.0.1"
+                            },
+                            "nextState": {
+                              "parentKeyName": "Policy2",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "NULL",
+                              "localName": "Decide"
+                            }
+                          }
                         }
-                     } ]
-                  },
-                  "outputFields" : {
-                     "entry" : [ {
-                        "key" : "testToRun",
-                        "value" : {
-                           "key" : "testToRun",
-                           "fieldSchemaKey" : {
-                              "name" : "SimpleStringType",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
+                      ]
+                    },
+                    "contextAlbumReference": [],
+                    "taskSelectionLogic": {
+                      "key": "NULL",
+                      "logicFlavour": "UNDEFINED",
+                      "logic": ""
+                    },
+                    "stateFinalizerLogicMap": {
+                      "entry": []
+                    },
+                    "defaultTask": {
+                      "name": "TaskFetchHttpCode",
+                      "version": "0.0.1"
+                    },
+                    "taskReferences": {
+                      "entry": [
+                        {
+                          "key": {
+                            "name": "TaskFetchHttpCode",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "Policy2",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Junit",
+                              "localName": "check"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "Policy2",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "Junit",
+                              "localName": "HttpCodeOut"
+                            }
+                          }
                         }
-                     } ]
-                  },
-                  "taskParameters" : {
-                     "entry" : [ ]
-                  },
-                  "contextAlbumReference" : [ ],
-                  "taskLogic" : {
-                     "key" : "TaskLogic",
-                     "logicFlavour" : "JAVASCRIPT",
-                     "logic" : "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2019 Nordix Foundation.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *      http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.info(executor.subject.id);\nexecutor.logger.info(executor.inFields);\n\nexecutor.logger.info(executor.outFields);\n\nexecutor.logger.info(\"executionProperties in:\" + executor.getExecutionProperties());\n\nexecutor.getExecutionProperties().setProperty(\"tagId\", executor.inFields.get(\"testToRun\"));\nexecutor.getExecutionProperties().setProperty(\"value\", \"3\");\n\nexecutor.logger.info(\"executionProperties out:\" + executor.getExecutionProperties());\n\nvar returnValue = executor.isTrue;"
+                      ]
+                    }
                   }
-               }
-            } ]
-         }
-      },
-      "events" : {
-         "key" : {
-            "name" : "ExecutionPropertiesRestTestPolicyModel_Events",
-            "version" : "0.0.1"
-         },
-         "eventMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "Event0200",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Event0200",
-                     "version" : "0.0.1"
-                  },
-                  "nameSpace" : "org.onap.policy.apex.domains.test",
-                  "source" : "Junit",
-                  "target" : "Decide",
-                  "parameter" : {
-                     "entry" : [ {
-                        "key" : "testToRun",
-                        "value" : {
-                           "key" : "testToRun",
-                           "fieldSchemaKey" : {
-                              "name" : "SimpleStringType",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
+                }
+              ]
+            },
+            "firstState": "Junit"
+          }
+        }
+      ]
+    }
+  },
+  "tasks": {
+    "key": {
+      "name": "ExecutionPropertiesRestTestPolicyModel_Tasks",
+      "version": "0.0.1"
+    },
+    "taskMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "TaskFetchHttpCode",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TaskFetchHttpCode",
+              "version": "0.0.1"
+            },
+            "inputFields": {
+              "entry": [
+                {
+                  "key": "testToRun",
+                  "value": {
+                    "key": "testToRun",
+                    "fieldSchemaKey": {
+                      "name": "SimpleStringType",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
                   }
-               }
-            }, {
-               "key" : {
-                  "name" : "Event0201",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "Event0201",
-                     "version" : "0.0.1"
-                  },
-                  "nameSpace" : "org.onap.policy.apex.domains.test",
-                  "source" : "Decide",
-                  "target" : "OutSide",
-                  "parameter" : {
-                     "entry" : [ {
-                        "key" : "testToRun",
-                        "value" : {
-                           "key" : "testToRun",
-                           "fieldSchemaKey" : {
-                              "name" : "SimpleStringType",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
+                }
+              ]
+            },
+            "outputFields": {
+              "entry": [
+                {
+                  "key": "testToRun",
+                  "value": {
+                    "key": "testToRun",
+                    "fieldSchemaKey": {
+                      "name": "SimpleStringType",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": []
+            },
+            "contextAlbumReference": [],
+            "taskLogic": {
+              "key": "TaskLogic",
+              "logicFlavour": "JAVASCRIPT",
+              "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2019 Nordix Foundation.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *      http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.info(executor.subject.id);\nexecutor.logger.info(executor.inFields);\n\nexecutor.logger.info(executor.outFields);\n\nexecutor.logger.info(\"executionProperties:\" + executor.getExecutionProperties());\n\nif (executor.getExecutionProperties() == \"{HTTP_CODE_STATUS=500}\" )\nexecutor.outFields.put(\"testToRun\", \"CodeFilterSet\");\nelse\nexecutor.outFields.put(\"testToRun\", \"CodeFilterDefault\");\n\nvar returnValue = executor.isTrue;"
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "TaskTagUrl",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "TaskTagUrl",
+              "version": "0.0.1"
+            },
+            "inputFields": {
+              "entry": [
+                {
+                  "key": "testToRun",
+                  "value": {
+                    "key": "testToRun",
+                    "fieldSchemaKey": {
+                      "name": "SimpleStringType",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "outputFields": {
+              "entry": [
+                {
+                  "key": "testToRun",
+                  "value": {
+                    "key": "testToRun",
+                    "fieldSchemaKey": {
+                      "name": "SimpleStringType",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": []
+            },
+            "contextAlbumReference": [],
+            "taskLogic": {
+              "key": "TaskLogic",
+              "logicFlavour": "JAVASCRIPT",
+              "logic": "/*\n * ============LICENSE_START=======================================================\n *  Copyright (C) 2019 Nordix Foundation.\n * ================================================================================\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *      http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n * ============LICENSE_END=========================================================\n */\n\nexecutor.logger.info(executor.subject.id);\nexecutor.logger.info(executor.inFields);\n\nexecutor.logger.info(executor.outFields);\n\nexecutor.logger.info(\"executionProperties in:\" + executor.getExecutionProperties());\n\nexecutor.getExecutionProperties().setProperty(\"tagId\", executor.inFields.get(\"testToRun\"));\nexecutor.getExecutionProperties().setProperty(\"value\", \"3\");\n\nexecutor.logger.info(\"executionProperties out:\" + executor.getExecutionProperties());\n\nvar returnValue = executor.isTrue;"
+            }
+          }
+        }
+      ]
+    }
+  },
+  "events": {
+    "key": {
+      "name": "ExecutionPropertiesRestTestPolicyModel_Events",
+      "version": "0.0.1"
+    },
+    "eventMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "Event0200",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Event0200",
+              "version": "0.0.1"
+            },
+            "nameSpace": "org.onap.policy.apex.domains.test",
+            "source": "Junit",
+            "target": "Decide",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "testToRun",
+                  "value": {
+                    "key": "testToRun",
+                    "fieldSchemaKey": {
+                      "name": "SimpleStringType",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            }
+          }
+        },
+        {
+          "key": {
+            "name": "Event0201",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "Event0201",
+              "version": "0.0.1"
+            },
+            "nameSpace": "org.onap.policy.apex.domains.test",
+            "source": "Decide",
+            "target": "OutSide",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "testToRun",
+                  "value": {
+                    "key": "testToRun",
+                    "fieldSchemaKey": {
+                      "name": "SimpleStringType",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
                   }
-               }
-            } ]
-         }
-      },
-      "schemas" : {
-         "key" : {
-            "name" : "ExecutionPropertiesRestTestPolicyModel_Schemas",
-            "version" : "0.0.1"
-         },
-         "schemas" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "SimpleStringType",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SimpleStringType",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.String"
-               }
-            } ]
-         }
-      }
-   }
+                }
+              ]
+            }
+          }
+        }
+      ]
+    }
+  },
+  "schemas": {
+    "key": {
+      "name": "ExecutionPropertiesRestTestPolicyModel_Schemas",
+      "version": "0.0.1"
+    },
+    "schemas": {
+      "entry": [
+        {
+          "key": {
+            "name": "SimpleStringType",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SimpleStringType",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.String"
+          }
+        }
+      ]
+    }
+  }
 }
index 5c06288..12c402d 100644 (file)
 {
-   "apexPolicyModel" : {
-      "key" : {
-         "name" : "SmallModel",
-         "version" : "0.0.1"
-      },
-      "keyInformation" : {
-         "key" : {
-            "name" : "SmallModel_KeyInfo",
-            "version" : "0.0.1"
-         },
-         "keyInfoMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "BasicContextAlbum",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "BasicContextAlbum",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "fec1b353-b35f-4384-b7d9-69622059c248",
-                  "description" : "Generated description for a concept called \"BasicContextAlbum\" with version \"0.0.1\" and UUID \"fec1b353-b35f-4384-b7d9-69622059c248\""
-               }
-            }, {
-               "key" : {
-                  "name" : "BasicEvent",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "BasicEvent",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "cc8d3c1a-e975-459a-bcd2-69f423eaa1f3",
-                  "description" : "Generated description for a concept called \"BasicEvent\" with version \"0.0.1\" and UUID \"cc8d3c1a-e975-459a-bcd2-69f423eaa1f3\""
-               }
-            }, {
-               "key" : {
-                  "name" : "BasicPolicy",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "BasicPolicy",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "d0c5d8ee-5fe7-4978-89ce-4a3e69cad043",
-                  "description" : "Generated description for a concept called \"BasicPolicy\" with version \"0.0.1\" and UUID \"d0c5d8ee-5fe7-4978-89ce-4a3e69cad043\""
-               }
-            }, {
-               "key" : {
-                  "name" : "BasicTask",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "BasicTask",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "c5651414-fc1c-493b-878d-75f0ce685c36",
-                  "description" : "Generated description for a concept called \"BasicTask\" with version \"0.0.1\" and UUID \"c5651414-fc1c-493b-878d-75f0ce685c36\""
-               }
-            }, {
-               "key" : {
-                  "name" : "IntType",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "IntType",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "790ff718-8dc0-44e0-89d8-1b3bbe238310",
-                  "description" : "Generated description for a concept called \"IntType\" with version \"0.0.1\" and UUID \"790ff718-8dc0-44e0-89d8-1b3bbe238310\""
-               }
-            }, {
-               "key" : {
-                  "name" : "SmallModel",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SmallModel",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "a1bd1f4e-713b-456b-b1a8-bb48beee28e8",
-                  "description" : "Generated description for a concept called \"SmallModel\" with version \"0.0.1\" and UUID \"a1bd1f4e-713b-456b-b1a8-bb48beee28e8\""
-               }
-            }, {
-               "key" : {
-                  "name" : "SmallModel_Albums",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SmallModel_Albums",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "72bed9af-ab7d-3379-b9f7-b5eca5c9ef22",
-                  "description" : "Generated description for concept referred to by key \"SmallModel_Albums:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "SmallModel_Events",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SmallModel_Events",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "796dc6b0-627d-34ae-a5e2-1bc4b4b486b8",
-                  "description" : "Generated description for concept referred to by key \"SmallModel_Events:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "SmallModel_KeyInfo",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SmallModel_KeyInfo",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "b4876774-6907-3d27-a2b8-f05737c5ee4a",
-                  "description" : "Generated description for concept referred to by key \"SmallModel_KeyInfo:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "SmallModel_Policies",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SmallModel_Policies",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "5bcf946b-67be-3190-a906-f954896f999f",
-                  "description" : "Generated description for concept referred to by key \"SmallModel_Policies:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "SmallModel_Schemas",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SmallModel_Schemas",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "c25bf5c3-7f1e-3667-b8a9-971ba21517bc",
-                  "description" : "Generated description for concept referred to by key \"SmallModel_Schemas:0.0.1\""
-               }
-            }, {
-               "key" : {
-                  "name" : "SmallModel_Tasks",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "SmallModel_Tasks",
-                     "version" : "0.0.1"
-                  },
-                  "UUID" : "43b015ca-2ed1-3a35-b103-e8a5aa68f1ef",
-                  "description" : "Generated description for concept referred to by key \"SmallModel_Tasks:0.0.1\""
-               }
-            } ]
-         }
-      },
-      "policies" : {
-         "key" : {
-            "name" : "SmallModel_Policies",
-            "version" : "0.0.1"
-         },
-         "policyMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "BasicPolicy",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "policyKey" : {
-                     "name" : "BasicPolicy",
-                     "version" : "0.0.1"
-                  },
-                  "template" : "FREEFORM",
-                  "state" : {
-                     "entry" : [ {
-                        "key" : "OnlyState",
-                        "value" : {
-                           "stateKey" : {
-                              "parentKeyName" : "BasicPolicy",
-                              "parentKeyVersion" : "0.0.1",
-                              "parentLocalName" : "NULL",
-                              "localName" : "OnlyState"
-                           },
-                           "trigger" : {
-                              "name" : "BasicEvent",
-                              "version" : "0.0.1"
-                           },
-                           "stateOutputs" : {
-                              "entry" : [ {
-                                 "key" : "OnlyOutput",
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "BasicPolicy",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "OnlyState",
-                                       "localName" : "OnlyOutput"
-                                    },
-                                    "outgoingEvent" : {
-                                       "name" : "BasicEvent",
-                                       "version" : "0.0.1"
-                                    },
-                                    "nextState" : {
-                                       "parentKeyName" : "NULL",
-                                       "parentKeyVersion" : "0.0.0",
-                                       "parentLocalName" : "NULL",
-                                       "localName" : "NULL"
-                                    }
-                                 }
-                              } ]
-                           },
-                           "contextAlbumReference" : [ {
-                              "name" : "BasicContextAlbum",
-                              "version" : "0.0.1"
-                           } ],
-                           "taskSelectionLogic" : {
-                              "key" : "NULL",
-                              "logicFlavour" : "UNDEFINED",
-                              "logic" : ""
-                           },
-                           "stateFinalizerLogicMap" : {
-                              "entry" : [ ]
-                           },
-                           "defaultTask" : {
-                              "name" : "BasicTask",
-                              "version" : "0.0.1"
-                           },
-                           "taskReferences" : {
-                              "entry" : [ {
-                                 "key" : {
-                                    "name" : "BasicTask",
-                                    "version" : "0.0.1"
-                                 },
-                                 "value" : {
-                                    "key" : {
-                                       "parentKeyName" : "BasicPolicy",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "OnlyState",
-                                       "localName" : "BasicTask"
-                                    },
-                                    "outputType" : "DIRECT",
-                                    "output" : {
-                                       "parentKeyName" : "BasicPolicy",
-                                       "parentKeyVersion" : "0.0.1",
-                                       "parentLocalName" : "OnlyState",
-                                       "localName" : "OnlyOutput"
-                                    }
-                                 }
-                              } ]
-                           }
+  "key": {
+    "name": "SmallModel",
+    "version": "0.0.1"
+  },
+  "keyInformation": {
+    "key": {
+      "name": "SmallModel_KeyInfo",
+      "version": "0.0.1"
+    },
+    "keyInfoMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "BasicContextAlbum",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "BasicContextAlbum",
+              "version": "0.0.1"
+            },
+            "UUID": "fec1b353-b35f-4384-b7d9-69622059c248",
+            "description": "Generated description for a concept called \"BasicContextAlbum\" with version \"0.0.1\" and UUID \"fec1b353-b35f-4384-b7d9-69622059c248\""
+          }
+        },
+        {
+          "key": {
+            "name": "BasicEvent",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "BasicEvent",
+              "version": "0.0.1"
+            },
+            "UUID": "cc8d3c1a-e975-459a-bcd2-69f423eaa1f3",
+            "description": "Generated description for a concept called \"BasicEvent\" with version \"0.0.1\" and UUID \"cc8d3c1a-e975-459a-bcd2-69f423eaa1f3\""
+          }
+        },
+        {
+          "key": {
+            "name": "BasicPolicy",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "BasicPolicy",
+              "version": "0.0.1"
+            },
+            "UUID": "d0c5d8ee-5fe7-4978-89ce-4a3e69cad043",
+            "description": "Generated description for a concept called \"BasicPolicy\" with version \"0.0.1\" and UUID \"d0c5d8ee-5fe7-4978-89ce-4a3e69cad043\""
+          }
+        },
+        {
+          "key": {
+            "name": "BasicTask",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "BasicTask",
+              "version": "0.0.1"
+            },
+            "UUID": "c5651414-fc1c-493b-878d-75f0ce685c36",
+            "description": "Generated description for a concept called \"BasicTask\" with version \"0.0.1\" and UUID \"c5651414-fc1c-493b-878d-75f0ce685c36\""
+          }
+        },
+        {
+          "key": {
+            "name": "IntType",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "IntType",
+              "version": "0.0.1"
+            },
+            "UUID": "790ff718-8dc0-44e0-89d8-1b3bbe238310",
+            "description": "Generated description for a concept called \"IntType\" with version \"0.0.1\" and UUID \"790ff718-8dc0-44e0-89d8-1b3bbe238310\""
+          }
+        },
+        {
+          "key": {
+            "name": "SmallModel",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SmallModel",
+              "version": "0.0.1"
+            },
+            "UUID": "a1bd1f4e-713b-456b-b1a8-bb48beee28e8",
+            "description": "Generated description for a concept called \"SmallModel\" with version \"0.0.1\" and UUID \"a1bd1f4e-713b-456b-b1a8-bb48beee28e8\""
+          }
+        },
+        {
+          "key": {
+            "name": "SmallModel_Albums",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SmallModel_Albums",
+              "version": "0.0.1"
+            },
+            "UUID": "72bed9af-ab7d-3379-b9f7-b5eca5c9ef22",
+            "description": "Generated description for concept referred to by key \"SmallModel_Albums:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "SmallModel_Events",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SmallModel_Events",
+              "version": "0.0.1"
+            },
+            "UUID": "796dc6b0-627d-34ae-a5e2-1bc4b4b486b8",
+            "description": "Generated description for concept referred to by key \"SmallModel_Events:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "SmallModel_KeyInfo",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SmallModel_KeyInfo",
+              "version": "0.0.1"
+            },
+            "UUID": "b4876774-6907-3d27-a2b8-f05737c5ee4a",
+            "description": "Generated description for concept referred to by key \"SmallModel_KeyInfo:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "SmallModel_Policies",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SmallModel_Policies",
+              "version": "0.0.1"
+            },
+            "UUID": "5bcf946b-67be-3190-a906-f954896f999f",
+            "description": "Generated description for concept referred to by key \"SmallModel_Policies:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "SmallModel_Schemas",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SmallModel_Schemas",
+              "version": "0.0.1"
+            },
+            "UUID": "c25bf5c3-7f1e-3667-b8a9-971ba21517bc",
+            "description": "Generated description for concept referred to by key \"SmallModel_Schemas:0.0.1\""
+          }
+        },
+        {
+          "key": {
+            "name": "SmallModel_Tasks",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "SmallModel_Tasks",
+              "version": "0.0.1"
+            },
+            "UUID": "43b015ca-2ed1-3a35-b103-e8a5aa68f1ef",
+            "description": "Generated description for concept referred to by key \"SmallModel_Tasks:0.0.1\""
+          }
+        }
+      ]
+    }
+  },
+  "policies": {
+    "key": {
+      "name": "SmallModel_Policies",
+      "version": "0.0.1"
+    },
+    "policyMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "BasicPolicy",
+            "version": "0.0.1"
+          },
+          "value": {
+            "policyKey": {
+              "name": "BasicPolicy",
+              "version": "0.0.1"
+            },
+            "template": "FREEFORM",
+            "state": {
+              "entry": [
+                {
+                  "key": "OnlyState",
+                  "value": {
+                    "stateKey": {
+                      "parentKeyName": "BasicPolicy",
+                      "parentKeyVersion": "0.0.1",
+                      "parentLocalName": "NULL",
+                      "localName": "OnlyState"
+                    },
+                    "trigger": {
+                      "name": "BasicEvent",
+                      "version": "0.0.1"
+                    },
+                    "stateOutputs": {
+                      "entry": [
+                        {
+                          "key": "OnlyOutput",
+                          "value": {
+                            "key": {
+                              "parentKeyName": "BasicPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "OnlyState",
+                              "localName": "OnlyOutput"
+                            },
+                            "outgoingEvent": {
+                              "name": "BasicEvent",
+                              "version": "0.0.1"
+                            },
+                            "nextState": {
+                              "parentKeyName": "NULL",
+                              "parentKeyVersion": "0.0.0",
+                              "parentLocalName": "NULL",
+                              "localName": "NULL"
+                            }
+                          }
                         }
-                     } ]
-                  },
-                  "firstState" : "OnlyState"
-               }
-            } ]
-         }
-      },
-      "tasks" : {
-         "key" : {
-            "name" : "SmallModel_Tasks",
-            "version" : "0.0.1"
-         },
-         "taskMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "BasicTask",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "BasicTask",
-                     "version" : "0.0.1"
-                  },
-                  "inputFields" : {
-                     "entry" : [ {
-                        "key" : "intPar",
-                        "value" : {
-                           "key" : "intPar",
-                           "fieldSchemaKey" : {
-                              "name" : "IntType",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
+                      ]
+                    },
+                    "contextAlbumReference": [
+                      {
+                        "name": "BasicContextAlbum",
+                        "version": "0.0.1"
+                      }
+                    ],
+                    "taskSelectionLogic": {
+                      "key": "NULL",
+                      "logicFlavour": "UNDEFINED",
+                      "logic": ""
+                    },
+                    "stateFinalizerLogicMap": {
+                      "entry": []
+                    },
+                    "defaultTask": {
+                      "name": "BasicTask",
+                      "version": "0.0.1"
+                    },
+                    "taskReferences": {
+                      "entry": [
+                        {
+                          "key": {
+                            "name": "BasicTask",
+                            "version": "0.0.1"
+                          },
+                          "value": {
+                            "key": {
+                              "parentKeyName": "BasicPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "OnlyState",
+                              "localName": "BasicTask"
+                            },
+                            "outputType": "DIRECT",
+                            "output": {
+                              "parentKeyName": "BasicPolicy",
+                              "parentKeyVersion": "0.0.1",
+                              "parentLocalName": "OnlyState",
+                              "localName": "OnlyOutput"
+                            }
+                          }
                         }
-                     } ]
-                  },
-                  "outputFields" : {
-                     "entry" : [ {
-                        "key" : "intPar",
-                        "value" : {
-                           "key" : "intPar",
-                           "fieldSchemaKey" : {
-                              "name" : "IntType",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
-                  },
-                  "taskParameters" : {
-                     "entry" : [ ]
-                  },
-                  "contextAlbumReference" : [ {
-                     "name" : "BasicContextAlbum",
-                     "version" : "0.0.1"
-                  } ],
-                  "taskLogic" : {
-                     "key" : "TaskLogic",
-                     "logicFlavour" : "JAVASCRIPT",
-                     "logic" : "executor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"BasicContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
+                      ]
+                    }
                   }
-               }
-            } ]
-         }
-      },
-      "events" : {
-         "key" : {
-            "name" : "SmallModel_Events",
-            "version" : "0.0.1"
-         },
-         "eventMap" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "BasicEvent",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "BasicEvent",
-                     "version" : "0.0.1"
-                  },
-                  "nameSpace" : "org.onap.policy.apex.events",
-                  "source" : "source",
-                  "target" : "target",
-                  "parameter" : {
-                     "entry" : [ {
-                        "key" : "intPar",
-                        "value" : {
-                           "key" : "intPar",
-                           "fieldSchemaKey" : {
-                              "name" : "IntType",
-                              "version" : "0.0.1"
-                           },
-                           "optional" : false
-                        }
-                     } ]
+                }
+              ]
+            },
+            "firstState": "OnlyState"
+          }
+        }
+      ]
+    }
+  },
+  "tasks": {
+    "key": {
+      "name": "SmallModel_Tasks",
+      "version": "0.0.1"
+    },
+    "taskMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "BasicTask",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "BasicTask",
+              "version": "0.0.1"
+            },
+            "inputFields": {
+              "entry": [
+                {
+                  "key": "intPar",
+                  "value": {
+                    "key": "intPar",
+                    "fieldSchemaKey": {
+                      "name": "IntType",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
+                  }
+                }
+              ]
+            },
+            "outputFields": {
+              "entry": [
+                {
+                  "key": "intPar",
+                  "value": {
+                    "key": "intPar",
+                    "fieldSchemaKey": {
+                      "name": "IntType",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
                   }
-               }
-            } ]
-         }
-      },
-      "albums" : {
-         "key" : {
-            "name" : "SmallModel_Albums",
-            "version" : "0.0.1"
-         },
-         "albums" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "BasicContextAlbum",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "BasicContextAlbum",
-                     "version" : "0.0.1"
-                  },
-                  "scope" : "GLOBAL",
-                  "isWritable" : true,
-                  "itemSchema" : {
-                     "name" : "IntType",
-                     "version" : "0.0.1"
+                }
+              ]
+            },
+            "taskParameters": {
+              "entry": []
+            },
+            "contextAlbumReference": [
+              {
+                "name": "BasicContextAlbum",
+                "version": "0.0.1"
+              }
+            ],
+            "taskLogic": {
+              "key": "TaskLogic",
+              "logicFlavour": "JAVASCRIPT",
+              "logic": "executor.logger.debug(executor.subject.id);\nvar gc = executor.getContextAlbum(\"BasicContextAlbum\");\nexecutor.logger.debug(gc.name);\nexecutor.logger.debug(executor.inFields);\n\nexecutor.logger.debug(executor.eo);\n\nvar returnValue = executor.isTrue;"
+            }
+          }
+        }
+      ]
+    }
+  },
+  "events": {
+    "key": {
+      "name": "SmallModel_Events",
+      "version": "0.0.1"
+    },
+    "eventMap": {
+      "entry": [
+        {
+          "key": {
+            "name": "BasicEvent",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "BasicEvent",
+              "version": "0.0.1"
+            },
+            "nameSpace": "org.onap.policy.apex.events",
+            "source": "source",
+            "target": "target",
+            "parameter": {
+              "entry": [
+                {
+                  "key": "intPar",
+                  "value": {
+                    "key": "intPar",
+                    "fieldSchemaKey": {
+                      "name": "IntType",
+                      "version": "0.0.1"
+                    },
+                    "optional": false
                   }
-               }
-            } ]
-         }
-      },
-      "schemas" : {
-         "key" : {
-            "name" : "SmallModel_Schemas",
-            "version" : "0.0.1"
-         },
-         "schemas" : {
-            "entry" : [ {
-               "key" : {
-                  "name" : "IntType",
-                  "version" : "0.0.1"
-               },
-               "value" : {
-                  "key" : {
-                     "name" : "IntType",
-                     "version" : "0.0.1"
-                  },
-                  "schemaFlavour" : "Java",
-                  "schemaDefinition" : "java.lang.Integer"
-               }
-            } ]
-         }
-      }
-   }
+                }
+              ]
+            }
+          }
+        }
+      ]
+    }
+  },
+  "albums": {
+    "key": {
+      "name": "SmallModel_Albums",
+      "version": "0.0.1"
+    },
+    "albums": {
+      "entry": [
+        {
+          "key": {
+            "name": "BasicContextAlbum",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "BasicContextAlbum",
+              "version": "0.0.1"
+            },
+            "scope": "GLOBAL",
+            "isWritable": true,
+            "itemSchema": {
+              "name": "IntType",
+              "version": "0.0.1"
+            }
+          }
+        }
+      ]
+    }
+  },
+  "schemas": {
+    "key": {
+      "name": "SmallModel_Schemas",
+      "version": "0.0.1"
+    },
+    "schemas": {
+      "entry": [
+        {
+          "key": {
+            "name": "IntType",
+            "version": "0.0.1"
+          },
+          "value": {
+            "key": {
+              "name": "IntType",
+              "version": "0.0.1"
+            },
+            "schemaFlavour": "Java",
+            "schemaDefinition": "java.lang.Integer"
+          }
+        }
+      ]
+    }
+  }
 }