diff options
211 files changed, 28485 insertions, 30308 deletions
diff --git a/auth/cli-codegen/src/test/java/org/onap/policy/apex/auth/clicodegen/CodeGeneratorCliEditorTest.java b/auth/cli-codegen/src/test/java/org/onap/policy/apex/auth/clicodegen/CodeGeneratorCliEditorTest.java index 8ad8b0213..f0cb1d879 100644 --- a/auth/cli-codegen/src/test/java/org/onap/policy/apex/auth/clicodegen/CodeGeneratorCliEditorTest.java +++ b/auth/cli-codegen/src/test/java/org/onap/policy/apex/auth/clicodegen/CodeGeneratorCliEditorTest.java @@ -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"))); diff --git a/auth/cli-codegen/src/test/java/org/onap/policy/apex/auth/clicodegen/SupportGenerationTest.java b/auth/cli-codegen/src/test/java/org/onap/policy/apex/auth/clicodegen/SupportGenerationTest.java index aed334590..e6c43692f 100644 --- a/auth/cli-codegen/src/test/java/org/onap/policy/apex/auth/clicodegen/SupportGenerationTest.java +++ b/auth/cli-codegen/src/test/java/org/onap/policy/apex/auth/clicodegen/SupportGenerationTest.java @@ -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()); } } diff --git a/auth/cli-codegen/src/test/resources/models/TestPolicyModel.json b/auth/cli-codegen/src/test/resources/models/TestPolicyModel.json index 2dc4bcd3f..a7ec595c2 100644 --- a/auth/cli-codegen/src/test/resources/models/TestPolicyModel.json +++ b/auth/cli-codegen/src/test/resources/models/TestPolicyModel.json @@ -1,6684 +1,7370 @@ { - "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" + } + } + ] + } + } +} diff --git a/auth/cli-editor/src/main/java/org/onap/policy/apex/auth/clieditor/ApexModelHandler.java b/auth/cli-editor/src/main/java/org/onap/policy/apex/auth/clieditor/ApexModelHandler.java index 896448b4f..dfb3a3865 100644 --- a/auth/cli-editor/src/main/java/org/onap/policy/apex/auth/clieditor/ApexModelHandler.java +++ b/auth/cli-editor/src/main/java/org/onap/policy/apex/auth/clieditor/ApexModelHandler.java @@ -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); } /** diff --git a/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/CommandLineEditorOptionsTest.java b/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/CommandLineEditorOptionsTest.java index 509a57cf8..e49422996 100644 --- a/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/CommandLineEditorOptionsTest.java +++ b/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/CommandLineEditorOptionsTest.java @@ -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(); diff --git a/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/CommandLineEditorScriptingTest.java b/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/CommandLineEditorScriptingTest.java index b41cd49b2..75a880a4f 100644 --- a/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/CommandLineEditorScriptingTest.java +++ b/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/CommandLineEditorScriptingTest.java @@ -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 diff --git a/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/ContextAlbumsTest.java b/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/ContextAlbumsTest.java index db44bbb9a..ab9b900af 100644 --- a/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/ContextAlbumsTest.java +++ b/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/ContextAlbumsTest.java @@ -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()); diff --git a/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/FileMacroTest.java b/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/FileMacroTest.java index 7acf2ab89..9896ab9ee 100644 --- a/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/FileMacroTest.java +++ b/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/FileMacroTest.java @@ -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()); diff --git a/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/LogicBlockTest.java b/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/LogicBlockTest.java index 702013945..31e75e579 100644 --- a/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/LogicBlockTest.java +++ b/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/LogicBlockTest.java @@ -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()); diff --git a/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/tosca/ApexCliToscaEditorTest.java b/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/tosca/ApexCliToscaEditorTest.java index 9ac046381..b75199ac3 100644 --- a/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/tosca/ApexCliToscaEditorTest.java +++ b/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/tosca/ApexCliToscaEditorTest.java @@ -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()); } diff --git a/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/utils/CliUtilsTest.java b/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/utils/CliUtilsTest.java index 371efd7d2..2ce34e148 100644 --- a/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/utils/CliUtilsTest.java +++ b/auth/cli-editor/src/test/java/org/onap/policy/apex/auth/clieditor/utils/CliUtilsTest.java @@ -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); } diff --git a/auth/cli-editor/src/test/resources/compare/AvroSchemaModel_Compare.json b/auth/cli-editor/src/test/resources/compare/AvroSchemaModel_Compare.json index bea9ff97f..c10bdca16 100644 --- a/auth/cli-editor/src/test/resources/compare/AvroSchemaModel_Compare.json +++ b/auth/cli-editor/src/test/resources/compare/AvroSchemaModel_Compare.json @@ -1,239 +1,255 @@ { - "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}" + } + } + ] + } + } +} diff --git a/auth/cli-editor/src/test/resources/compare/ContextAlbumsModel_Compare.json b/auth/cli-editor/src/test/resources/compare/ContextAlbumsModel_Compare.json index e51fde646..7b72b4b5a 100644 --- a/auth/cli-editor/src/test/resources/compare/ContextAlbumsModel_Compare.json +++ b/auth/cli-editor/src/test/resources/compare/ContextAlbumsModel_Compare.json @@ -1,1625 +1,1745 @@ { - "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" + } + } + ] + } + } +} diff --git a/auth/cli-editor/src/test/resources/compare/FLBPolicyModel_Compare.json b/auth/cli-editor/src/test/resources/compare/FLBPolicyModel_Compare.json index b74e23451..aa044dd35 100644 --- a/auth/cli-editor/src/test/resources/compare/FLBPolicyModel_Compare.json +++ b/auth/cli-editor/src/test/resources/compare/FLBPolicyModel_Compare.json @@ -1,3897 +1,5815 @@ { - "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\"" + } + } + ] + } + } +} diff --git a/auth/cli-editor/src/test/resources/compare/FLBPolicyModel_noAlbums_Compare.json b/auth/cli-editor/src/test/resources/compare/FLBPolicyModel_noAlbums_Compare.json index 4951f85ab..77735133d 100644 --- a/auth/cli-editor/src/test/resources/compare/FLBPolicyModel_noAlbums_Compare.json +++ b/auth/cli-editor/src/test/resources/compare/FLBPolicyModel_noAlbums_Compare.json @@ -1,3875 +1,4255 @@ { - "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" + } + } + ] + } + } +} diff --git a/auth/cli-editor/src/test/resources/compare/FileMacroModel_Compare.json b/auth/cli-editor/src/test/resources/compare/FileMacroModel_Compare.json index 5a8796b14..394638ba6 100644 --- a/auth/cli-editor/src/test/resources/compare/FileMacroModel_Compare.json +++ b/auth/cli-editor/src/test/resources/compare/FileMacroModel_Compare.json @@ -1,361 +1,383 @@ { - "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" + } + } + ] + } + } } diff --git a/auth/cli-editor/src/test/resources/compare/LogicBlockModel_Compare.json b/auth/cli-editor/src/test/resources/compare/LogicBlockModel_Compare.json index 45a7ac37d..b8db77830 100644 --- a/auth/cli-editor/src/test/resources/compare/LogicBlockModel_Compare.json +++ b/auth/cli-editor/src/test/resources/compare/LogicBlockModel_Compare.json @@ -1,374 +1,389 @@ { - "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\"" + } + } + ] + } + } } diff --git a/auth/cli-editor/src/test/resources/tosca/ToscaPolicyOutput_compare.json b/auth/cli-editor/src/test/resources/tosca/ToscaPolicyOutput_compare_1.json index 26a844ba4..13dc67146 100644 --- a/auth/cli-editor/src/test/resources/tosca/ToscaPolicyOutput_compare.json +++ b/auth/cli-editor/src/test/resources/tosca/ToscaPolicyOutput_compare_1.json @@ -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 index 000000000..686d2ee5b --- /dev/null +++ b/auth/cli-editor/src/test/resources/tosca/ToscaPolicyOutput_compare_2.json @@ -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"}}}}}}]}} diff --git a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/EngineParameters.java b/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/EngineParameters.java index 3cf43c581..3f8243828 100644 --- a/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/EngineParameters.java +++ b/core/core-engine/src/main/java/org/onap/policy/apex/core/engine/EngineParameters.java @@ -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 diff --git a/examples/examples-aadm/src/main/java/org/onap/policy/apex/examples/aadm/model/AadmDomainModelSaver.java b/examples/examples-aadm/src/main/java/org/onap/policy/apex/examples/aadm/model/AadmDomainModelSaver.java index 52edb31a3..490b9ac4f 100644 --- a/examples/examples-aadm/src/main/java/org/onap/policy/apex/examples/aadm/model/AadmDomainModelSaver.java +++ b/examples/examples-aadm/src/main/java/org/onap/policy/apex/examples/aadm/model/AadmDomainModelSaver.java @@ -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(); } } diff --git a/examples/examples-aadm/src/test/java/org/onap/policy/apex/examples/aadm/AadmDbWriteTest.java b/examples/examples-aadm/src/test/java/org/onap/policy/apex/examples/aadm/AadmDbWriteTest.java deleted file mode 100644 index 58987533a..000000000 --- a/examples/examples-aadm/src/test/java/org/onap/policy/apex/examples/aadm/AadmDbWriteTest.java +++ /dev/null @@ -1,49 +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.examples.aadm; - -import org.junit.Before; -import org.junit.Test; -import org.onap.policy.apex.model.basicmodel.dao.DaoParameters; -import org.onap.policy.apex.model.basicmodel.test.TestApexModel; -import org.onap.policy.apex.model.policymodel.concepts.AxPolicyModel; - -public class AadmDbWriteTest { - TestApexModel<AxPolicyModel> testApexModel; - - /** - * Sets up embedded Derby database and the Apex AADM model for the tests. - * @throws Exception exception to be thrown while setting up the database connection - */ - @Before - public void setup() throws Exception { - testApexModel = new TestApexModel<AxPolicyModel>(AxPolicyModel.class, new TestAadmModelCreator()); - } - - @Test - public void testModelWriteReadJpa() throws Exception { - final DaoParameters DaoParameters = new DaoParameters(); - DaoParameters.setPluginClass("org.onap.policy.apex.model.basicmodel.dao.impl.DefaultApexDao"); - DaoParameters.setPersistenceUnit("AADMModelTest"); - - testApexModel.testApexModelWriteReadJpa(DaoParameters); - } -} diff --git a/examples/examples-aadm/src/test/java/org/onap/policy/apex/examples/aadm/AadmModelTest.java b/examples/examples-aadm/src/test/java/org/onap/policy/apex/examples/aadm/AadmModelTest.java index 99625f136..e35d9d278 100644 --- a/examples/examples-aadm/src/test/java/org/onap/policy/apex/examples/aadm/AadmModelTest.java +++ b/examples/examples-aadm/src/test/java/org/onap/policy/apex/examples/aadm/AadmModelTest.java @@ -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"); @@ -27,7 +27,6 @@ import static org.junit.Assert.assertEquals; import org.junit.Before; import org.junit.Test; import org.onap.policy.apex.model.basicmodel.concepts.AxValidationResult; -import org.onap.policy.apex.model.basicmodel.dao.DaoParameters; import org.onap.policy.apex.model.basicmodel.test.TestApexModel; import org.onap.policy.apex.model.policymodel.concepts.AxPolicyModel; @@ -52,21 +51,7 @@ public class AadmModelTest { } @Test - public void testModelWriteReadXml() throws Exception { - testApexModel.testApexModelWriteReadXml(); - } - - @Test public void testModelWriteReadJson() throws Exception { testApexModel.testApexModelWriteReadJson(); } - - @Test - public void testModelWriteReadJpa() throws Exception { - final DaoParameters DaoParameters = new DaoParameters(); - DaoParameters.setPluginClass("org.onap.policy.apex.model.basicmodel.dao.impl.DefaultApexDao"); - DaoParameters.setPersistenceUnit("AADMModelTest"); - - testApexModel.testApexModelWriteReadJpa(DaoParameters); - } } diff --git a/examples/examples-aadm/src/test/resources/META-INF/persistence.xml b/examples/examples-aadm/src/test/resources/META-INF/persistence.xml deleted file mode 100644 index 10a720dd7..000000000 --- a/examples/examples-aadm/src/test/resources/META-INF/persistence.xml +++ /dev/null @@ -1,67 +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========================================================= ---> - -<persistence xmlns="http://java.sun.com/xml/ns/persistence" version="2.0"> - <persistence-unit name="AADMModelTest" transaction-type="RESOURCE_LOCAL"> - <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider> - - <class>org.onap.policy.apex.model.basicmodel.dao.converters.CDataConditioner</class> - <class>org.onap.policy.apex.model.basicmodel.dao.converters.Uuid2String</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxConcept</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxKeyInfo</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxKeyInformation</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxModel</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.TestEntity</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextSchema</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextSchemas</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextAlbum</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextAlbums</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextModel</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxField</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxInputField</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxOutputField</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxEvent</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxEvents</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxEventModel</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxLogic</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTaskParameter</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTaskLogic</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTask</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTasks</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTaskSelectionLogic</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxStateFinalizerLogic</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxStateOutput</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxStateTaskReference</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxState</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxPolicy</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxPolicies</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxPolicyModel</class> - - <properties> - <property name="javax.persistence.jdbc.url" value="jdbc:h2:mem:testdb" /> - <property name="javax.persistence.jdbc.driver" value="org.h2.Driver" /> - <property name="eclipselink.ddl-generation" value="drop-and-create-tables" /> - <property name="eclipselink.ddl-generation.output-mode" value="database" /> - <property name="eclipselink.logging.level" value="INFO" /> - </properties> - </persistence-unit> -</persistence> diff --git a/examples/examples-adaptive/src/main/java/org/onap/policy/apex/examples/adaptive/model/AdaptiveDomainModelSaver.java b/examples/examples-adaptive/src/main/java/org/onap/policy/apex/examples/adaptive/model/AdaptiveDomainModelSaver.java index 0ebff497c..3400fa303 100644 --- a/examples/examples-adaptive/src/main/java/org/onap/policy/apex/examples/adaptive/model/AdaptiveDomainModelSaver.java +++ b/examples/examples-adaptive/src/main/java/org/onap/policy/apex/examples/adaptive/model/AdaptiveDomainModelSaver.java @@ -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(); } } diff --git a/examples/examples-adaptive/src/test/java/org/onap/policy/apex/examples/adaptive/AnomalyDetectionDbWriteTest.java b/examples/examples-adaptive/src/test/java/org/onap/policy/apex/examples/adaptive/AnomalyDetectionDbWriteTest.java deleted file mode 100644 index 3004bccb3..000000000 --- a/examples/examples-adaptive/src/test/java/org/onap/policy/apex/examples/adaptive/AnomalyDetectionDbWriteTest.java +++ /dev/null @@ -1,48 +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.examples.adaptive; - -import org.junit.Before; -import org.junit.Test; -import org.onap.policy.apex.model.basicmodel.dao.DaoParameters; -import org.onap.policy.apex.model.basicmodel.test.TestApexModel; -import org.onap.policy.apex.model.policymodel.concepts.AxPolicyModel; - -public class AnomalyDetectionDbWriteTest { - TestApexModel<AxPolicyModel> testApexModel; - - /** - * Sets up embedded Derby database and the Apex anomaly detection model for the tests. - * @throws Exception exception to be thrown while setting up the database connection - */ - @Before - public void setup() throws Exception { - testApexModel = new TestApexModel<>(AxPolicyModel.class, new TestAnomalyDetectionModelCreator()); - } - - @Test - public void testModelWriteReadJpa() throws Exception { - final DaoParameters DaoParameters = new DaoParameters(); - DaoParameters.setPluginClass("org.onap.policy.apex.model.basicmodel.dao.impl.DefaultApexDao"); - DaoParameters.setPersistenceUnit("AdaptiveModelsTest"); - testApexModel.testApexModelWriteReadJpa(DaoParameters); - } -} diff --git a/examples/examples-adaptive/src/test/java/org/onap/policy/apex/examples/adaptive/AnomalyDetectionModelTest.java b/examples/examples-adaptive/src/test/java/org/onap/policy/apex/examples/adaptive/AnomalyDetectionModelTest.java index 85cecbe8b..4f9c58cc6 100644 --- a/examples/examples-adaptive/src/test/java/org/onap/policy/apex/examples/adaptive/AnomalyDetectionModelTest.java +++ b/examples/examples-adaptive/src/test/java/org/onap/policy/apex/examples/adaptive/AnomalyDetectionModelTest.java @@ -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. @@ -26,11 +26,12 @@ import static org.junit.Assert.assertEquals; import org.junit.Before; import org.junit.Test; import org.onap.policy.apex.model.basicmodel.concepts.AxValidationResult; -import org.onap.policy.apex.model.basicmodel.dao.DaoParameters; import org.onap.policy.apex.model.basicmodel.test.TestApexModel; import org.onap.policy.apex.model.policymodel.concepts.AxPolicyModel; public class AnomalyDetectionModelTest { + private static final String VALID_MODEL_STRING = "***validation of model successful***"; + TestApexModel<AxPolicyModel> testApexModel; /** @@ -49,23 +50,7 @@ public class AnomalyDetectionModelTest { } @Test - public void testModelWriteReadXml() throws Exception { - testApexModel.testApexModelWriteReadXml(); - } - - @Test public void testModelWriteReadJson() throws Exception { testApexModel.testApexModelWriteReadJson(); } - - @Test - public void testModelWriteReadJpa() throws Exception { - final DaoParameters DaoParameters = new DaoParameters(); - DaoParameters.setPluginClass("org.onap.policy.apex.model.basicmodel.dao.impl.DefaultApexDao"); - DaoParameters.setPersistenceUnit("AdaptiveModelsTest"); - - testApexModel.testApexModelWriteReadJpa(DaoParameters); - } - - private static final String VALID_MODEL_STRING = "***validation of model successful***"; } diff --git a/examples/examples-adaptive/src/test/java/org/onap/policy/apex/examples/adaptive/AutoLearnDbWriteTest.java b/examples/examples-adaptive/src/test/java/org/onap/policy/apex/examples/adaptive/AutoLearnDbWriteTest.java deleted file mode 100644 index b72514f49..000000000 --- a/examples/examples-adaptive/src/test/java/org/onap/policy/apex/examples/adaptive/AutoLearnDbWriteTest.java +++ /dev/null @@ -1,49 +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.examples.adaptive; - -import org.junit.Before; -import org.junit.Test; -import org.onap.policy.apex.model.basicmodel.dao.DaoParameters; -import org.onap.policy.apex.model.basicmodel.test.TestApexModel; -import org.onap.policy.apex.model.policymodel.concepts.AxPolicyModel; - -public class AutoLearnDbWriteTest { - TestApexModel<AxPolicyModel> testApexModel; - - /** - * Sets up embedded Derby database and the Apex AutoLearn model for the tests. - * @throws Exception exception to be thrown while setting up the database connection - */ - @Before - public void setup() throws Exception { - testApexModel = new TestApexModel<>(AxPolicyModel.class, new TestAutoLearnModelCreator()); - } - - @Test - public void testModelWriteReadJpa() throws Exception { - final DaoParameters DaoParameters = new DaoParameters(); - DaoParameters.setPluginClass("org.onap.policy.apex.model.basicmodel.dao.impl.DefaultApexDao"); - DaoParameters.setPersistenceUnit("AdaptiveModelsTest"); - - testApexModel.testApexModelWriteReadJpa(DaoParameters); - } -} diff --git a/examples/examples-adaptive/src/test/java/org/onap/policy/apex/examples/adaptive/AutoLearnModelTest.java b/examples/examples-adaptive/src/test/java/org/onap/policy/apex/examples/adaptive/AutoLearnModelTest.java index 3479ccc9e..c69fa0678 100644 --- a/examples/examples-adaptive/src/test/java/org/onap/policy/apex/examples/adaptive/AutoLearnModelTest.java +++ b/examples/examples-adaptive/src/test/java/org/onap/policy/apex/examples/adaptive/AutoLearnModelTest.java @@ -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. @@ -26,11 +26,12 @@ import static org.junit.Assert.assertEquals; import org.junit.Before; import org.junit.Test; import org.onap.policy.apex.model.basicmodel.concepts.AxValidationResult; -import org.onap.policy.apex.model.basicmodel.dao.DaoParameters; import org.onap.policy.apex.model.basicmodel.test.TestApexModel; import org.onap.policy.apex.model.policymodel.concepts.AxPolicyModel; public class AutoLearnModelTest { + private static final String VALID_MODEL_STRING = "***validation of model successful***"; + TestApexModel<AxPolicyModel> testApexModel; /** @@ -49,23 +50,7 @@ public class AutoLearnModelTest { } @Test - public void testModelWriteReadXml() throws Exception { - testApexModel.testApexModelWriteReadXml(); - } - - @Test public void testModelWriteReadJson() throws Exception { testApexModel.testApexModelWriteReadJson(); } - - @Test - public void testModelWriteReadJpa() throws Exception { - final DaoParameters DaoParameters = new DaoParameters(); - DaoParameters.setPluginClass("org.onap.policy.apex.model.basicmodel.dao.impl.DefaultApexDao"); - DaoParameters.setPersistenceUnit("AdaptiveModelsTest"); - - testApexModel.testApexModelWriteReadJpa(DaoParameters); - } - - private static final String VALID_MODEL_STRING = "***validation of model successful***"; } diff --git a/examples/examples-adaptive/src/test/resources/META-INF/persistence.xml b/examples/examples-adaptive/src/test/resources/META-INF/persistence.xml deleted file mode 100644 index 1e70abc6d..000000000 --- a/examples/examples-adaptive/src/test/resources/META-INF/persistence.xml +++ /dev/null @@ -1,67 +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========================================================= ---> - -<persistence xmlns="http://java.sun.com/xml/ns/persistence" version="2.0"> - <persistence-unit name="AdaptiveModelsTest" transaction-type="RESOURCE_LOCAL"> - <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider> - - <class>org.onap.policy.apex.model.basicmodel.dao.converters.CDataConditioner</class> - <class>org.onap.policy.apex.model.basicmodel.dao.converters.Uuid2String</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxConcept</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxKeyInfo</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxKeyInformation</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxModel</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.TestEntity</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextSchema</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextSchemas</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextAlbum</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextAlbums</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextModel</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxField</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxInputField</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxOutputField</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxEvent</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxEvents</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxEventModel</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxLogic</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTaskParameter</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTaskLogic</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTask</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTasks</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTaskSelectionLogic</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxStateFinalizerLogic</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxStateOutput</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxStateTaskReference</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxState</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxPolicy</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxPolicies</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxPolicyModel</class> - - <properties> - <property name="javax.persistence.jdbc.url" value="jdbc:h2:mem:testdb" /> - <property name="javax.persistence.jdbc.driver" value="org.h2.Driver" /> - <property name="eclipselink.ddl-generation" value="drop-and-create-tables" /> - <property name="eclipselink.ddl-generation.output-mode" value="database" /> - <property name="eclipselink.logging.level" value="INFO" /> - </properties> - </persistence-unit> -</persistence> diff --git a/examples/examples-myfirstpolicy/src/test/java/org/onap/policy/apex/examples/myfirstpolicy/MfpModelTest.java b/examples/examples-myfirstpolicy/src/test/java/org/onap/policy/apex/examples/myfirstpolicy/MfpModelTest.java index 1bd67f961..2472cb466 100644 --- a/examples/examples-myfirstpolicy/src/test/java/org/onap/policy/apex/examples/myfirstpolicy/MfpModelTest.java +++ b/examples/examples-myfirstpolicy/src/test/java/org/onap/policy/apex/examples/myfirstpolicy/MfpModelTest.java @@ -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. @@ -63,17 +64,6 @@ public class MfpModelTest { } /** - * 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. * * @throws Exception if there is an error diff --git a/examples/examples-myfirstpolicy/src/test/resources/META-INF/persistence.xml b/examples/examples-myfirstpolicy/src/test/resources/META-INF/persistence.xml deleted file mode 100644 index 909f413eb..000000000 --- a/examples/examples-myfirstpolicy/src/test/resources/META-INF/persistence.xml +++ /dev/null @@ -1,67 +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========================================================= ---> - -<persistence xmlns="http://java.sun.com/xml/ns/persistence" version="2.0"> - <persistence-unit name="MFPModelTest" transaction-type="RESOURCE_LOCAL"> - <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider> - - <class>org.onap.policy.apex.model.basicmodel.dao.converters.CDataConditioner</class> - <class>org.onap.policy.apex.model.basicmodel.dao.converters.Uuid2String</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxConcept</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxKeyInfo</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxKeyInformation</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxModel</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.TestEntity</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextSchema</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextSchemas</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextAlbum</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextAlbums</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextModel</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxField</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxInputField</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxOutputField</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxEvent</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxEvents</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxEventModel</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxLogic</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTaskParameter</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTaskLogic</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTask</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTasks</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTaskSelectionLogic</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxStateFinalizerLogic</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxStateOutput</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxStateTaskReference</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxState</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxPolicy</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxPolicies</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxPolicyModel</class> - - <properties> - <property name="javax.persistence.jdbc.url" value="jdbc:h2:mem:testdb" /> - <property name="javax.persistence.jdbc.driver" value="org.h2.Driver" /> - <property name="eclipselink.ddl-generation" value="drop-and-create-tables" /> - <property name="eclipselink.ddl-generation.output-mode" value="database" /> - <property name="eclipselink.logging.level" value="INFO" /> - </properties> - </persistence-unit> -</persistence> diff --git a/examples/examples-onap-vcpe/src/test/java/org/onap/policy/apex/domains/onap/vcpe/OnapVCpeSimEndpoint.java b/examples/examples-onap-vcpe/src/test/java/org/onap/policy/apex/domains/onap/vcpe/OnapVCpeSimEndpoint.java index 8b5d2ef88..a6c85fb0e 100644 --- a/examples/examples-onap-vcpe/src/test/java/org/onap/policy/apex/domains/onap/vcpe/OnapVCpeSimEndpoint.java +++ b/examples/examples-onap-vcpe/src/test/java/org/onap/policy/apex/domains/onap/vcpe/OnapVCpeSimEndpoint.java @@ -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(); diff --git a/examples/examples-pcvs/src/test/resources/META-INF/persistence.xml b/examples/examples-pcvs/src/test/resources/META-INF/persistence.xml deleted file mode 100644 index 632ae0fca..000000000 --- a/examples/examples-pcvs/src/test/resources/META-INF/persistence.xml +++ /dev/null @@ -1,70 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - ============LICENSE_START======================================================= - Copyright (C) 2016-2018 Ericsson. All rights reserved. - Modifications Copyright (C) 2019-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========================================================= ---> - -<persistence xmlns="http://java.sun.com/xml/ns/persistence" version="2.0"> - <persistence-unit name="MFPModelTest" transaction-type="RESOURCE_LOCAL"> - <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider> - - <class>org.onap.policy.apex.model.basicmodel.dao.converters.CDATAConditioner</class> - <class>org.onap.policy.apex.model.basicmodel.dao.converters.UUID2String</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxConcept</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxKeyInfo</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxKeyInformation</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxModel</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.TestEntity</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextSchema</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextSchemas</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextAlbum</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextAlbums</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextModel</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxField</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxInputField</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxOutputField</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxEvent</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxEvents</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxEventModel</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxLogic</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTaskParameter</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTaskLogic</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTask</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTasks</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTaskSelectionLogic</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxStateFinalizerLogic</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxStateOutput</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxStateTaskReference</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxState</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxPolicy</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxPolicies</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxPolicyModel</class> - - <properties> - <property name="javax.persistence.jdbc.url" value="jdbc:derby:memory:apex_test" /> - <property name="eclipselink.target-database" value="Derby" /> - <property name="javax.persistence.jdbc.driver" value="org.apache.derby.jdbc.EmbeddedDriver" /> - - <property name="eclipselink.ddl-generation" value="drop-and-create-tables" /> - <property name="eclipselink.ddl-generation.output-mode" value="database" /> - <property name="eclipselink.logging.level" value="INFO" /> - </properties> - </persistence-unit> -</persistence> diff --git a/model/basic-model/pom.xml b/model/basic-model/pom.xml index a0b9f085d..45d9978cf 100644 --- a/model/basic-model/pom.xml +++ b/model/basic-model/pom.xml @@ -1,6 +1,6 @@ <!-- ============LICENSE_START======================================================= - Copyright (c) 2020 Nordix Foundation. + 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. @@ -18,10 +18,7 @@ ============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> @@ -45,6 +42,12 @@ <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> @@ -52,10 +55,6 @@ <version>${project.version}</version> </dependency> <dependency> - <groupId>org.eclipse.persistence</groupId> - <artifactId>eclipselink</artifactId> - </dependency> - <dependency> <groupId>javax.xml.bind</groupId> <artifactId>jaxb-api</artifactId> <version>${version.javax.bind}</version> @@ -81,30 +80,4 @@ <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 diff --git a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/concepts/AxArtifactKey.java b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/concepts/AxArtifactKey.java index 1edbc9be9..1efe83db8 100644 --- a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/concepts/AxArtifactKey.java +++ b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/concepts/AxArtifactKey.java @@ -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. @@ -23,13 +23,6 @@ package org.onap.policy.apex.model.basicmodel.concepts; import java.util.ArrayList; import java.util.List; -import javax.persistence.Column; -import javax.persistence.Embeddable; -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; @@ -41,25 +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. */ -@Embeddable -@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"; - @Column(name = NAME_TOKEN) - @XmlElement(required = true) private String name; - - @Column(name = VERSION_TOKEN) - @XmlElement(required = true) private String version; /** diff --git a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/concepts/AxConcept.java b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/concepts/AxConcept.java index 0e2c6bef2..37fe30b33 100644 --- a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/concepts/AxConcept.java +++ b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/concepts/AxConcept.java @@ -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; @@ -86,6 +82,12 @@ public abstract class AxConcept implements Serializable, Comparable<AxConcept> { public abstract void clean(); /** + * Builds references used by a concept. + */ + public void buildReferences() { + } + + /** * {@inheritDoc}. */ @Override diff --git a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/concepts/AxKeyInfo.java b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/concepts/AxKeyInfo.java index 7e92faddf..bd3b18ec9 100644 --- a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/concepts/AxKeyInfo.java +++ b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/concepts/AxKeyInfo.java @@ -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"); @@ -22,24 +22,12 @@ 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.persistence.Column; -import javax.persistence.Convert; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.Table; -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.apache.commons.lang3.StringUtils; import org.onap.policy.apex.model.basicmodel.concepts.AxValidationResult.ValidationResult; -import org.onap.policy.apex.model.basicmodel.dao.converters.CDataConditioner; -import org.onap.policy.apex.model.basicmodel.dao.converters.Uuid2String; import org.onap.policy.common.utils.validation.Assertions; /** @@ -49,19 +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. */ - -@Entity -@Table(name = "AxKeyInfo") - -@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; /* @@ -69,20 +47,11 @@ public class AxKeyInfo extends AxConcept { */ private static final Random sharedRandom = new Random(); // NOSONAR - @EmbeddedId - @XmlElement(name = "key", required = true) private AxArtifactKey key; - @Column(name = "uuid") - @Convert(converter = Uuid2String.class) - @XmlJavaTypeAdapter(value = Uuid2String.class) - @XmlElement(name = "UUID", required = true) + @SerializedName("UUID") private UUID uuid; - @Column(name = "description", length = MAX_DESCRIPTION_LENGTH_8192) - @Convert(converter = CDataConditioner.class) - @XmlJavaTypeAdapter(value = CDataConditioner.class) - @XmlElement(required = true) private String description; /** @@ -299,9 +268,7 @@ public class AxKeyInfo extends AxConcept { if (!uuid.equals(other.uuid)) { return false; } - final String thisdesc = CDataConditioner.clean(description); - final String otherdesc = CDataConditioner.clean(other.description); - return thisdesc.equals(otherdesc); + return description.equals(description); } /** diff --git a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/concepts/AxKeyInformation.java b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/concepts/AxKeyInformation.java index 6da5ab3a8..439b2960f 100644 --- a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/concepts/AxKeyInformation.java +++ b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/concepts/AxKeyInformation.java @@ -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"); @@ -30,18 +30,6 @@ import java.util.Set; import java.util.TreeMap; import java.util.TreeSet; import java.util.UUID; -import javax.persistence.CascadeType; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.JoinColumn; -import javax.persistence.JoinTable; -import javax.persistence.ManyToMany; -import javax.persistence.Table; -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; @@ -55,29 +43,11 @@ 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. */ -@Entity -@Table(name = "AxKeyInformation") - -@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; - @EmbeddedId - @XmlElement(name = "key", required = true) private AxArtifactKey key; - - // @formatter:off - @ManyToMany(cascade = CascadeType.ALL) - @JoinTable( - joinColumns = { @JoinColumn(name = "keyInfoMapName", referencedColumnName = "name"), - @JoinColumn(name = "keyInfoMapVersion", referencedColumnName = "version"), }, - inverseJoinColumns = { @JoinColumn(name = "keyInfoName", referencedColumnName = "name"), - @JoinColumn(name = "keyInfoVersion", referencedColumnName = "version") }) private Map<AxArtifactKey, AxKeyInfo> keyInfoMap; - // @formatter:on /** * The Default Constructor creates this concept with a null key. @@ -121,22 +91,6 @@ public class AxKeyInformation extends AxConcept implements AxConceptGetter<AxKey } /** - * 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. * @@ -179,6 +133,14 @@ public class AxKeyInformation extends AxConcept implements AxConceptGetter<AxKey } /** + * {@inheritDoc}. + */ + @Override + public void buildReferences() { + keyInfoMap.values().stream().forEach(keyInfo -> keyInfo.buildReferences()); + } + + /** * Sets the key of this concept. * * @param key the key of this concept @@ -237,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 diff --git a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/concepts/AxModel.java b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/concepts/AxModel.java index b29743c0b..ce52b147f 100644 --- a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/concepts/AxModel.java +++ b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/concepts/AxModel.java @@ -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"); @@ -25,22 +25,7 @@ package org.onap.policy.apex.model.basicmodel.concepts; import java.util.List; import java.util.Set; import java.util.TreeSet; -import javax.persistence.CascadeType; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.Inheritance; -import javax.persistence.InheritanceType; -import javax.persistence.JoinColumn; -import javax.persistence.OneToOne; -import javax.persistence.Table; -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; @@ -55,33 +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. */ - -@Entity -@Table(name = "AxModel") -@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS) - -@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; - @EmbeddedId - @XmlElement(name = "key", required = true) private AxArtifactKey key; - - // @formatter:off - @OneToOne(cascade = CascadeType.ALL) - @JoinColumn(name = "keyInformationName", referencedColumnName = "name") - @JoinColumn(name = "keyInformationVersion", referencedColumnName = "version") - @XmlElement(name = "keyInformation", required = true) - @XmlJavaTypeAdapter(KeyInfoMarshalFilter.class) private AxKeyInformation keyInformation; - // @formatter:on /** * The Default Constructor creates this concept with a NULL artifact key. diff --git a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/concepts/AxReferenceKey.java b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/concepts/AxReferenceKey.java index 03a75a7fb..b37bc47e4 100644 --- a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/concepts/AxReferenceKey.java +++ b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/concepts/AxReferenceKey.java @@ -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. @@ -23,13 +23,6 @@ package org.onap.policy.apex.model.basicmodel.concepts; import java.util.ArrayList; import java.util.List; -import javax.persistence.Column; -import javax.persistence.Embeddable; -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; @@ -50,12 +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. */ -@Embeddable -@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"; @@ -64,32 +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; - @Column(name = PARENT_KEY_NAME) - @XmlElement(required = true) private String parentKeyName; - - @Column(name = PARENT_KEY_VERSION) - @XmlElement(required = true) private String parentKeyVersion; - - @Column(name = PARENT_LOCAL_NAME) - @XmlElement(required = true) private String parentLocalName; - - @Column(name = LOCAL_NAME) - @XmlElement(required = true) private String localName; /** @@ -102,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); @@ -123,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); @@ -135,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); @@ -148,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); @@ -163,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); @@ -178,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); @@ -215,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); } /** @@ -231,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); } /** @@ -281,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"); @@ -295,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"); @@ -318,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); @@ -337,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); } /** @@ -357,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); } /** @@ -377,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); @@ -416,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; diff --git a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/concepts/package-info.java b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/concepts/package-info.java index 294a66496..347e46a0f 100644 --- a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/concepts/package-info.java +++ b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/concepts/package-info.java @@ -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. @@ -23,12 +24,4 @@ * * @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/dao/ApexDao.java b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/dao/ApexDao.java deleted file mode 100644 index b84646038..000000000 --- a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/dao/ApexDao.java +++ /dev/null @@ -1,206 +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.dao; - -import java.util.Collection; -import java.util.List; -import org.onap.policy.apex.model.basicmodel.concepts.ApexException; -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.AxReferenceKey; - -/** - * The Interface ApexDao describes the DAO interface for reading and writing Apex {@link AxConcept} concepts to and from - * databases using JDBC. - * - * @author Sergey Sachkov - * @author liam.fallon@ericsson.com - */ -public interface ApexDao { - - /** - * Initialize the Apex DAO with the given parameters. - * - * @param daoParameters parameters to use to access the database - * @throws ApexException on initialization errors - */ - void init(DaoParameters daoParameters) throws ApexException; - - /** - * Close the Apex DAO. - */ - void close(); - - /** - * Creates an Apex concept on the database. - * - * @param <T> the type of the object to create, a subclass of {@link AxConcept} - * @param obj the object to create - */ - <T extends AxConcept> void create(T obj); - - /** - * Delete an Apex concept on the database. - * - * @param <T> the type of the object to delete, a subclass of {@link AxConcept} - * @param obj the object to delete - */ - <T extends AxConcept> void delete(T obj); - - /** - * Delete an Apex concept on the database. - * - * @param <T> the type of the object to delete, a subclass of {@link AxConcept} - * @param someClass the class of the object to delete, a subclass of {@link AxConcept} - * @param key the key of the object to delete - */ - <T extends AxConcept> void delete(Class<T> someClass, AxArtifactKey key); - - /** - * Delete an Apex concept on the database. - * - * @param <T> the type of the object to delete, a subclass of {@link AxConcept} - * @param someClass the class of the object to delete, a subclass of {@link AxConcept} - * @param key the key of the object to delete - */ - <T extends AxConcept> void delete(Class<T> someClass, AxReferenceKey key); - - /** - * Create a collection of objects in the database. - * - * @param <T> the type of the object to create, a subclass of {@link AxConcept} - * @param objs the objects to create - */ - <T extends AxConcept> void createCollection(Collection<T> objs); - - /** - * Delete a collection of objects in the database. - * - * @param <T> the type of the objects to delete, a subclass of {@link AxConcept} - * @param objs the objects to delete - */ - <T extends AxConcept> void deleteCollection(Collection<T> objs); - - /** - * Delete a collection of objects in the database referred to by artifact key. - * - * @param <T> the type of the objects to delete, a subclass of {@link AxConcept} - * @param someClass the class of the objects to delete, a subclass of {@link AxConcept} - * @param keys the keys of the objects to delete - * @return the number of objects deleted - */ - <T extends AxConcept> int deleteByArtifactKey(Class<T> someClass, Collection<AxArtifactKey> keys); - - /** - * Delete a collection of objects in the database referred to by reference key. - * - * @param <T> the type of the objects to delete, a subclass of {@link AxConcept} - * @param someClass the class of the objects to delete, a subclass of {@link AxConcept} - * @param keys the keys of the objects to delete - * @return the number of objects deleted - */ - <T extends AxConcept> int deleteByReferenceKey(Class<T> someClass, Collection<AxReferenceKey> keys); - - /** - * Delete all objects of a given class in the database. - * - * @param <T> the type of the objects to delete, a subclass of {@link AxConcept} - * @param someClass the class of the objects to delete, a subclass of {@link AxConcept} - */ - <T extends AxConcept> void deleteAll(Class<T> someClass); - - /** - * Get an object from the database, referred to by artifact key. - * - * @param <T> the type of the object to get, a subclass of {@link AxConcept} - * @param someClass the class of the object to get, a subclass of {@link AxConcept} - * @param key the key of the object to get - * @return the object that was retrieved from the database - */ - <T extends AxConcept> T get(Class<T> someClass, AxArtifactKey key); - - /** - * Get an object from the database, referred to by reference key. - * - * @param <T> the type of the object to get, a subclass of {@link AxConcept} - * @param someClass the class of the object to get, a subclass of {@link AxConcept} - * @param key the key of the object to get - * @return the object that was retrieved from the database or null if the object was not retrieved - */ - <T extends AxConcept> T get(Class<T> someClass, AxReferenceKey key); - - /** - * Get all the objects in the database of a given type. - * - * @param <T> the type of the objects to get, a subclass of {@link AxConcept} - * @param someClass the class of the objects to get, a subclass of {@link AxConcept} - * @return the objects or null if no objects were retrieved - */ - <T extends AxConcept> List<T> getAll(Class<T> someClass); - - /** - * Get all the objects in the database of the given type with the given parent artifact key. - * - * @param <T> the type of the objects to get, a subclass of {@link AxConcept} - * @param someClass the class of the objects to get, a subclass of {@link AxConcept} - * @param parentKey the parent key of the concepts to get - * @return the all - */ - <T extends AxConcept> List<T> getAll(Class<T> someClass, AxArtifactKey parentKey); - - /** - * Get a concept from the database with the given artifact key. - * - * @param <T> the type of the object to get, a subclass of {@link AxConcept} - * @param someClass the class of the object to get, a subclass of {@link AxConcept} - * @param artifactId the artifact key of the concept to get - * @return the concept that matches the key or null if the concept is not retrieved - */ - <T extends AxConcept> T getArtifact(Class<T> someClass, AxArtifactKey artifactId); - - /** - * Get a concept from the database with the given reference key. - * - * @param <T> the type of the object to get, a subclass of {@link AxConcept} - * @param someClass the class of the object to get, a subclass of {@link AxConcept} - * @param artifactId the artifact key of the concept to get - * @return the concept that matches the key or null if the concept is not retrieved - */ - <T extends AxConcept> T getArtifact(Class<T> someClass, AxReferenceKey artifactId); - - /** - * Get the number of instances of a concept that exist in the database. - * - * @param <T> the type of the object to get, a subclass of {@link AxConcept} - * @param someClass the class of the object to get, a subclass of {@link AxConcept} - * @return the number of instances of the concept in the database - */ - <T extends AxConcept> long size(Class<T> someClass); - - /** - * Update a concept in the database. - * - * @param <T> the type of the object to get, a subclass of {@link AxConcept} - * @param obj the object to update - * @return the updated object - */ - <T extends AxConcept> T update(T obj); -} diff --git a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/dao/ApexDaoFactory.java b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/dao/ApexDaoFactory.java deleted file mode 100644 index fad3b08b9..000000000 --- a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/dao/ApexDaoFactory.java +++ /dev/null @@ -1,70 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * Copyright (C) 2016-2018 Ericsson. All rights reserved. - * Modifications Copyright (C) 2019-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========================================================= - */ - -package org.onap.policy.apex.model.basicmodel.dao; - -import org.onap.policy.apex.model.basicmodel.concepts.ApexException; -import org.onap.policy.common.utils.validation.Assertions; -import org.slf4j.ext.XLogger; -import org.slf4j.ext.XLoggerFactory; - -/** - * This factory class returns an Apex DAO for the configured persistence mechanism. The factory uses the plugin class - * specified in {@link DaoParameters} to instantiate a DAO instance. - * - * @author Liam Fallon (liam.fallon@ericsson.com) - */ -public class ApexDaoFactory { - // Get a reference to the logger - private static final XLogger LOGGER = XLoggerFactory.getXLogger(ApexDaoFactory.class); - - /** - * Return an Apex DAO for the required APEX DAO plugin class. - * - * @param daoParameters parameters to use to read the database configuration information - * @return the Apex DAO - * @throws ApexException on invalid JPA plugins - */ - public ApexDao createApexDao(final DaoParameters daoParameters) throws ApexException { - Assertions.argumentOfClassNotNull(daoParameters, ApexException.class, - "Parameter \"daoParameters\" may not be null"); - - // Get the class for the DAO using reflection - Object apexDaoObject = null; - try { - apexDaoObject = Class.forName(daoParameters.getPluginClass()).getDeclaredConstructor().newInstance(); - } catch (final Exception e) { - LOGGER.error("Apex DAO class not found for DAO plugin \"" + daoParameters.getPluginClass() + "\"", e); - throw new ApexException( - "Apex DAO class not found for DAO plugin \"" + daoParameters.getPluginClass() + "\"", e); - } - - // Check the class is an Apex DAO - if (!(apexDaoObject instanceof ApexDao)) { - LOGGER.error("Specified Apex DAO plugin class \"" + daoParameters.getPluginClass() - + "\" does not implement the ApexDao interface"); - throw new ApexException("Specified Apex DAO plugin class \"" + daoParameters.getPluginClass() - + "\" does not implement the ApexDao interface"); - } - - return (ApexDao) apexDaoObject; - } -} diff --git a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/dao/DaoParameters.java b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/dao/DaoParameters.java deleted file mode 100644 index c575bd7c0..000000000 --- a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/dao/DaoParameters.java +++ /dev/null @@ -1,123 +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.dao; - -import java.util.Properties; - -/** - * This class is a POJO that holds properties for Apex DAOs. - * - * @author Liam Fallon (liam.fallon@ericsson.com) - */ -public class DaoParameters { - /** The default Apex DAO plugin class. */ - public static final String DEFAULT_PLUGIN_CLASS = "org.onap.policy.apex.model.basicmodel.dao.impl.DefaultApexDao"; - - private String pluginClass = DEFAULT_PLUGIN_CLASS; - private String persistenceUnit; - - private Properties jdbcProperties = new Properties(); - - /** - * Gets the DAO plugin class, this is the DAO class to use and it must implement the {@link ApexDao} interface. - * - * @return the DAO plugin class - */ - public String getPluginClass() { - return pluginClass; - } - - /** - * Sets the DAO plugin class, a class that implements the {@link ApexDao} interface. - * - * @param daoPluginClass the DAO plugin class - */ - public void setPluginClass(final String daoPluginClass) { - pluginClass = daoPluginClass; - } - - /** - * Gets the persistence unit for the DAO. The persistence unit defines the JDBC properties the DAO will use. The - * persistence unit must defined in the {@code META-INF/persistence.xml} resource file - * - * @return the persistence unit to use for JDBC access - */ - public String getPersistenceUnit() { - return persistenceUnit; - } - - /** - * Sets the persistence unit for the DAO. The persistence unit defines the JDBC properties the DAO will use. The - * persistence unit must defined in the {@code META-INF/persistence.xml} resource file - * - * @param daoPersistenceUnit the persistence unit to use for JDBC access - */ - public void setPersistenceUnit(final String daoPersistenceUnit) { - persistenceUnit = daoPersistenceUnit; - } - - /** - * Gets the JDBC properties. - * - * @return the JDBC properties - */ - public Properties getJdbcProperties() { - return jdbcProperties; - } - - /** - * Sets the JDBC properties. - * - * @param jdbcProperties the JDBC properties - */ - public void setJdbcProperties(final Properties jdbcProperties) { - this.jdbcProperties = jdbcProperties; - } - - /** - * Gets a single JDBC property. - * - * @param key the key of the property - * @return the JDBC property - */ - public String getJdbcProperty(final String key) { - return jdbcProperties.getProperty(key); - } - - /** - * Sets a single JDBC property. - * - * @param key the key of the property - * @param value the value of the JDBC property - */ - public void setJdbcProperty(final String key, final String value) { - jdbcProperties.setProperty(key, value); - } - - /** - * {@inheritDoc}. - */ - @Override - public String toString() { - return "DAOParameters [pluginClass=" + pluginClass + ", persistenceUnit=" + persistenceUnit - + ", jdbcProperties=" + jdbcProperties + "]"; - } -} diff --git a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/dao/converters/CDataConditioner.java b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/dao/converters/CDataConditioner.java deleted file mode 100644 index 460714683..000000000 --- a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/dao/converters/CDataConditioner.java +++ /dev/null @@ -1,83 +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.dao.converters; - -import javax.persistence.AttributeConverter; -import javax.persistence.Converter; -import javax.xml.bind.annotation.adapters.XmlAdapter; - -/** - * The Class CDATAConditioner converts a CDATA String to and from database format by removing spaces at the ends of - * lines and platform-specific new line endings. - * - * @author John Keeney (John.Keeney@ericsson.com) - */ -@Converter -public class CDataConditioner extends XmlAdapter<String, String> implements AttributeConverter<String, String> { - - private static final String NL = "\n"; - - /** - * {@inheritDoc}. - */ - @Override - public String convertToDatabaseColumn(final String raw) { - return clean(raw); - } - - /** - * {@inheritDoc}. - */ - @Override - public String convertToEntityAttribute(final String db) { - return clean(db); - } - - /** - * {@inheritDoc}. - */ - @Override - public String unmarshal(final String value) throws Exception { - return this.convertToEntityAttribute(value); - } - - /** - * {@inheritDoc}. - */ - @Override - public String marshal(final String value) throws Exception { - return this.convertToDatabaseColumn(value); - } - - /** - * Clean. - * - * @param in the in - * @return the string - */ - public static final String clean(final String in) { - if (in == null) { - return null; - } else { - return in.replaceAll("\\s+$", "").replaceAll("\\r?\\n", NL); - } - } -} diff --git a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/dao/converters/Uuid2String.java b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/dao/converters/Uuid2String.java deleted file mode 100644 index f5fffdb00..000000000 --- a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/dao/converters/Uuid2String.java +++ /dev/null @@ -1,73 +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.dao.converters; - -import java.util.UUID; -import javax.persistence.AttributeConverter; -import javax.persistence.Converter; -import javax.xml.bind.annotation.adapters.XmlAdapter; - -/** - * The Class UUIDConverter converts a UUID to and from database format. - * - * @author Liam Fallon (liam.fallon@ericsson.com) - */ -@Converter -public class Uuid2String extends XmlAdapter<String, UUID> implements AttributeConverter<UUID, String> { - - /** - * {@inheritDoc}. - */ - @Override - public String convertToDatabaseColumn(final UUID uuid) { - String returnString; - if (uuid == null) { - returnString = ""; - } else { - returnString = uuid.toString(); - } - return returnString; - } - - /** - * {@inheritDoc}. - */ - @Override - public UUID convertToEntityAttribute(final String uuidString) { - return UUID.fromString(uuidString); - } - - /** - * {@inheritDoc}. - */ - @Override - public UUID unmarshal(final String value) throws Exception { - return this.convertToEntityAttribute(value); - } - - /** - * {@inheritDoc}. - */ - @Override - public String marshal(final UUID value) throws Exception { - return this.convertToDatabaseColumn(value); - } -} diff --git a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/dao/converters/package-info.java b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/dao/converters/package-info.java deleted file mode 100644 index f1e9a3ba7..000000000 --- a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/dao/converters/package-info.java +++ /dev/null @@ -1,28 +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 converters used by APEX EclipseLink marshaling and unmarshaling of - * {@link org.onap.policy.apex.model.basicmodel.concepts.AxConcept} instances to and from files and databases. - * - * @author Liam Fallon (liam.fallon@ericsson.com) - */ - -package org.onap.policy.apex.model.basicmodel.dao.converters; diff --git a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/dao/impl/DefaultApexDao.java b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/dao/impl/DefaultApexDao.java deleted file mode 100644 index 738d15ed3..000000000 --- a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/dao/impl/DefaultApexDao.java +++ /dev/null @@ -1,497 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * Copyright (C) 2016-2018 Ericsson. All rights reserved. - * Modifications Copyright (C) 2019-2020 Nordix Foundation. - * 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.model.basicmodel.dao.impl; - -import java.util.Collection; -import java.util.Collections; -import java.util.List; -import javax.persistence.EntityManager; -import javax.persistence.EntityManagerFactory; -import javax.persistence.Persistence; -import org.onap.policy.apex.model.basicmodel.concepts.ApexException; -import org.onap.policy.apex.model.basicmodel.concepts.ApexRuntimeException; -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.AxReferenceKey; -import org.onap.policy.apex.model.basicmodel.dao.ApexDao; -import org.onap.policy.apex.model.basicmodel.dao.DaoParameters; -import org.slf4j.ext.XLogger; -import org.slf4j.ext.XLoggerFactory; - -/** - * The Class DefaultApexDao is an JPA implementation of the {@link ApexDao} class for Apex concepts ({@link AxConcept}). - * It uses the default JPA implementation in the javax {@link Persistence} class. - * - * - * @author Sergey Sachkov (sergey.sachkov@ericsson.com) - */ -public class DefaultApexDao implements ApexDao { - private static final XLogger LOGGER = XLoggerFactory.getXLogger(DefaultApexDao.class); - - private static final String COL_LOCALNAME = "local_name"; - private static final String COL_PARENT_VERSION = "parent_version"; - private static final String COL_PARENT_NAME = "parent_name"; - private static final String COL_VERSION = "key_version"; - private static final String COL_NAME = "key_name"; - - private static final String SELECT_C_FROM = "SELECT c FROM "; - private static final String AND_C_KEY_LOCAL_NAME = " AND c.key.localName=:" + COL_LOCALNAME; - private static final String AND_C_KEY_PARENT_KEY_VERSION = " AND c.key.parentKeyVersion=:" + COL_PARENT_VERSION; - private static final String C_WHERE_C_KEY_PARENT_KEY_NAME = " c WHERE c.key.parentKeyName=:" + COL_PARENT_NAME; - private static final String AND_C_KEY_VERSION = " AND c.key.version=:" + COL_VERSION; - private static final String C_WHERE_C_KEY_NAME = " c WHERE c.key.name=:" + COL_NAME; - private static final String DELETE_FROM = "DELETE FROM "; - - // Entity manager for JPA - private EntityManagerFactory emf = null; - - /** - * {@inheritDoc}. - */ - @Override - public void init(final DaoParameters daoParameters) throws ApexException { - if (daoParameters == null || daoParameters.getPersistenceUnit() == null) { - LOGGER.error("Apex persistence unit parameter not set"); - throw new ApexException("Apex persistence unit parameter not set"); - } - - LOGGER.debug("Creating Apex persistence unit \"" + daoParameters.getPersistenceUnit() + "\" . . ."); - try { - emf = Persistence.createEntityManagerFactory(daoParameters.getPersistenceUnit(), - daoParameters.getJdbcProperties()); - } catch (final Exception e) { - LOGGER.warn("Creation of Apex persistence unit \"" + daoParameters.getPersistenceUnit() + "\" failed", e); - throw new ApexException( - "Creation of Apex persistence unit \"" + daoParameters.getPersistenceUnit() + "\" failed", e); - } - LOGGER.debug("Created Apex persistence unit \"" + daoParameters.getPersistenceUnit() + "\""); - } - - /** - * Gets the entity manager for this DAO. - * - * @return the entity manager - */ - protected final synchronized EntityManager getEntityManager() { - if (emf == null) { - LOGGER.warn("Apex DAO has not been initialized"); - throw new ApexRuntimeException("Apex DAO has not been initialized"); - } - - return emf.createEntityManager(); - } - - /** - * {@inheritDoc}. - */ - @Override - public final void close() { - if (emf != null) { - emf.close(); - } - } - - /** - * {@inheritDoc}. - */ - @Override - public <T extends AxConcept> void create(final T obj) { - if (obj == null) { - return; - } - final EntityManager mg = getEntityManager(); - try { - mg.getTransaction().begin(); - mg.merge(obj); - mg.getTransaction().commit(); - } finally { - mg.close(); - } - } - - /** - * {@inheritDoc}. - */ - @Override - public <T extends AxConcept> void delete(final T obj) { - if (obj == null) { - return; - } - final EntityManager mg = getEntityManager(); - try { - mg.getTransaction().begin(); - mg.remove(mg.contains(obj) ? obj : mg.merge(obj)); - mg.getTransaction().commit(); - } finally { - mg.close(); - } - } - - /** - * {@inheritDoc}. - */ - @Override - public <T extends AxConcept> void delete(final Class<T> someClass, final AxArtifactKey key) { - if (key == null) { - return; - } - final EntityManager mg = getEntityManager(); - try { - mg.getTransaction().begin(); - mg.createQuery(DELETE_FROM + someClass.getSimpleName() + C_WHERE_C_KEY_NAME + AND_C_KEY_VERSION, someClass) - .setParameter(COL_NAME, key.getName()) - .setParameter(COL_VERSION, key.getVersion()) - .executeUpdate(); - mg.getTransaction().commit(); - } finally { - mg.close(); - } - } - - /** - * {@inheritDoc}. - */ - @Override - public <T extends AxConcept> void delete(final Class<T> someClass, final AxReferenceKey key) { - if (key == null) { - return; - } - final EntityManager mg = getEntityManager(); - try { - mg.getTransaction().begin(); - mg.createQuery(DELETE_FROM + someClass.getSimpleName() + C_WHERE_C_KEY_PARENT_KEY_NAME - + AND_C_KEY_PARENT_KEY_VERSION - + AND_C_KEY_LOCAL_NAME, someClass) - .setParameter(COL_PARENT_NAME, key.getParentKeyName()) - .setParameter(COL_PARENT_VERSION, key.getParentKeyVersion()) - .setParameter(COL_LOCALNAME, key.getLocalName()) - .executeUpdate(); - mg.getTransaction().commit(); - } finally { - mg.close(); - } - } - - /** - * {@inheritDoc}. - */ - @Override - public <T extends AxConcept> void createCollection(final Collection<T> objs) { - if (objs == null || objs.isEmpty()) { - return; - } - final EntityManager mg = getEntityManager(); - try { - mg.getTransaction().begin(); - for (final T t : objs) { - mg.merge(t); - } - mg.getTransaction().commit(); - } finally { - mg.close(); - } - } - - /** - * {@inheritDoc}. - */ - @Override - public <T extends AxConcept> void deleteCollection(final Collection<T> objs) { - if (objs == null || objs.isEmpty()) { - return; - } - final EntityManager mg = getEntityManager(); - try { - mg.getTransaction().begin(); - for (final T t : objs) { - mg.remove(mg.contains(t) ? t : mg.merge(t)); - } - mg.getTransaction().commit(); - } finally { - mg.close(); - } - } - - /** - * {@inheritDoc}. - */ - @Override - public <T extends AxConcept> int deleteByArtifactKey(final Class<T> someClass, - final Collection<AxArtifactKey> keys) { - if (keys == null || keys.isEmpty()) { - return 0; - } - int deletedCount = 0; - final EntityManager mg = getEntityManager(); - try { - mg.getTransaction().begin(); - for (final AxArtifactKey key : keys) { - deletedCount += mg.createQuery(DELETE_FROM + someClass.getSimpleName() + C_WHERE_C_KEY_NAME - + AND_C_KEY_VERSION, someClass) - .setParameter(COL_NAME, key.getName()) - .setParameter(COL_VERSION, key.getVersion()) - .executeUpdate(); - } - mg.getTransaction().commit(); - } finally { - mg.close(); - } - return deletedCount; - } - - /** - * {@inheritDoc}. - */ - @Override - public <T extends AxConcept> int deleteByReferenceKey(final Class<T> someClass, - final Collection<AxReferenceKey> keys) { - if (keys == null || keys.isEmpty()) { - return 0; - } - int deletedCount = 0; - final EntityManager mg = getEntityManager(); - try { - mg.getTransaction().begin(); - for (final AxReferenceKey key : keys) { - deletedCount += - mg.createQuery( - DELETE_FROM + someClass.getSimpleName() + C_WHERE_C_KEY_PARENT_KEY_NAME - + AND_C_KEY_PARENT_KEY_VERSION + AND_C_KEY_LOCAL_NAME, someClass) - .setParameter(COL_PARENT_NAME, key.getParentKeyName()) - .setParameter(COL_PARENT_VERSION, key.getParentKeyVersion()) - .setParameter(COL_LOCALNAME, key.getLocalName()) - .executeUpdate(); - } - mg.getTransaction().commit(); - } finally { - mg.close(); - } - return deletedCount; - } - - /** - * {@inheritDoc}. - */ - @Override - public <T extends AxConcept> void deleteAll(final Class<T> someClass) { - final EntityManager mg = getEntityManager(); - try { - mg.getTransaction().begin(); - mg.createQuery(DELETE_FROM + someClass.getSimpleName() + " c ", someClass).executeUpdate(); - mg.getTransaction().commit(); - } finally { - mg.close(); - } - } - - /** - * {@inheritDoc}. - */ - @Override - public <T extends AxConcept> T get(final Class<T> someClass, final AxArtifactKey key) { - if (someClass == null) { - return null; - } - final EntityManager mg = getEntityManager(); - try { - final T t = mg.find(someClass, key); - if (t != null) { - // This clone is created to force the JPA DAO to recurse down through the object - try { - final T clonedT = someClass.getDeclaredConstructor().newInstance(); - t.copyTo(clonedT); - return clonedT; - } catch (final Exception e) { - LOGGER.warn("Could not clone object of class \"" + someClass.getName() + "\"", e); - return null; - } - } else { - return null; - } - } finally { - mg.close(); - } - } - - /** - * {@inheritDoc}. - */ - @Override - public <T extends AxConcept> T get(final Class<T> someClass, final AxReferenceKey key) { - if (someClass == null) { - return null; - } - final EntityManager mg = getEntityManager(); - try { - final T t = mg.find(someClass, key); - if (t != null) { - try { - final T clonedT = someClass.getDeclaredConstructor().newInstance(); - t.copyTo(clonedT); - return clonedT; - } catch (final Exception e) { - LOGGER.warn("Could not clone object of class \"" + someClass.getName() + "\"", e); - return null; - } - } else { - return null; - } - } finally { - mg.close(); - } - } - - /** - * {@inheritDoc}. - */ - @Override - public <T extends AxConcept> List<T> getAll(final Class<T> someClass) { - if (someClass == null) { - return Collections.emptyList(); - } - final EntityManager mg = getEntityManager(); - try { - return mg.createQuery(SELECT_C_FROM + someClass.getSimpleName() + " c", someClass).getResultList(); - } finally { - mg.close(); - } - } - - /** - * {@inheritDoc}. - */ - @Override - public <T extends AxConcept> List<T> getAll(final Class<T> someClass, final AxArtifactKey parentKey) { - if (someClass == null) { - return Collections.emptyList(); - } - final EntityManager mg = getEntityManager(); - try { - return mg - .createQuery( - SELECT_C_FROM + someClass.getSimpleName() + C_WHERE_C_KEY_PARENT_KEY_NAME - + AND_C_KEY_PARENT_KEY_VERSION, someClass) - .setParameter(COL_PARENT_NAME, parentKey.getName()) - .setParameter(COL_PARENT_VERSION, parentKey.getVersion()) - .getResultList(); - } finally { - mg.close(); - } - } - - /** - * {@inheritDoc}. - */ - @Override - public <T extends AxConcept> T getArtifact(final Class<T> someClass, final AxArtifactKey key) { - if (someClass == null || key == null) { - return null; - } - final EntityManager mg = getEntityManager(); - List<T> ret; - try { - ret = mg.createQuery(SELECT_C_FROM + someClass.getSimpleName() + C_WHERE_C_KEY_NAME - + AND_C_KEY_VERSION, someClass) - .setParameter(COL_NAME, key.getName()) - .setParameter(COL_VERSION, key.getVersion()) - .getResultList(); - } finally { - mg.close(); - } - if (ret == null || ret.isEmpty()) { - return null; - } - if (ret.size() > 1) { - throw new IllegalArgumentException("More than one result was returned for search for " + someClass - + " with key " + key.getId() + ": " + ret); - } - return ret.get(0); - } - - /** - * {@inheritDoc}. - */ - @Override - public <T extends AxConcept> T getArtifact(final Class<T> someClass, final AxReferenceKey key) { - if (someClass == null || key == null) { - return null; - } - final EntityManager mg = getEntityManager(); - List<T> ret; - try { - ret = mg.createQuery(SELECT_C_FROM + someClass.getSimpleName() + C_WHERE_C_KEY_PARENT_KEY_NAME - + AND_C_KEY_PARENT_KEY_VERSION + AND_C_KEY_LOCAL_NAME, someClass) - .setParameter(COL_PARENT_NAME, key.getParentKeyName()) - .setParameter(COL_PARENT_VERSION, key.getParentKeyVersion()) - .setParameter(COL_LOCALNAME, key.getLocalName()) - .getResultList(); - } finally { - mg.close(); - } - if (ret == null || ret.isEmpty()) { - return null; - } - if (ret.size() > 1) { - throw new IllegalArgumentException("More than one result was returned for search for " + someClass - + " with key " + key.getId() + ": " + ret); - } - return ret.get(0); - } - - /** - * {@inheritDoc}. - */ - @Override - public <T extends AxConcept> T update(final T obj) { - final EntityManager mg = getEntityManager(); - T ret; - try { - mg.getTransaction().begin(); - ret = mg.merge(obj); - mg.flush(); - mg.getTransaction().commit(); - } finally { - mg.close(); - } - return ret; - } - - /** - * {@inheritDoc}. - */ - @Override - public <T extends AxConcept> long size(final Class<T> someClass) { - if (someClass == null) { - return 0; - } - final EntityManager mg = getEntityManager(); - long size = 0; - try { - size = mg.createQuery("SELECT COUNT(c) FROM " + someClass.getSimpleName() + " c", Long.class) - .getSingleResult(); - } finally { - mg.close(); - } - return size; - } -} diff --git a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/dao/impl/package-info.java b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/dao/impl/package-info.java deleted file mode 100644 index 5d585c247..000000000 --- a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/dao/impl/package-info.java +++ /dev/null @@ -1,27 +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 a default DAO implementation for APEX {@link org.onap.policy.apex.model.basicmodel.concepts.AxConcept} - * classes that uses javax persistence. - * - * @author Liam Fallon (liam.fallon@ericsson.com) - */ -package org.onap.policy.apex.model.basicmodel.dao.impl; diff --git a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/dao/package-info.java b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/dao/package-info.java deleted file mode 100644 index 505e4023a..000000000 --- a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/dao/package-info.java +++ /dev/null @@ -1,29 +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========================================================= - */ - -/** - * Defines and implements the Data Access Object (DAO) that allows Apex - * {@link org.onap.policy.apex.model.basicmodel.concepts.AxConcept} concepts to be read from and written to databases - * over JDBC. - * - * @author Liam Fallon (liam.fallon@ericsson.com) - */ - -package org.onap.policy.apex.model.basicmodel.dao; 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 index 000000000..cb67590f7 --- /dev/null +++ b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelCustomGsonMapAdapter.java @@ -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 index 000000000..d731c8689 --- /dev/null +++ b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelCustomGsonRefereceKeyAdapter.java @@ -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; + } + } +} diff --git a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelFileWriter.java b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelFileWriter.java index 908ad31aa..54b5651cc 100644 --- a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelFileWriter.java +++ b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelFileWriter.java @@ -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,8 +66,7 @@ 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); @@ -94,24 +74,6 @@ public class ApexModelFileWriter<M extends AxModel> { } /** - * 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. * * @param model The model to write diff --git a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelReader.java b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelReader.java index 7e136f6b3..a9bd2fe60 100644 --- a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelReader.java +++ b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelReader.java @@ -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"); @@ -22,55 +22,47 @@ 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"); - } - } - } diff --git a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelSaver.java b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelSaver.java index dea32df49..79d69bdd5 100644 --- a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelSaver.java +++ b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelSaver.java @@ -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"); @@ -64,21 +64,6 @@ public class ApexModelSaver<M extends AxModel> { } /** - * 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>} * * @throws ApexException on errors writing the Apex model diff --git a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelStringWriter.java b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelStringWriter.java index de6a72ffd..a9df23afc 100644 --- a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelStringWriter.java +++ b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelStringWriter.java @@ -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; - } } diff --git a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelWriter.java b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelWriter.java index 9e43f76bd..349622697 100644 --- a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelWriter.java +++ b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelWriter.java @@ -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. @@ -21,129 +21,67 @@ 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 index d5f34785b..000000000 --- a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/ApexSchemaGenerator.java +++ /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 index cfc385d01..000000000 --- a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/KeyInfoMarshalFilter.java +++ /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; - } -} diff --git a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/package-info.java b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/package-info.java index 081cff540..3d6dab3b2 100644 --- a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/package-info.java +++ b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/handling/package-info.java @@ -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. @@ -17,20 +18,4 @@ * 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; diff --git a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/package-info.java b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/package-info.java index e540646d9..8ad405e25 100644 --- a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/package-info.java +++ b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/package-info.java @@ -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) */ diff --git a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/test/TestApexModel.java b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/test/TestApexModel.java index 36ce4e438..9dde47d05 100644 --- a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/test/TestApexModel.java +++ b/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/test/TestApexModel.java @@ -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. @@ -27,8 +27,6 @@ import java.io.File; import org.onap.policy.apex.model.basicmodel.concepts.ApexException; import org.onap.policy.apex.model.basicmodel.concepts.AxModel; import org.onap.policy.apex.model.basicmodel.concepts.AxValidationResult; -import org.onap.policy.apex.model.basicmodel.dao.ApexDaoFactory; -import org.onap.policy.apex.model.basicmodel.dao.DaoParameters; import org.onap.policy.apex.model.basicmodel.handling.ApexModelFileWriter; import org.onap.policy.apex.model.basicmodel.handling.ApexModelReader; import org.onap.policy.apex.model.basicmodel.handling.ApexModelWriter; @@ -46,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); @@ -79,55 +77,6 @@ public class TestApexModel<M extends AxModel> { } /** - * 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. * * @throws ApexException on write/read errors @@ -140,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); @@ -161,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); @@ -174,29 +122,6 @@ public class TestApexModel<M extends AxModel> { } /** - * Test write and read of an Apex model to database using JPA. - * - * @param daoParameters the DAO parameters to use for JPA/JDBC - * @throws ApexException thrown on errors writing or reading the model to database - */ - public final void testApexModelWriteReadJpa(final DaoParameters daoParameters) throws ApexException { - LOGGER.debug("running testApexModelWriteReadJPA . . ."); - - final var model = modelCreator.getModel(); - - final var apexDao = new ApexDaoFactory().createApexDao(daoParameters); - apexDao.init(daoParameters); - - apexDao.create(model); - final var dbJpaModel = apexDao.get(rootModelClass, model.getKey()); - apexDao.close(); - - checkModelEquality(model, dbJpaModel, "test model does not equal model written and read using generic JPA"); - - LOGGER.debug("ran testApexModelWriteReadJPA"); - } - - /** * Test that an Apex model is valid. * * @return the result of the validation 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 index 8515f5724..000000000 --- a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/xml/AxReferenceKeyAdapter.java +++ /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 index 290209d89..000000000 --- a/model/basic-model/src/main/java/org/onap/policy/apex/model/basicmodel/xml/package-info.java +++ /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 index 75ecdc323..000000000 --- a/model/basic-model/src/main/resources/xml/example.xsd +++ /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> - - diff --git a/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/concepts/AxKeyInfoTest.java b/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/concepts/AxKeyInfoTest.java index d066d674c..0c7edee28 100644 --- a/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/concepts/AxKeyInfoTest.java +++ b/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/concepts/AxKeyInfoTest.java @@ -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. @@ -65,10 +65,11 @@ public class AxKeyInfoTest { assertEquals(testKeyInfo, testKeyInfo); // NOSONAR assertEquals(testKeyInfo, clonedReferenceKey); assertNotNull(testKeyInfo); - assertNotEquals(testKeyInfo, (Object) new AxArtifactKey()); + Object differentKeyType = new AxArtifactKey(); + assertNotEquals(testKeyInfo, differentKeyType); assertNotEquals(testKeyInfo, new AxKeyInfo(new AxArtifactKey())); assertNotEquals(testKeyInfo, new AxKeyInfo(key, UUID.randomUUID(), "Some Description")); - assertNotEquals(testKeyInfo, new AxKeyInfo(key, uuid, "Some Description")); + assertEquals(testKeyInfo, new AxKeyInfo(key, uuid, "Some Other Description")); assertEquals(testKeyInfo, new AxKeyInfo(key, uuid, "Key Description")); assertEquals(0, testKeyInfo.compareTo(testKeyInfo)); diff --git a/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/concepts/DummyEntity.java b/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/concepts/DummyEntity.java index 2407dab38..2b16e89ed 100644 --- a/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/concepts/DummyEntity.java +++ b/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/concepts/DummyEntity.java @@ -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. @@ -23,24 +23,11 @@ package org.onap.policy.apex.model.basicmodel.concepts; import java.util.Arrays; import java.util.List; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.Table; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; -import org.onap.policy.apex.model.basicmodel.xml.AxReferenceKeyAdapter; - -@Entity -@Table(name = "TestEntity") public class DummyEntity extends AxConcept { private static final long serialVersionUID = -2962570563281067894L; - @EmbeddedId() - @XmlElement(name = "key", required = true) - @XmlJavaTypeAdapter(AxReferenceKeyAdapter.class) protected AxReferenceKey key; - private double doubleValue; public DummyEntity() { diff --git a/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/dao/DaoMiscTest.java b/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/dao/DaoMiscTest.java deleted file mode 100644 index 6f9bef83d..000000000 --- a/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/dao/DaoMiscTest.java +++ /dev/null @@ -1,77 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * Copyright (C) 2016-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========================================================= - */ - -package org.onap.policy.apex.model.basicmodel.dao; - -import static org.assertj.core.api.Assertions.assertThatThrownBy; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNull; - -import java.util.Properties; -import org.junit.Test; -import org.onap.policy.apex.model.basicmodel.dao.converters.CDataConditioner; -import org.onap.policy.apex.model.basicmodel.dao.converters.Uuid2String; - -public class DaoMiscTest { - - @Test - public void testUuid2StringMopUp() { - final Uuid2String uuid2String = new Uuid2String(); - assertEquals("", uuid2String.convertToDatabaseColumn(null)); - } - - @Test - public void testCDataConditionerMopUp() { - assertNull(CDataConditioner.clean(null)); - } - - @Test - public void testDaoFactory() { - final DaoParameters daoParameters = new DaoParameters(); - - daoParameters.setPluginClass("somewhere.over.the.rainbow"); - assertThatThrownBy(() -> new ApexDaoFactory().createApexDao(daoParameters)) - .hasMessage("Apex DAO class not found for DAO plugin \"somewhere.over.the.rainbow\""); - daoParameters.setPluginClass("java.lang.String"); - assertThatThrownBy(() -> new ApexDaoFactory().createApexDao(daoParameters)) - .hasMessage("Specified Apex DAO plugin class \"java.lang.String\" " - + "does not implement the ApexDao interface"); - } - - @Test - public void testDaoParameters() { - final DaoParameters pars = new DaoParameters(); - pars.setJdbcProperties(new Properties()); - assertEquals(0, pars.getJdbcProperties().size()); - - pars.setJdbcProperty("name", "Dorothy"); - assertEquals("Dorothy", pars.getJdbcProperty("name")); - - pars.setPersistenceUnit("Kansas"); - assertEquals("Kansas", pars.getPersistenceUnit()); - - pars.setPluginClass("somewhere.over.the.rainbow"); - assertEquals("somewhere.over.the.rainbow", pars.getPluginClass()); - - assertEquals("DAOParameters [pluginClass=somewhere.over.the.rainbow, " - + "persistenceUnit=Kansas, jdbcProperties={name=Dorothy}]", pars.toString()); - } -} diff --git a/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/dao/EntityTest.java b/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/dao/EntityTest.java deleted file mode 100644 index e584085c3..000000000 --- a/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/dao/EntityTest.java +++ /dev/null @@ -1,262 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * Copyright (C) 2016-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========================================================= - */ - -package org.onap.policy.apex.model.basicmodel.dao; - -import static org.assertj.core.api.Assertions.assertThatThrownBy; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertNull; - -import java.util.ArrayList; -import java.util.List; -import java.util.Set; -import java.util.TreeSet; -import java.util.UUID; -import org.junit.Test; -import org.onap.policy.apex.model.basicmodel.concepts.ApexException; -import org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey; -import org.onap.policy.apex.model.basicmodel.concepts.AxKeyInfo; -import org.onap.policy.apex.model.basicmodel.concepts.AxReferenceKey; -import org.onap.policy.apex.model.basicmodel.concepts.DummyEntity; - -/** - * JUnit test class. - */ -public class EntityTest { - private ApexDao apexDao; - - @Test - public void testEntityTestSanity() throws ApexException { - final DaoParameters daoParameters = new DaoParameters(); - - apexDao = new ApexDaoFactory().createApexDao(daoParameters); - - assertThatThrownBy(() -> apexDao.init(null)) - .hasMessage("Apex persistence unit parameter not set"); - assertThatThrownBy(() -> apexDao.init(daoParameters)) - .hasMessage("Apex persistence unit parameter not set"); - daoParameters.setPluginClass("somewhere.over.the.rainbow"); - daoParameters.setPersistenceUnit("Dorothy"); - assertThatThrownBy(() -> apexDao.init(daoParameters)) - .hasMessage("Creation of Apex persistence unit \"Dorothy\" failed"); - assertThatThrownBy(() -> apexDao.create(new AxArtifactKey())) - .hasMessage("Apex DAO has not been initialized"); - apexDao.close(); - } - - @Test - public void testEntityTestAllOpsJpa() throws ApexException { - final DaoParameters daoParameters = new DaoParameters(); - daoParameters.setPluginClass("org.onap.policy.apex.model.basicmodel.dao.impl.DefaultApexDao"); - daoParameters.setPersistenceUnit("DaoTest"); - - apexDao = new ApexDaoFactory().createApexDao(daoParameters); - apexDao.init(daoParameters); - - testAllOps(); - apexDao.close(); - } - - @Test - public void testEntityTestBadVals() throws ApexException { - final DaoParameters daoParameters = new DaoParameters(); - assertNotNull(daoParameters); - daoParameters.setPluginClass("org.onap.policy.apex.model.basicmodel.dao.impl.DefaultApexDao"); - assertEquals("org.onap.policy.apex.model.basicmodel.dao.impl.DefaultApexDao", daoParameters.getPluginClass()); - daoParameters.setPersistenceUnit("DaoTest"); - assertEquals("DaoTest", daoParameters.getPersistenceUnit()); - - apexDao = new ApexDaoFactory().createApexDao(daoParameters); - apexDao.init(daoParameters); - - final AxArtifactKey nullKey = null; - final AxReferenceKey nullRefKey = null; - final List<AxArtifactKey> nullKeyList = null; - final List<AxArtifactKey> emptyKeyList = new ArrayList<>(); - final List<AxReferenceKey> nullRKeyList = null; - final List<AxReferenceKey> emptyRKeyList = new ArrayList<>(); - - apexDao.create(nullKey); - apexDao.createCollection(nullKeyList); - apexDao.createCollection(emptyKeyList); - - apexDao.delete(nullKey); - apexDao.deleteCollection(nullKeyList); - apexDao.deleteCollection(emptyKeyList); - apexDao.delete(AxArtifactKey.class, nullKey); - apexDao.delete(AxReferenceKey.class, nullRefKey); - apexDao.deleteByArtifactKey(AxArtifactKey.class, nullKeyList); - apexDao.deleteByArtifactKey(AxArtifactKey.class, emptyKeyList); - apexDao.deleteByReferenceKey(AxReferenceKey.class, nullRKeyList); - apexDao.deleteByReferenceKey(AxReferenceKey.class, emptyRKeyList); - - apexDao.get(null, nullKey); - apexDao.get(null, nullRefKey); - apexDao.getAll(null); - apexDao.getAll(null, nullKey); - apexDao.getArtifact(null, nullKey); - apexDao.getArtifact(AxArtifactKey.class, nullKey); - apexDao.getArtifact(null, nullRefKey); - apexDao.getArtifact(AxReferenceKey.class, nullRefKey); - apexDao.size(null); - - apexDao.close(); - } - - private void testAllOps() { - final AxArtifactKey aKey0 = new AxArtifactKey("A-KEY0", "0.0.1"); - final AxArtifactKey aKey1 = new AxArtifactKey("A-KEY1", "0.0.1"); - final AxArtifactKey aKey2 = new AxArtifactKey("A-KEY2", "0.0.1"); - final AxKeyInfo keyInfo0 = new AxKeyInfo(aKey0, UUID.fromString("00000000-0000-0000-0000-000000000000"), - "key description 0"); - final AxKeyInfo keyInfo1 = new AxKeyInfo(aKey1, UUID.fromString("00000000-0000-0000-0000-000000000001"), - "key description 1"); - final AxKeyInfo keyInfo2 = new AxKeyInfo(aKey2, UUID.fromString("00000000-0000-0000-0000-000000000002"), - "key description 2"); - - apexDao.create(keyInfo0); - - final AxKeyInfo keyInfoBack0 = apexDao.get(AxKeyInfo.class, aKey0); - assertEquals(keyInfo0, keyInfoBack0); - - final AxKeyInfo keyInfoBackNull = apexDao.get(AxKeyInfo.class, AxArtifactKey.getNullKey()); - assertNull(keyInfoBackNull); - - final AxKeyInfo keyInfoBack1 = apexDao.getArtifact(AxKeyInfo.class, aKey0); - assertEquals(keyInfoBack0, keyInfoBack1); - - final AxKeyInfo keyInfoBack2 = apexDao.getArtifact(AxKeyInfo.class, new AxArtifactKey("A-KEY3", "0.0.1")); - assertNull(keyInfoBack2); - - final Set<AxKeyInfo> keyInfoSetIn = new TreeSet<AxKeyInfo>(); - keyInfoSetIn.add(keyInfo1); - keyInfoSetIn.add(keyInfo2); - - apexDao.createCollection(keyInfoSetIn); - - Set<AxKeyInfo> keyInfoSetOut = new TreeSet<AxKeyInfo>(apexDao.getAll(AxKeyInfo.class)); - - keyInfoSetIn.add(keyInfo0); - assertEquals(keyInfoSetIn, keyInfoSetOut); - - apexDao.delete(keyInfo1); - keyInfoSetIn.remove(keyInfo1); - keyInfoSetOut = new TreeSet<AxKeyInfo>(apexDao.getAll(AxKeyInfo.class)); - assertEquals(keyInfoSetIn, keyInfoSetOut); - - apexDao.deleteCollection(keyInfoSetIn); - keyInfoSetOut = new TreeSet<AxKeyInfo>(apexDao.getAll(AxKeyInfo.class)); - assertEquals(0, keyInfoSetOut.size()); - - keyInfoSetIn.add(keyInfo0); - keyInfoSetIn.add(keyInfo1); - keyInfoSetIn.add(keyInfo0); - apexDao.createCollection(keyInfoSetIn); - keyInfoSetOut = new TreeSet<AxKeyInfo>(apexDao.getAll(AxKeyInfo.class)); - assertEquals(keyInfoSetIn, keyInfoSetOut); - - apexDao.delete(AxKeyInfo.class, aKey0); - keyInfoSetOut = new TreeSet<AxKeyInfo>(apexDao.getAll(AxKeyInfo.class)); - assertEquals(2, keyInfoSetOut.size()); - assertEquals(2, apexDao.size(AxKeyInfo.class)); - - final Set<AxArtifactKey> keySetIn = new TreeSet<AxArtifactKey>(); - keySetIn.add(aKey1); - keySetIn.add(aKey2); - - final int deletedCount = apexDao.deleteByArtifactKey(AxKeyInfo.class, keySetIn); - assertEquals(2, deletedCount); - - keyInfoSetOut = new TreeSet<AxKeyInfo>(apexDao.getAll(AxKeyInfo.class)); - assertEquals(0, keyInfoSetOut.size()); - - keyInfoSetIn.add(keyInfo0); - keyInfoSetIn.add(keyInfo1); - keyInfoSetIn.add(keyInfo0); - apexDao.createCollection(keyInfoSetIn); - keyInfoSetOut = new TreeSet<AxKeyInfo>(apexDao.getAll(AxKeyInfo.class)); - assertEquals(keyInfoSetIn, keyInfoSetOut); - - apexDao.deleteAll(AxKeyInfo.class); - assertEquals(0, apexDao.size(AxKeyInfo.class)); - - final AxArtifactKey owner0Key = new AxArtifactKey("Owner0", "0.0.1"); - final AxArtifactKey owner1Key = new AxArtifactKey("Owner1", "0.0.1"); - final AxArtifactKey owner2Key = new AxArtifactKey("Owner2", "0.0.1"); - final AxArtifactKey owner3Key = new AxArtifactKey("Owner3", "0.0.1"); - final AxArtifactKey owner4Key = new AxArtifactKey("Owner4", "0.0.1"); - final AxArtifactKey owner5Key = new AxArtifactKey("Owner5", "0.0.1"); - - apexDao.create(new DummyEntity(new AxReferenceKey(owner0Key, "Entity0"), 100.0)); - apexDao.create(new DummyEntity(new AxReferenceKey(owner0Key, "Entity1"), 101.0)); - apexDao.create(new DummyEntity(new AxReferenceKey(owner0Key, "Entity2"), 102.0)); - apexDao.create(new DummyEntity(new AxReferenceKey(owner0Key, "Entity3"), 103.0)); - apexDao.create(new DummyEntity(new AxReferenceKey(owner0Key, "Entity4"), 104.0)); - apexDao.create(new DummyEntity(new AxReferenceKey(owner1Key, "Entity5"), 105.0)); - apexDao.create(new DummyEntity(new AxReferenceKey(owner1Key, "Entity6"), 106.0)); - apexDao.create(new DummyEntity(new AxReferenceKey(owner1Key, "Entity7"), 107.0)); - apexDao.create(new DummyEntity(new AxReferenceKey(owner2Key, "Entity8"), 108.0)); - apexDao.create(new DummyEntity(new AxReferenceKey(owner2Key, "Entity9"), 109.0)); - apexDao.create(new DummyEntity(new AxReferenceKey(owner3Key, "EntityA"), 110.0)); - apexDao.create(new DummyEntity(new AxReferenceKey(owner4Key, "EntityB"), 111.0)); - apexDao.create(new DummyEntity(new AxReferenceKey(owner5Key, "EntityC"), 112.0)); - apexDao.create(new DummyEntity(new AxReferenceKey(owner5Key, "EntityD"), 113.0)); - apexDao.create(new DummyEntity(new AxReferenceKey(owner5Key, "EntityE"), 114.0)); - apexDao.create(new DummyEntity(new AxReferenceKey(owner5Key, "EntityF"), 115.0)); - - TreeSet<DummyEntity> testEntitySetOut = new TreeSet<DummyEntity>(apexDao.getAll(DummyEntity.class)); - assertEquals(16, testEntitySetOut.size()); - - testEntitySetOut = new TreeSet<DummyEntity>(apexDao.getAll(DummyEntity.class, owner0Key)); - assertEquals(5, testEntitySetOut.size()); - - testEntitySetOut = new TreeSet<DummyEntity>(apexDao.getAll(DummyEntity.class, owner1Key)); - assertEquals(3, testEntitySetOut.size()); - - testEntitySetOut = new TreeSet<DummyEntity>(apexDao.getAll(DummyEntity.class, owner2Key)); - assertEquals(2, testEntitySetOut.size()); - - testEntitySetOut = new TreeSet<DummyEntity>(apexDao.getAll(DummyEntity.class, owner3Key)); - assertEquals(1, testEntitySetOut.size()); - - testEntitySetOut = new TreeSet<DummyEntity>(apexDao.getAll(DummyEntity.class, owner4Key)); - assertEquals(1, testEntitySetOut.size()); - - testEntitySetOut = new TreeSet<DummyEntity>(apexDao.getAll(DummyEntity.class, owner5Key)); - assertEquals(4, testEntitySetOut.size()); - - assertNotNull(apexDao.get(DummyEntity.class, new AxReferenceKey(owner0Key, "Entity0"))); - assertNotNull(apexDao.getArtifact(DummyEntity.class, new AxReferenceKey(owner0Key, "Entity0"))); - assertNull(apexDao.get(DummyEntity.class, new AxReferenceKey(owner0Key, "Entity1000"))); - assertNull(apexDao.getArtifact(DummyEntity.class, new AxReferenceKey(owner0Key, "Entity1000"))); - apexDao.delete(DummyEntity.class, new AxReferenceKey(owner0Key, "Entity0")); - - final Set<AxReferenceKey> rKeySetIn = new TreeSet<AxReferenceKey>(); - rKeySetIn.add(new AxReferenceKey(owner4Key, "EntityB")); - rKeySetIn.add(new AxReferenceKey(owner5Key, "EntityD")); - - final int deletedRCount = apexDao.deleteByReferenceKey(DummyEntity.class, rKeySetIn); - assertEquals(2, deletedRCount); - - apexDao.update(new DummyEntity(new AxReferenceKey(owner5Key, "EntityF"), 120.0)); - } -} diff --git a/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelFileWriterTest.java b/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelFileWriterTest.java index 331e57f47..0f8f956ab 100644 --- a/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelFileWriterTest.java +++ b/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelFileWriterTest.java @@ -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(); diff --git a/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelReaderTest.java b/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelReaderTest.java index d75f20253..1152771ea 100644 --- a/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelReaderTest.java +++ b/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelReaderTest.java @@ -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"); } } diff --git a/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelSaverTest.java b/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelSaverTest.java index ad897832e..c95106aa8 100644 --- a/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelSaverTest.java +++ b/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelSaverTest.java @@ -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); } } diff --git a/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelStringWriterTest.java b/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelStringWriterTest.java index 0b8d789ad..13e72d3e2 100644 --- a/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelStringWriterTest.java +++ b/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelStringWriterTest.java @@ -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()); } } diff --git a/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelWriterTest.java b/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelWriterTest.java index 147eb206a..063855976 100644 --- a/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelWriterTest.java +++ b/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/ApexModelWriterTest.java @@ -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"); @@ -23,65 +23,38 @@ 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 index 3385830e2..000000000 --- a/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/ApexSchemaGeneratorTest.java +++ /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); - } -} diff --git a/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/SupportApexBasicModelTest.java b/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/SupportApexBasicModelTest.java index 1c21b6c33..68f755886 100644 --- a/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/SupportApexBasicModelTest.java +++ b/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/SupportApexBasicModelTest.java @@ -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. @@ -28,10 +28,45 @@ import org.junit.Before; import org.junit.Test; import org.onap.policy.apex.model.basicmodel.concepts.AxModel; import org.onap.policy.apex.model.basicmodel.concepts.AxValidationResult; -import org.onap.policy.apex.model.basicmodel.dao.DaoParameters; import org.onap.policy.apex.model.basicmodel.test.TestApexModel; public class SupportApexBasicModelTest { + // As there are no real concepts in a basic model, this is as near to a valid model as we can get + private static final String VALID_MODEL_STRING = "\n" + "***warnings issued during validation of model***\n" + + "AxArtifactKey:(name=FloatKIKey,version=0.0.1):org.onap.policy.apex.model.basicmodel.concepts" + + ".AxModel:WARNING:key not found for key information entry\n" + + "AxArtifactKey:(name=IntegerKIKey,version=0.0.1):org.onap.policy.apex.model.basicmodel.concepts" + + ".AxModel:WARNING:key not found for key information entry\n" + "********************************"; + + private static final String WARNING_MODEL_STRING = "\n" + "***warnings issued during validation of model***\n" + + "AxArtifactKey:(name=FloatKIKey,version=0.0.1):org.onap.policy.apex.model.basicmodel.concepts" + + ".AxModel:WARNING:key not found for key information entry\n" + + "AxArtifactKey:(name=IntegerKIKey,version=0.0.1):org.onap.policy.apex.model.basicmodel.concepts" + + ".AxModel:WARNING:key not found for key information entry\n" + + "AxArtifactKey:(name=Unref0,version=0.0.1):org.onap.policy.apex.model.basicmodel.concepts" + + ".AxModel:WARNING:key not found for key information entry\n" + + "AxArtifactKey:(name=Unref1,version=0.0.1):org.onap.policy.apex.model.basicmodel.concepts" + + ".AxModel:WARNING:key not found for key information entry\n" + "********************************"; + + private static final String INVALID_MODEL_STRING = "\n" + "***validation of model failed***\n" + + "AxArtifactKey:(name=BasicModelKey,version=0.0.1):org.onap.policy.apex.model.basicmodel.concepts." + + "AxKeyInfo:WARNING:UUID is a zero UUID: 00000000-0000-0000-0000-000000000000\n" + + "AxArtifactKey:(name=KeyInfoMapKey,version=0.0.1):org.onap.policy.apex.model.basicmodel.concepts." + + "AxKeyInfo:OBSERVATION:description is blank\n" + + "AxArtifactKey:(name=KeyInfoMapKey,version=0.0.1):org.onap.policy.apex.model.basicmodel.concepts." + + "AxKeyInfo:WARNING:UUID is a zero UUID: 00000000-0000-0000-0000-000000000000\n" + + "AxArtifactKey:(name=KeyInfoMapKey,version=0.0.1):org.onap.policy.apex.model.basicmodel.concepts." + + "AxKeyInformation:INVALID:duplicate UUID found on keyInfoMap entry AxArtifactKey:" + + "(name=KeyInfoMapKey,version=0.0.1):00000000-0000-0000-0000-000000000000\n" + + "********************************"; + + private static final String INVALID_MODEL_MALSTRUCTURED_STRING = "\n" + "***validation of model failed***\n" + + "AxArtifactKey:(name=BasicModelKey,version=0.0.1):org.onap.policy.apex.model.basicmodel.concepts." + + "AxKeyInfo:WARNING:UUID is a zero UUID: 00000000-0000-0000-0000-000000000000\n" + + "AxArtifactKey:(name=BasicModelKey,version=0.0.1):org.onap.policy.apex.model.basicmodel.concepts." + + "AxModel:INVALID:key information not found for key " + + "AxArtifactKey:(name=KeyInfoMapKey,version=0.0.1)\n" + "********************************"; + TestApexModel<AxModel> testApexModel; /** @@ -75,57 +110,7 @@ public class SupportApexBasicModelTest { } @Test - public void testModelWriteReadXml() throws Exception { - testApexModel.testApexModelWriteReadXml(); - } - - @Test public void testModelWriteReadJson() throws Exception { testApexModel.testApexModelWriteReadJson(); } - - @Test - public void testModelWriteReadJpa() throws Exception { - final DaoParameters daoParameters = new DaoParameters(); - daoParameters.setPluginClass("org.onap.policy.apex.model.basicmodel.dao.impl.DefaultApexDao"); - daoParameters.setPersistenceUnit("DaoTest"); - - testApexModel.testApexModelWriteReadJpa(daoParameters); - } - - // As there are no real concepts in a basic model, this is as near to a valid model as we can get - private static final String VALID_MODEL_STRING = "\n" + "***warnings issued during validation of model***\n" - + "AxArtifactKey:(name=FloatKIKey,version=0.0.1):org.onap.policy.apex.model.basicmodel.concepts" - + ".AxModel:WARNING:key not found for key information entry\n" - + "AxArtifactKey:(name=IntegerKIKey,version=0.0.1):org.onap.policy.apex.model.basicmodel.concepts" - + ".AxModel:WARNING:key not found for key information entry\n" + "********************************"; - - private static final String WARNING_MODEL_STRING = "\n" + "***warnings issued during validation of model***\n" - + "AxArtifactKey:(name=FloatKIKey,version=0.0.1):org.onap.policy.apex.model.basicmodel.concepts" - + ".AxModel:WARNING:key not found for key information entry\n" - + "AxArtifactKey:(name=IntegerKIKey,version=0.0.1):org.onap.policy.apex.model.basicmodel.concepts" - + ".AxModel:WARNING:key not found for key information entry\n" - + "AxArtifactKey:(name=Unref0,version=0.0.1):org.onap.policy.apex.model.basicmodel.concepts" - + ".AxModel:WARNING:key not found for key information entry\n" - + "AxArtifactKey:(name=Unref1,version=0.0.1):org.onap.policy.apex.model.basicmodel.concepts" - + ".AxModel:WARNING:key not found for key information entry\n" + "********************************"; - - private static final String INVALID_MODEL_STRING = "\n" + "***validation of model failed***\n" - + "AxArtifactKey:(name=BasicModelKey,version=0.0.1):org.onap.policy.apex.model.basicmodel.concepts." - + "AxKeyInfo:WARNING:UUID is a zero UUID: 00000000-0000-0000-0000-000000000000\n" - + "AxArtifactKey:(name=KeyInfoMapKey,version=0.0.1):org.onap.policy.apex.model.basicmodel.concepts." - + "AxKeyInfo:OBSERVATION:description is blank\n" - + "AxArtifactKey:(name=KeyInfoMapKey,version=0.0.1):org.onap.policy.apex.model.basicmodel.concepts." - + "AxKeyInfo:WARNING:UUID is a zero UUID: 00000000-0000-0000-0000-000000000000\n" - + "AxArtifactKey:(name=KeyInfoMapKey,version=0.0.1):org.onap.policy.apex.model.basicmodel.concepts." - + "AxKeyInformation:INVALID:duplicate UUID found on keyInfoMap entry AxArtifactKey:" - + "(name=KeyInfoMapKey,version=0.0.1):00000000-0000-0000-0000-000000000000\n" - + "********************************"; - - private static final String INVALID_MODEL_MALSTRUCTURED_STRING = "\n" + "***validation of model failed***\n" - + "AxArtifactKey:(name=BasicModelKey,version=0.0.1):org.onap.policy.apex.model.basicmodel.concepts." - + "AxKeyInfo:WARNING:UUID is a zero UUID: 00000000-0000-0000-0000-000000000000\n" - + "AxArtifactKey:(name=BasicModelKey,version=0.0.1):org.onap.policy.apex.model.basicmodel.concepts." - + "AxModel:INVALID:key information not found for key " - + "AxArtifactKey:(name=KeyInfoMapKey,version=0.0.1)\n" + "********************************"; } diff --git a/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/SupportBasicModelTest.java b/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/SupportBasicModelTest.java index 5fc678ac0..d55a9da29 100644 --- a/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/SupportBasicModelTest.java +++ b/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/SupportBasicModelTest.java @@ -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"); } } diff --git a/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/SupportConceptGetterTest.java b/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/SupportConceptGetterTest.java index 006c583ec..1783fc00f 100644 --- a/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/SupportConceptGetterTest.java +++ b/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/handling/SupportConceptGetterTest.java @@ -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 index 12a67c803..000000000 --- a/model/basic-model/src/test/java/org/onap/policy/apex/model/basicmodel/xml/AxReferenceKeyAdapterTest.java +++ /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()); - } -} diff --git a/model/basic-model/src/test/resources/META-INF/persistence.xml b/model/basic-model/src/test/resources/META-INF/persistence.xml deleted file mode 100644 index 01a8989bb..000000000 --- a/model/basic-model/src/test/resources/META-INF/persistence.xml +++ /dev/null @@ -1,43 +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========================================================= ---> - -<persistence xmlns="http://java.sun.com/xml/ns/persistence" version="2.0"> - <persistence-unit name="DaoTest" transaction-type="RESOURCE_LOCAL"> - <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider> - - <class>org.onap.policy.apex.model.basicmodel.dao.converters.CDataConditioner</class> - <class>org.onap.policy.apex.model.basicmodel.dao.converters.Uuid2String</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxReferenceKey</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxKeyInfo</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxKeyInformation</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxModel</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.DummyEntity</class> - - <properties> - <property name="javax.persistence.jdbc.url" value="jdbc:h2:mem:testdb" /> - <property name="javax.persistence.jdbc.driver" value="org.h2.Driver" /> - <property name="eclipselink.ddl-generation" value="drop-and-create-tables" /> - <property name="eclipselink.ddl-generation.output-mode" value="database"/> - <property name="eclipselink.logging.level" value="INFO" /> - </properties> - </persistence-unit> -</persistence> diff --git a/model/context-model/pom.xml b/model/context-model/pom.xml index f38067cfa..f20808186 100644 --- a/model/context-model/pom.xml +++ b/model/context-model/pom.xml @@ -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. @@ -36,30 +37,4 @@ <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> diff --git a/model/context-model/src/main/java/org/onap/policy/apex/model/contextmodel/concepts/AxContextAlbum.java b/model/context-model/src/main/java/org/onap/policy/apex/model/contextmodel/concepts/AxContextAlbum.java index b3880bd8c..db64f8847 100644 --- a/model/context-model/src/main/java/org/onap/policy/apex/model/contextmodel/concepts/AxContextAlbum.java +++ b/model/context-model/src/main/java/org/onap/policy/apex/model/contextmodel/concepts/AxContextAlbum.java @@ -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"); @@ -23,17 +23,6 @@ package org.onap.policy.apex.model.contextmodel.concepts; import java.util.List; -import javax.persistence.AttributeOverride; -import javax.persistence.Column; -import javax.persistence.Embedded; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.Table; -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; @@ -67,18 +56,11 @@ import org.onap.policy.common.utils.validation.Assertions; * <p>Validation checks that the album key and the context schema key are not null and that the scope field is not * undefined and matches the regular expression SCOPE_REGEXP. */ -@Entity -@Table(name = "AxContextAlbum") @Getter @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"; @@ -92,27 +74,13 @@ 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"; - @EmbeddedId - @XmlElement(name = "key", required = true) private AxArtifactKey key; - - @Column(name = SCOPE_STRING) - @XmlElement(name = SCOPE_STRING, required = true) private String scope; - @Column(name = "isWritable") - @XmlElement(name = "isWritable", required = true) @Setter private boolean isWritable; - // @formatter:off - @Embedded - @AttributeOverride(name = "name", column = @Column(name = "itemSchemaName")) - @AttributeOverride(name = "version", column = @Column(name = "itemSchemaVersion")) - @Column(name = "itemSchema") - @XmlElement(name = "itemSchema", required = true) private AxArtifactKey itemSchema; - // @formatter:on /** * The default constructor creates a context album with a null artifact key. The scope of the context album is set diff --git a/model/context-model/src/main/java/org/onap/policy/apex/model/contextmodel/concepts/AxContextAlbums.java b/model/context-model/src/main/java/org/onap/policy/apex/model/contextmodel/concepts/AxContextAlbums.java index aa5a89a4d..54e3ce44b 100644 --- a/model/context-model/src/main/java/org/onap/policy/apex/model/contextmodel/concepts/AxContextAlbums.java +++ b/model/context-model/src/main/java/org/onap/policy/apex/model/contextmodel/concepts/AxContextAlbums.java @@ -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"); @@ -28,18 +28,6 @@ import java.util.Map.Entry; import java.util.NavigableMap; import java.util.Set; import java.util.TreeMap; -import javax.persistence.CascadeType; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.JoinColumn; -import javax.persistence.JoinTable; -import javax.persistence.OneToMany; -import javax.persistence.Table; -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; @@ -65,32 +53,16 @@ import org.onap.policy.common.utils.validation.Assertions; * map key matches the key in the map value for all album entries. Each context album entry is then validated * individually. */ -@Entity -@Table(name = "AxContextAlbums") - @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; - @EmbeddedId - @XmlElement(name = "key", required = true) private AxArtifactKey key; - // @formatter:off - @OneToMany(cascade = CascadeType.ALL) - @JoinTable(joinColumns = {@JoinColumn(name = "contextName", referencedColumnName = "name"), - @JoinColumn(name = "contextVersion", referencedColumnName = "version")}) - @XmlElement(name = "albums", required = true) @Getter(AccessLevel.NONE) private Map<AxArtifactKey, AxContextAlbum> albums; - // @formatter:on /** * The Default Constructor creates a {@link AxContextAlbums} object with a null artifact key and creates an empty @@ -136,25 +108,6 @@ public final class AxContextAlbums extends AxConcept implements AxConceptGetter< } /** - * 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}. */ @Override @@ -169,6 +122,14 @@ public final class AxContextAlbums extends AxConcept implements AxConceptGetter< } /** + * {@inheritDoc}. + */ + @Override + public void buildReferences() { + albums.values().stream().forEach(album -> album.buildReferences()); + } + + /** * Sets the key of the context album container. * * @param key the context album container key diff --git a/model/context-model/src/main/java/org/onap/policy/apex/model/contextmodel/concepts/AxContextModel.java b/model/context-model/src/main/java/org/onap/policy/apex/model/contextmodel/concepts/AxContextModel.java index 9796fa625..1effe8079 100644 --- a/model/context-model/src/main/java/org/onap/policy/apex/model/contextmodel/concepts/AxContextModel.java +++ b/model/context-model/src/main/java/org/onap/policy/apex/model/contextmodel/concepts/AxContextModel.java @@ -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"); @@ -23,16 +23,6 @@ package org.onap.policy.apex.model.contextmodel.concepts; import java.util.List; -import javax.persistence.CascadeType; -import javax.persistence.Entity; -import javax.persistence.JoinColumn; -import javax.persistence.OneToOne; -import javax.persistence.Table; -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; @@ -54,34 +44,14 @@ import org.onap.policy.common.utils.validation.Assertions; * <p>Validation runs {@link AxModel} validation on the model. In addition, the {@link AxContextSchemas} and * {@link AxContextAlbums} validation is run on the context schemas and albums in the model. */ -@Entity -@Table(name = "AxContextModel") - @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; - // @formatter:off - @OneToOne(cascade = CascadeType.ALL) - @JoinColumn(name = "schemasName", referencedColumnName = "name") - @JoinColumn(name = "schemasVersion", referencedColumnName = "version") - @XmlElement(name = "schemas", required = true) private AxContextSchemas schemas; - - @OneToOne(cascade = CascadeType.ALL) - @JoinColumn(name = "albumsName", referencedColumnName = "name") - @JoinColumn(name = "albumsVersion", referencedColumnName = "version") - @XmlElement(name = "albums", required = true) private AxContextAlbums albums; - // @formatter:on /** * The Default Constructor creates a {@link AxContextModel} object with a null artifact key and creates an empty diff --git a/model/context-model/src/main/java/org/onap/policy/apex/model/contextmodel/concepts/AxContextSchema.java b/model/context-model/src/main/java/org/onap/policy/apex/model/contextmodel/concepts/AxContextSchema.java index 37f44ba49..61434ca67 100644 --- a/model/context-model/src/main/java/org/onap/policy/apex/model/contextmodel/concepts/AxContextSchema.java +++ b/model/context-model/src/main/java/org/onap/policy/apex/model/contextmodel/concepts/AxContextSchema.java @@ -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"); @@ -23,17 +23,6 @@ package org.onap.policy.apex.model.contextmodel.concepts; import java.util.List; -import javax.persistence.Column; -import javax.persistence.Convert; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.Table; -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 lombok.AccessLevel; import lombok.Getter; import lombok.ToString; @@ -43,7 +32,6 @@ import org.onap.policy.apex.model.basicmodel.concepts.AxKey; 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.dao.converters.CDataConditioner; import org.onap.policy.common.utils.validation.Assertions; /** @@ -64,17 +52,8 @@ import org.onap.policy.common.utils.validation.Assertions; * the regular expression SCHEMA_FLAVOUR_REGEXP. Finally, validation checks that the defined schema is not a blank or * empty string. */ -@Entity -@Table(name = "AxContextSchema") - @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+$"; @@ -90,18 +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 - @EmbeddedId - @XmlElement(name = "key", required = true) private AxArtifactKey key; - - @Column(name = SCHEMA_FLAVOUR) - @XmlElement(required = true) private String schemaFlavour; - @Column(name = "schemaDefinition", length = MAX_SCHEMA_SIZE) - @Convert(converter = CDataConditioner.class) - @XmlJavaTypeAdapter(value = CDataConditioner.class) - @XmlElement(name = "schemaDefinition", required = true) @Getter(AccessLevel.NONE) private String schemaDefinition; @@ -270,7 +240,7 @@ public class AxContextSchema extends AxConcept { result = prime * result + key.hashCode(); result = prime * result + schemaFlavour.hashCode(); - final String thisSchema = CDataConditioner.clean(schemaDefinition).replace("\n", ""); + final String thisSchema = schemaDefinition.replace("\n", ""); result = prime * result + thisSchema.hashCode(); return result; } @@ -299,9 +269,7 @@ public class AxContextSchema extends AxConcept { if (!schemaFlavour.equals(other.schemaFlavour)) { return false; } - final String thisSchema = CDataConditioner.clean(schemaDefinition).replace("\n", ""); - final String otherSchema = CDataConditioner.clean(other.schemaDefinition).replace("\n", ""); - return thisSchema.equals(otherSchema); + return schemaDefinition.equals(other.schemaDefinition); } /** @@ -326,8 +294,6 @@ public class AxContextSchema extends AxConcept { if (!schemaFlavour.equals(other.schemaFlavour)) { return schemaFlavour.compareTo(other.schemaFlavour); } - final String thisSchema = CDataConditioner.clean(schemaDefinition).replace("\n", ""); - final String otherSchema = CDataConditioner.clean(other.schemaDefinition).replace("\n", ""); - return thisSchema.compareTo(otherSchema); + return schemaDefinition.compareTo(other.schemaDefinition); } } diff --git a/model/context-model/src/main/java/org/onap/policy/apex/model/contextmodel/concepts/AxContextSchemas.java b/model/context-model/src/main/java/org/onap/policy/apex/model/contextmodel/concepts/AxContextSchemas.java index 1fa0cf57a..5b79a3dcb 100644 --- a/model/context-model/src/main/java/org/onap/policy/apex/model/contextmodel/concepts/AxContextSchemas.java +++ b/model/context-model/src/main/java/org/onap/policy/apex/model/contextmodel/concepts/AxContextSchemas.java @@ -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"); @@ -28,18 +28,6 @@ import java.util.Map.Entry; import java.util.NavigableMap; import java.util.Set; import java.util.TreeMap; -import javax.persistence.CascadeType; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.JoinColumn; -import javax.persistence.JoinTable; -import javax.persistence.ManyToMany; -import javax.persistence.Table; -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; @@ -64,35 +52,16 @@ import org.onap.policy.common.utils.validation.Assertions; * container. Each context schema 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 context schema entry is then validated individually. */ -@Entity -@Table(name = "AxContextSchemas") - @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; - @EmbeddedId - @XmlElement(name = "key", required = true) private AxArtifactKey key; - // @formatter:off - @ManyToMany(cascade = CascadeType.ALL) - @JoinTable( - joinColumns = {@JoinColumn(name = "contextSchemasName", referencedColumnName = "name"), - @JoinColumn(name = "contextSchemasVersion", referencedColumnName = "version")}, - inverseJoinColumns = {@JoinColumn(name = "contextSchemaName", referencedColumnName = "name"), - @JoinColumn(name = "contextSchemaVersion", referencedColumnName = "version")}) - @XmlElement(name = "schemas", required = true) @Getter(AccessLevel.NONE) private Map<AxArtifactKey, AxContextSchema> schemas; - // @formatter:on /** * The Default Constructor creates a {@link AxContextSchemas} object with a null artifact key and creates an empty @@ -124,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) { @@ -138,22 +107,6 @@ public class AxContextSchemas extends AxConcept implements AxConceptGetter<AxCon } /** - * 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}. */ @Override @@ -165,6 +118,14 @@ public class AxContextSchemas extends AxConcept implements AxConceptGetter<AxCon } /** + * {@inheritDoc}. + */ + @Override + public void buildReferences() { + schemas.values().stream().forEach(schema -> schema.buildReferences()); + } + + /** * Sets the key of the context schema container. * * @param key the key of the container @@ -204,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); @@ -266,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); @@ -321,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); } /** @@ -338,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); } } diff --git a/model/context-model/src/test/java/org/onap/policy/apex/model/contextmodel/handling/ApexContextModelTest.java b/model/context-model/src/test/java/org/onap/policy/apex/model/contextmodel/handling/ApexContextModelTest.java index 89a108ad8..998469bac 100644 --- a/model/context-model/src/test/java/org/onap/policy/apex/model/contextmodel/handling/ApexContextModelTest.java +++ b/model/context-model/src/test/java/org/onap/policy/apex/model/contextmodel/handling/ApexContextModelTest.java @@ -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. @@ -26,7 +26,6 @@ import static org.junit.Assert.assertEquals; import org.junit.Before; import org.junit.Test; import org.onap.policy.apex.model.basicmodel.concepts.AxValidationResult; -import org.onap.policy.apex.model.basicmodel.dao.DaoParameters; import org.onap.policy.apex.model.basicmodel.test.TestApexModel; import org.onap.policy.apex.model.contextmodel.concepts.AxContextModel; @@ -37,6 +36,45 @@ import org.onap.policy.apex.model.contextmodel.concepts.AxContextModel; * */ public class ApexContextModelTest { + + private static final String VALID_MODEL_STRING = "***validation of model successful***"; + + private static final String OBSERVATION_MODEL_STRING = "\n" + + "***observations noted during validation of model***\n" + + "AxArtifactKey:(name=contextAlbum1,version=0.0.1):" + + "org.onap.policy.apex.model.basicmodel.concepts.AxKeyInfo:OBSERVATION:description is blank\n" + + "********************************"; + + private static final String WARNING_MODEL_STRING = "\n" + "***warnings issued during validation of model***\n" + + "AxArtifactKey:(name=contextAlbum1,version=0.0.1):" + + "org.onap.policy.apex.model.basicmodel.concepts.AxKeyInfo:WARNING:" + + "UUID is a zero UUID: 00000000-0000-0000-0000-000000000000\n" + + "********************************"; + + private static final String INVALID_MODEL_STRING = "\n" + "***validation of model failed***\n" + + "AxArtifactKey:(name=StringType,version=0.0.1):" + + "org.onap.policy.apex.model.contextmodel.concepts.AxContextSchema:INVALID:" + + "no schemaDefinition specified, schemaDefinition may not be blank\n" + + "AxArtifactKey:(name=contextAlbum0,version=0.0.1):" + + "org.onap.policy.apex.model.contextmodel.concepts.AxContextAlbum:INVALID:" + + "scope is not defined\n" + "********************************"; + + private static final String INVALID_MODEL_MALSTRUCTURED_STRING = "\n" + "***validation of model failed***\n" + + "AxArtifactKey:(name=ContextModel,version=0.0.1):" + + "org.onap.policy.apex.model.contextmodel.concepts.AxContextModel:INVALID:" + + "key information not found for key AxArtifactKey:(name=contextAlbum1,version=0.0.2)\n" + + "AxArtifactKey:(name=contextAlbum1,version=0.0.1):" + + "org.onap.policy.apex.model.contextmodel.concepts.AxContextModel:WARNING:" + + "key not found for key information entry\n" + "AxArtifactKey:(name=ContextSchemas,version=0.0.1):" + + "org.onap.policy.apex.model.contextmodel.concepts.AxContextSchemas:INVALID:" + + "key on schemas entry AxArtifactKey:(name=MapType,version=0.0.1) " + + "does not equal entry key AxArtifactKey:(name=MapType,version=0.0.2)\n" + + "AxArtifactKey:(name=contextAlbums,version=0.0.1):" + + "org.onap.policy.apex.model.contextmodel.concepts.AxContextAlbums:INVALID:" + + "key on context album entry key AxArtifactKey:(name=contextAlbum1,version=0.0.1) " + + "does not equal context album value key AxArtifactKey:(name=contextAlbum1,version=0.0.2)\n" + + "********************************"; + TestApexModel<AxContextModel> testApexModel; /** @@ -80,60 +118,7 @@ public class ApexContextModelTest { } @Test - public void testModelWriteReadXml() throws Exception { - testApexModel.testApexModelWriteReadXml(); - } - - @Test public void testModelWriteReadJson() throws Exception { testApexModel.testApexModelWriteReadJson(); } - - @Test - public void testModelWriteReadJpa() throws Exception { - final DaoParameters DaoParameters = new DaoParameters(); - DaoParameters.setPluginClass("org.onap.policy.apex.model.basicmodel.dao.impl.DefaultApexDao"); - DaoParameters.setPersistenceUnit("DAOTest"); - - testApexModel.testApexModelWriteReadJpa(DaoParameters); - } - - private static final String VALID_MODEL_STRING = "***validation of model successful***"; - - private static final String OBSERVATION_MODEL_STRING = "\n" - + "***observations noted during validation of model***\n" - + "AxArtifactKey:(name=contextAlbum1,version=0.0.1):" - + "org.onap.policy.apex.model.basicmodel.concepts.AxKeyInfo:OBSERVATION:description is blank\n" - + "********************************"; - - private static final String WARNING_MODEL_STRING = "\n" + "***warnings issued during validation of model***\n" - + "AxArtifactKey:(name=contextAlbum1,version=0.0.1):" - + "org.onap.policy.apex.model.basicmodel.concepts.AxKeyInfo:WARNING:" - + "UUID is a zero UUID: 00000000-0000-0000-0000-000000000000\n" - + "********************************"; - - private static final String INVALID_MODEL_STRING = "\n" + "***validation of model failed***\n" - + "AxArtifactKey:(name=StringType,version=0.0.1):" - + "org.onap.policy.apex.model.contextmodel.concepts.AxContextSchema:INVALID:" - + "no schemaDefinition specified, schemaDefinition may not be blank\n" - + "AxArtifactKey:(name=contextAlbum0,version=0.0.1):" - + "org.onap.policy.apex.model.contextmodel.concepts.AxContextAlbum:INVALID:" - + "scope is not defined\n" + "********************************"; - - private static final String INVALID_MODEL_MALSTRUCTURED_STRING = "\n" + "***validation of model failed***\n" - + "AxArtifactKey:(name=ContextModel,version=0.0.1):" - + "org.onap.policy.apex.model.contextmodel.concepts.AxContextModel:INVALID:" - + "key information not found for key AxArtifactKey:(name=contextAlbum1,version=0.0.2)\n" - + "AxArtifactKey:(name=contextAlbum1,version=0.0.1):" - + "org.onap.policy.apex.model.contextmodel.concepts.AxContextModel:WARNING:" - + "key not found for key information entry\n" + "AxArtifactKey:(name=ContextSchemas,version=0.0.1):" - + "org.onap.policy.apex.model.contextmodel.concepts.AxContextSchemas:INVALID:" - + "key on schemas entry AxArtifactKey:(name=MapType,version=0.0.1) " - + "does not equal entry key AxArtifactKey:(name=MapType,version=0.0.2)\n" - + "AxArtifactKey:(name=contextAlbums,version=0.0.1):" - + "org.onap.policy.apex.model.contextmodel.concepts.AxContextAlbums:INVALID:" - + "key on context album entry key AxArtifactKey:(name=contextAlbum1,version=0.0.1) " - + "does not equal context album value key AxArtifactKey:(name=contextAlbum1,version=0.0.2)\n" - + "********************************"; - } diff --git a/model/context-model/src/test/resources/META-INF/persistence.xml b/model/context-model/src/test/resources/META-INF/persistence.xml deleted file mode 100644 index b4ba68a38..000000000 --- a/model/context-model/src/test/resources/META-INF/persistence.xml +++ /dev/null @@ -1,48 +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========================================================= ---> - -<persistence xmlns="http://java.sun.com/xml/ns/persistence" version="2.0"> - <persistence-unit name="DAOTest" transaction-type="RESOURCE_LOCAL"> - <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider> - - <class>org.onap.policy.apex.model.basicmodel.dao.converters.CDataConditioner</class> - <class>org.onap.policy.apex.model.basicmodel.dao.converters.Uuid2String</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxConcept</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxKeyInfo</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxKeyInformation</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxModel</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.TestEntity</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextSchema</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextSchemas</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextAlbum</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextAlbums</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextModel</class> - - <properties> - <property name="javax.persistence.jdbc.url" value="jdbc:h2:mem:testdb" /> - <property name="javax.persistence.jdbc.driver" value="org.h2.Driver" /> - <property name="eclipselink.ddl-generation" value="drop-and-create-tables" /> - <property name="eclipselink.ddl-generation.output-mode" value="database" /> - <property name="eclipselink.logging.level" value="INFO" /> - </properties> - </persistence-unit> -</persistence> 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 index 2c93ef1c2..000000000 --- a/model/context-model/src/test/resources/json/ContextModel.json +++ /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 diff --git a/model/engine-model/pom.xml b/model/engine-model/pom.xml index 7a1b485f8..9db1b2053 100644 --- a/model/engine-model/pom.xml +++ b/model/engine-model/pom.xml @@ -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. @@ -41,30 +42,4 @@ <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> diff --git a/model/engine-model/src/main/java/org/onap/policy/apex/model/enginemodel/concepts/AxEngineModel.java b/model/engine-model/src/main/java/org/onap/policy/apex/model/enginemodel/concepts/AxEngineModel.java index 23310b219..1a590a411 100644 --- a/model/engine-model/src/main/java/org/onap/policy/apex/model/enginemodel/concepts/AxEngineModel.java +++ b/model/engine-model/src/main/java/org/onap/policy/apex/model/enginemodel/concepts/AxEngineModel.java @@ -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,16 +24,6 @@ package org.onap.policy.apex.model.enginemodel.concepts; import java.text.SimpleDateFormat; import java.util.List; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Enumerated; -import javax.persistence.JoinColumn; -import javax.persistence.Table; -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; @@ -58,32 +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. */ -@Entity -@Table(name = "AxEngineModel") -@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; - @Column(name = "timestamp") private long timestamp; - - @Enumerated - @Column(name = "state") - @XmlElement(required = true) private AxEngineState state; - - @JoinColumn(name = "statsParentKeyName", referencedColumnName = "parentKeyName", updatable = false, - insertable = false) - @JoinColumn(name = "statsParentKeyVersion", referencedColumnName = "parentKeyVersion", updatable = false, - insertable = false) - @JoinColumn(name = "statsParentLocalName ", referencedColumnName = "parentLocalName", updatable = false, - insertable = false) - @JoinColumn(name = "statsLocalName", referencedColumnName = "localName", updatable = false, insertable = false) private AxEngineStats stats; /** diff --git a/model/engine-model/src/main/java/org/onap/policy/apex/model/enginemodel/concepts/AxEngineState.java b/model/engine-model/src/main/java/org/onap/policy/apex/model/enginemodel/concepts/AxEngineState.java index 63c8706d2..24c564b96 100644 --- a/model/engine-model/src/main/java/org/onap/policy/apex/model/enginemodel/concepts/AxEngineState.java +++ b/model/engine-model/src/main/java/org/onap/policy/apex/model/enginemodel/concepts/AxEngineState.java @@ -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. @@ -21,18 +22,12 @@ 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 +} diff --git a/model/engine-model/src/main/java/org/onap/policy/apex/model/enginemodel/concepts/AxEngineStats.java b/model/engine-model/src/main/java/org/onap/policy/apex/model/enginemodel/concepts/AxEngineStats.java index 685aa0d1c..1420d1e0d 100644 --- a/model/engine-model/src/main/java/org/onap/policy/apex/model/enginemodel/concepts/AxEngineStats.java +++ b/model/engine-model/src/main/java/org/onap/policy/apex/model/enginemodel/concepts/AxEngineStats.java @@ -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"); @@ -26,16 +26,6 @@ import io.prometheus.client.Gauge; import io.prometheus.client.Histogram; import java.text.SimpleDateFormat; import java.util.List; -import javax.persistence.Column; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.Table; -import javax.persistence.Transient; -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; @@ -53,13 +43,6 @@ import org.onap.policy.common.utils.validation.Assertions; * engine, and the time stamp of the last engine start are recorded. */ -@Entity -@Table(name = "AxEngineStats") - -@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; @@ -81,36 +64,15 @@ public class AxEngineStats extends AxConcept { .name("engine_last_execution_time").labelNames(ENGINE_INSTANCE_ID) .help("Time taken to execute the last APEX policy in seconds.").register(); - @EmbeddedId - @XmlElement(name = "key", required = true) private AxReferenceKey key; - - @Column - @XmlElement(required = true) private long timeStamp; - - @Column - @XmlElement(required = true) private long eventCount; - - @Column - @XmlElement(required = true) private long lastExecutionTime; - - @Column - @XmlElement(required = true) private double averageExecutionTime; - - @Column - @XmlElement(required = true) private long upTime; - @Transient @Getter private transient long lastEnterTime; - - @Column - @XmlElement(required = true) private long lastStart; /** @@ -568,4 +530,4 @@ public class AxEngineStats extends AxConcept { return Long.compare(lastStart, other.lastStart); } -}
\ No newline at end of file +} diff --git a/model/engine-model/src/main/java/org/onap/policy/apex/model/enginemodel/concepts/package-info.java b/model/engine-model/src/main/java/org/onap/policy/apex/model/enginemodel/concepts/package-info.java index ea47c6993..4557af7db 100644 --- a/model/engine-model/src/main/java/org/onap/policy/apex/model/enginemodel/concepts/package-info.java +++ b/model/engine-model/src/main/java/org/onap/policy/apex/model/enginemodel/concepts/package-info.java @@ -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========================================================= */ @@ -21,14 +22,7 @@ /** * 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; diff --git a/model/engine-model/src/test/java/org/onap/policy/apex/model/enginemodel/handling/ApexEngineModelTest.java b/model/engine-model/src/test/java/org/onap/policy/apex/model/enginemodel/handling/ApexEngineModelTest.java index 063424b3d..e7fdd2d93 100644 --- a/model/engine-model/src/test/java/org/onap/policy/apex/model/enginemodel/handling/ApexEngineModelTest.java +++ b/model/engine-model/src/test/java/org/onap/policy/apex/model/enginemodel/handling/ApexEngineModelTest.java @@ -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. @@ -26,11 +26,24 @@ import static org.junit.Assert.assertEquals; import org.junit.Before; import org.junit.Test; import org.onap.policy.apex.model.basicmodel.concepts.AxValidationResult; -import org.onap.policy.apex.model.basicmodel.dao.DaoParameters; import org.onap.policy.apex.model.basicmodel.test.TestApexModel; import org.onap.policy.apex.model.enginemodel.concepts.AxEngineModel; public class ApexEngineModelTest { + private static final String VALID_MODEL_STRING = "***validation of model successful***"; + + private static final String INVALID_MODEL_STRING = "\n" + "***validation of model failed***\n" + + "AxArtifactKey:(name=AnEngine,version=0.0.1):" + + "org.onap.policy.apex.model.enginemodel.concepts.AxEngineModel:INVALID:" + + "AxEngineModel - state is UNDEFINED\n" + "********************************"; + + private static final String INVALID_MODEL_MALSTRUCTURED_STRING = "\n" + "***validation of model failed***\n" + + "AxArtifactKey:(name=AnEngine,version=0.0.1):" + + "org.onap.policy.apex.model.enginemodel.concepts.AxEngineModel:INVALID:" + + "AxEngineModel - timestamp is not set\n" + "AxArtifactKey:(name=AnEngine,version=0.0.1):" + + "org.onap.policy.apex.model.enginemodel.concepts.AxEngineModel:INVALID:" + + "AxEngineModel - state is UNDEFINED\n" + "********************************"; + TestApexModel<AxEngineModel> testApexModel; /** @@ -62,35 +75,7 @@ public class ApexEngineModelTest { } @Test - public void testModelWriteReadXml() throws Exception { - testApexModel.testApexModelWriteReadXml(); - } - - @Test public void testModelWriteReadJson() throws Exception { testApexModel.testApexModelWriteReadJson(); } - - @Test - public void testModelWriteReadJpa() throws Exception { - final DaoParameters DaoParameters = new DaoParameters(); - DaoParameters.setPluginClass("org.onap.policy.apex.model.basicmodel.dao.impl.DefaultApexDao"); - DaoParameters.setPersistenceUnit("DAOTest"); - - testApexModel.testApexModelWriteReadJpa(DaoParameters); - } - - private static final String VALID_MODEL_STRING = "***validation of model successful***"; - - private static final String INVALID_MODEL_STRING = "\n" + "***validation of model failed***\n" - + "AxArtifactKey:(name=AnEngine,version=0.0.1):" - + "org.onap.policy.apex.model.enginemodel.concepts.AxEngineModel:INVALID:" - + "AxEngineModel - state is UNDEFINED\n" + "********************************"; - - private static final String INVALID_MODEL_MALSTRUCTURED_STRING = "\n" + "***validation of model failed***\n" - + "AxArtifactKey:(name=AnEngine,version=0.0.1):" - + "org.onap.policy.apex.model.enginemodel.concepts.AxEngineModel:INVALID:" - + "AxEngineModel - timestamp is not set\n" + "AxArtifactKey:(name=AnEngine,version=0.0.1):" - + "org.onap.policy.apex.model.enginemodel.concepts.AxEngineModel:INVALID:" - + "AxEngineModel - state is UNDEFINED\n" + "********************************"; } diff --git a/model/engine-model/src/test/resources/META-INF/persistence.xml b/model/engine-model/src/test/resources/META-INF/persistence.xml deleted file mode 100644 index 42048d85d..000000000 --- a/model/engine-model/src/test/resources/META-INF/persistence.xml +++ /dev/null @@ -1,69 +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========================================================= ---> - -<persistence xmlns="http://java.sun.com/xml/ns/persistence" version="2.0"> - <persistence-unit name="DAOTest" transaction-type="RESOURCE_LOCAL"> - <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider> - - <class>org.onap.policy.apex.model.basicmodel.dao.converters.CDataConditioner</class> - <class>org.onap.policy.apex.model.basicmodel.dao.converters.Uuid2String</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxConcept</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxKeyInfo</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxKeyInformation</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxModel</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.TestEntity</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextSchema</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextSchemas</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextAlbum</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextAlbums</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextModel</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxField</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxInputField</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxOutputField</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxEvent</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxEvents</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxEventModel</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxLogic</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTaskParameter</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTaskLogic</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTask</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTasks</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTaskSelectionLogic</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxStateFinalizerLogic</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxStateOutput</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxStateTaskReference</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxState</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxPolicy</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxPolicies</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxPolicyModel</class> - <class>org.onap.policy.apex.model.enginemodel.concepts.AxEngineModel</class> - <class>org.onap.policy.apex.model.enginemodel.concepts.AxEngineStats</class> - - <properties> - <property name="javax.persistence.jdbc.url" value="jdbc:h2:mem:testdb" /> - <property name="javax.persistence.jdbc.driver" value="org.h2.Driver" /> - <property name="eclipselink.ddl-generation" value="drop-and-create-tables" /> - <property name="eclipselink.ddl-generation.output-mode" value="database" /> - <property name="eclipselink.logging.level" value="INFO" /> - </properties> - </persistence-unit> -</persistence> diff --git a/model/event-model/pom.xml b/model/event-model/pom.xml index 5e5f84885..813ebb8bb 100644 --- a/model/event-model/pom.xml +++ b/model/event-model/pom.xml @@ -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. @@ -36,30 +37,4 @@ <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> diff --git a/model/event-model/src/main/java/org/onap/policy/apex/model/eventmodel/concepts/AxEvent.java b/model/event-model/src/main/java/org/onap/policy/apex/model/eventmodel/concepts/AxEvent.java index e3663e702..a4c0e9db1 100644 --- a/model/event-model/src/main/java/org/onap/policy/apex/model/eventmodel/concepts/AxEvent.java +++ b/model/event-model/src/main/java/org/onap/policy/apex/model/eventmodel/concepts/AxEvent.java @@ -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"); @@ -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,18 +32,6 @@ import java.util.Set; import java.util.SortedMap; import java.util.TreeMap; import java.util.TreeSet; -import javax.persistence.CascadeType; -import javax.persistence.Column; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.OneToMany; -import javax.persistence.Table; -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; @@ -75,44 +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. */ -@Entity -@Table(name = "AxEvent") - -@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. */ - @EmbeddedId - @XmlElement(name = "key", required = true) // CHECKSTYLE:OFF: checkstyle:VisibilityMonitor protected AxArtifactKey key; // CHECKSTYLE:ON: checkstyle:VisibilityMonitor - @Column(name = "nameSpace") - @XmlElement(required = true) private String nameSpace; - - @Column(name = "source") - @XmlElement(required = true) private String source; - - @Column(name = "target") - @XmlElement(required = true) private String target; - @OneToMany(cascade = CascadeType.ALL) - @XmlElement(name = "parameter", required = true) + @SerializedName("parameter") private Map<String, AxField> parameterMap; - - @Column(name = "toscaPolicyState") - @XmlElement(required = false) private String toscaPolicyState; /** @@ -204,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); } @@ -581,4 +544,4 @@ public class AxEvent extends AxConcept { return 0; } -}
\ No newline at end of file +} diff --git a/model/event-model/src/main/java/org/onap/policy/apex/model/eventmodel/concepts/AxEventModel.java b/model/event-model/src/main/java/org/onap/policy/apex/model/eventmodel/concepts/AxEventModel.java index 511d4f3d0..b91712c9d 100644 --- a/model/event-model/src/main/java/org/onap/policy/apex/model/eventmodel/concepts/AxEventModel.java +++ b/model/event-model/src/main/java/org/onap/policy/apex/model/eventmodel/concepts/AxEventModel.java @@ -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"); @@ -23,16 +23,6 @@ package org.onap.policy.apex.model.eventmodel.concepts; import java.util.List; -import javax.persistence.CascadeType; -import javax.persistence.Entity; -import javax.persistence.JoinColumn; -import javax.persistence.OneToOne; -import javax.persistence.Table; -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; @@ -51,30 +41,11 @@ 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. */ - -@Entity -@Table(name = "AxEventModel") - -@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; - // @formatter:off - @OneToOne(cascade = CascadeType.ALL) - @JoinColumn(name = "schemasName", referencedColumnName = "name") - @JoinColumn(name = "schemasVersion", referencedColumnName = "version") - @XmlElement(name = "schemas", required = true) private AxContextSchemas schemas; - - @OneToOne(cascade = CascadeType.ALL) - @JoinColumn(name = "eventsName", referencedColumnName = "name") - @JoinColumn(name = "eventsVersion", referencedColumnName = "version") - @XmlElement(name = "events", required = true) private AxEvents events; - // @formatter:on /** * The Default Constructor creates a {@link AxEventModel} object with a null artifact key and creates an empty event diff --git a/model/event-model/src/main/java/org/onap/policy/apex/model/eventmodel/concepts/AxEvents.java b/model/event-model/src/main/java/org/onap/policy/apex/model/eventmodel/concepts/AxEvents.java index ea4ec57a4..aac1562de 100644 --- a/model/event-model/src/main/java/org/onap/policy/apex/model/eventmodel/concepts/AxEvents.java +++ b/model/event-model/src/main/java/org/onap/policy/apex/model/eventmodel/concepts/AxEvents.java @@ -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. @@ -27,18 +27,6 @@ import java.util.Map.Entry; import java.util.NavigableMap; import java.util.Set; import java.util.TreeMap; -import javax.persistence.CascadeType; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.JoinColumn; -import javax.persistence.JoinTable; -import javax.persistence.ManyToMany; -import javax.persistence.Table; -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; @@ -59,30 +47,11 @@ 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. */ -@Entity -@Table(name = "AxEvents") - -@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; - @EmbeddedId - @XmlElement(name = "key", required = true) private AxArtifactKey key; - - // @formatter:off - @ManyToMany(cascade = CascadeType.ALL) - @JoinTable( - joinColumns = { @JoinColumn(name = "eventMapName", referencedColumnName = "name"), - @JoinColumn(name = "eventMapVersion", referencedColumnName = "version") }, - inverseJoinColumns = { @JoinColumn(name = "eventName", referencedColumnName = "name"), - @JoinColumn(name = "eventVersion", referencedColumnName = "version") }) - @XmlElement(required = true) private Map<AxArtifactKey, AxEvent> eventMap; - // @formatter:on /** * The Default Constructor creates a {@link AxEvents} object with a null artifact key and creates an empty event @@ -127,21 +96,6 @@ public class AxEvents extends AxConcept implements AxConceptGetter<AxEvent> { } /** - * 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}. */ @Override @@ -164,6 +118,14 @@ public class AxEvents extends AxConcept implements AxConceptGetter<AxEvent> { } /** + * {@inheritDoc}. + */ + @Override + public void buildReferences() { + eventMap.values().stream().forEach(event -> event.buildReferences()); + } + + /** * Sets the key of the event container. * * @param key the event container key diff --git a/model/event-model/src/main/java/org/onap/policy/apex/model/eventmodel/concepts/AxField.java b/model/event-model/src/main/java/org/onap/policy/apex/model/eventmodel/concepts/AxField.java index 654a83ced..26511c9d1 100644 --- a/model/event-model/src/main/java/org/onap/policy/apex/model/eventmodel/concepts/AxField.java +++ b/model/event-model/src/main/java/org/onap/policy/apex/model/eventmodel/concepts/AxField.java @@ -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"); @@ -23,20 +23,6 @@ package org.onap.policy.apex.model.eventmodel.concepts; import java.util.List; -import javax.persistence.AttributeOverride; -import javax.persistence.Column; -import javax.persistence.Embedded; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.Inheritance; -import javax.persistence.InheritanceType; -import javax.persistence.Table; -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; @@ -45,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; /** @@ -58,15 +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. */ -@Entity -@Table(name = "AxField") -@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS) - -@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"; @@ -76,22 +52,8 @@ public class AxField extends AxConcept { private static final int HASH_PRIME_0 = 1231; private static final int HASH_PRIME_1 = 1237; - @EmbeddedId() - @XmlElement(name = "key", required = true) - @XmlJavaTypeAdapter(AxReferenceKeyAdapter.class) private AxReferenceKey key; - - // @formatter:off - @Embedded - @AttributeOverride(name = "name", column = @Column(name = "fieldSchemaName")) - @AttributeOverride(name = "version", column = @Column(name = "fieldSchemaVersion")) - @Column(name = "fieldSchemaKey") - @XmlElement(required = true) private AxArtifactKey fieldSchemaKey; - // @formatter:on - - @Column(name = "optional") - @XmlElement(required = false) private boolean optional; /** diff --git a/model/event-model/src/main/java/org/onap/policy/apex/model/eventmodel/concepts/AxInputField.java b/model/event-model/src/main/java/org/onap/policy/apex/model/eventmodel/concepts/AxInputField.java index 176699184..6155c7186 100644 --- a/model/event-model/src/main/java/org/onap/policy/apex/model/eventmodel/concepts/AxInputField.java +++ b/model/event-model/src/main/java/org/onap/policy/apex/model/eventmodel/concepts/AxInputField.java @@ -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. @@ -20,28 +21,12 @@ package org.onap.policy.apex.model.eventmodel.concepts; -import javax.persistence.Entity; -import javax.persistence.Inheritance; -import javax.persistence.InheritanceType; -import javax.persistence.Table; -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. */ -@Entity -@Table(name = "AxInputField") -@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS) - -@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; diff --git a/model/event-model/src/main/java/org/onap/policy/apex/model/eventmodel/concepts/AxOutputField.java b/model/event-model/src/main/java/org/onap/policy/apex/model/eventmodel/concepts/AxOutputField.java index f224739eb..7f3437617 100644 --- a/model/event-model/src/main/java/org/onap/policy/apex/model/eventmodel/concepts/AxOutputField.java +++ b/model/event-model/src/main/java/org/onap/policy/apex/model/eventmodel/concepts/AxOutputField.java @@ -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. @@ -20,28 +21,12 @@ package org.onap.policy.apex.model.eventmodel.concepts; -import javax.persistence.Entity; -import javax.persistence.Inheritance; -import javax.persistence.InheritanceType; -import javax.persistence.Table; -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. */ -@Entity -@Table(name = "AxOutputField") -@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS) - -@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; diff --git a/model/event-model/src/main/java/org/onap/policy/apex/model/eventmodel/concepts/package-info.java b/model/event-model/src/main/java/org/onap/policy/apex/model/eventmodel/concepts/package-info.java index 7b20b3939..414d22d0e 100644 --- a/model/event-model/src/main/java/org/onap/policy/apex/model/eventmodel/concepts/package-info.java +++ b/model/event-model/src/main/java/org/onap/policy/apex/model/eventmodel/concepts/package-info.java @@ -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. @@ -23,12 +24,4 @@ * * @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; diff --git a/model/event-model/src/test/java/org/onap/policy/apex/model/eventmodel/concepts/EventsTest.java b/model/event-model/src/test/java/org/onap/policy/apex/model/eventmodel/concepts/EventsTest.java index 111d27f70..7062fcb3c 100644 --- a/model/event-model/src/test/java/org/onap/policy/apex/model/eventmodel/concepts/EventsTest.java +++ b/model/event-model/src/test/java/org/onap/policy/apex/model/eventmodel/concepts/EventsTest.java @@ -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 +} diff --git a/model/event-model/src/test/java/org/onap/policy/apex/model/eventmodel/handling/ApexEventModelTest.java b/model/event-model/src/test/java/org/onap/policy/apex/model/eventmodel/handling/ApexEventModelTest.java index c31597413..21b97c454 100644 --- a/model/event-model/src/test/java/org/onap/policy/apex/model/eventmodel/handling/ApexEventModelTest.java +++ b/model/event-model/src/test/java/org/onap/policy/apex/model/eventmodel/handling/ApexEventModelTest.java @@ -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. @@ -26,72 +26,10 @@ import static org.junit.Assert.assertEquals; import org.junit.Before; import org.junit.Test; import org.onap.policy.apex.model.basicmodel.concepts.AxValidationResult; -import org.onap.policy.apex.model.basicmodel.dao.DaoParameters; import org.onap.policy.apex.model.basicmodel.test.TestApexModel; import org.onap.policy.apex.model.eventmodel.concepts.AxEventModel; public class ApexEventModelTest { - TestApexModel<AxEventModel> testApexModel; - - /** - * Set up the test. - * - * @throws Exception exceptions from the test - */ - @Before - public void setup() throws Exception { - testApexModel = new TestApexModel<AxEventModel>(AxEventModel.class, new DummyTestApexEventModelCreator()); - } - - @Test - public void testModelValid() throws Exception { - final AxValidationResult result = testApexModel.testApexModelValid(); - assertEquals(VALID_MODEL_STRING, result.toString()); - } - - @Test - public void testApexModelVaidateObservation() throws Exception { - final AxValidationResult result = testApexModel.testApexModelVaidateObservation(); - assertEquals(OBSERVATION_MODEL_STRING, result.toString()); - } - - @Test - public void testApexModelVaidateWarning() throws Exception { - final AxValidationResult result = testApexModel.testApexModelVaidateWarning(); - assertEquals(WARNING_MODEL_STRING, result.toString()); - } - - @Test - public void testModelVaidateInvalidModel() throws Exception { - final AxValidationResult result = testApexModel.testApexModelVaidateInvalidModel(); - assertEquals(INVALID_MODEL_STRING, result.toString()); - } - - @Test - public void testModelVaidateMalstructured() throws Exception { - final AxValidationResult result = testApexModel.testApexModelVaidateMalstructured(); - assertEquals(INVALID_MODEL_MALSTRUCTURED_STRING, result.toString()); - } - - @Test - public void testModelWriteReadXml() throws Exception { - testApexModel.testApexModelWriteReadXml(); - } - - @Test - public void testModelWriteReadJson() throws Exception { - testApexModel.testApexModelWriteReadJson(); - } - - @Test - public void testModelWriteReadJpa() throws Exception { - final DaoParameters DaoParameters = new DaoParameters(); - DaoParameters.setPluginClass("org.onap.policy.apex.model.basicmodel.dao.impl.DefaultApexDao"); - DaoParameters.setPersistenceUnit("DAOTest"); - - testApexModel.testApexModelWriteReadJpa(DaoParameters); - } - private static final String VALID_MODEL_STRING = "***validation of model successful***"; private static final String OBSERVATION_MODEL_STRING = "\n" @@ -291,4 +229,51 @@ public class ApexEventModelTest { + "AxArtifactKey:(name=event1,version=0.0.1):" + "org.onap.policy.apex.model.eventmodel.concepts.AxEvent:OBSERVATION:target on event is blank\n" + "********************************"; + + TestApexModel<AxEventModel> testApexModel; + + /** + * Set up the test. + * + * @throws Exception exceptions from the test + */ + @Before + public void setup() throws Exception { + testApexModel = new TestApexModel<AxEventModel>(AxEventModel.class, new DummyTestApexEventModelCreator()); + } + + @Test + public void testModelValid() throws Exception { + final AxValidationResult result = testApexModel.testApexModelValid(); + assertEquals(VALID_MODEL_STRING, result.toString()); + } + + @Test + public void testApexModelVaidateObservation() throws Exception { + final AxValidationResult result = testApexModel.testApexModelVaidateObservation(); + assertEquals(OBSERVATION_MODEL_STRING, result.toString()); + } + + @Test + public void testApexModelVaidateWarning() throws Exception { + final AxValidationResult result = testApexModel.testApexModelVaidateWarning(); + assertEquals(WARNING_MODEL_STRING, result.toString()); + } + + @Test + public void testModelVaidateInvalidModel() throws Exception { + final AxValidationResult result = testApexModel.testApexModelVaidateInvalidModel(); + assertEquals(INVALID_MODEL_STRING, result.toString()); + } + + @Test + public void testModelVaidateMalstructured() throws Exception { + final AxValidationResult result = testApexModel.testApexModelVaidateMalstructured(); + assertEquals(INVALID_MODEL_MALSTRUCTURED_STRING, result.toString()); + } + + @Test + public void testModelWriteReadJson() throws Exception { + testApexModel.testApexModelWriteReadJson(); + } } diff --git a/model/event-model/src/test/resources/META-INF/persistence.xml b/model/event-model/src/test/resources/META-INF/persistence.xml deleted file mode 100644 index 0184cada6..000000000 --- a/model/event-model/src/test/resources/META-INF/persistence.xml +++ /dev/null @@ -1,54 +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========================================================= ---> - -<persistence xmlns="http://java.sun.com/xml/ns/persistence" version="2.0"> - <persistence-unit name="DAOTest" transaction-type="RESOURCE_LOCAL"> - <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider> - - <class>org.onap.policy.apex.model.basicmodel.dao.converters.CDataConditioner</class> - <class>org.onap.policy.apex.model.basicmodel.dao.converters.Uuid2String</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxConcept</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxKeyInfo</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxKeyInformation</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxModel</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.TestEntity</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextSchema</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextSchemas</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextAlbum</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextAlbums</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextModel</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxField</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxInputField</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxOutputField</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxEvent</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxEvents</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxEventModel</class> - - <properties> - <property name="javax.persistence.jdbc.url" value="jdbc:h2:mem:testdb" /> - <property name="javax.persistence.jdbc.driver" value="org.h2.Driver" /> - <property name="eclipselink.ddl-generation" value="drop-and-create-tables" /> - <property name="eclipselink.ddl-generation.output-mode" value="database" /> - <property name="eclipselink.logging.level" value="INFO" /> - </properties> - </persistence-unit> -</persistence> diff --git a/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/ApexApiResult.java b/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/ApexApiResult.java index d05d410f8..83e3b5370 100644 --- a/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/ApexApiResult.java +++ b/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/ApexApiResult.java @@ -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) { diff --git a/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/ApexModel.java b/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/ApexModel.java index 6c37e453c..3c6e4c063 100644 --- a/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/ApexModel.java +++ b/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/ApexModel.java @@ -1,26 +1,26 @@ /* * ============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.modelapi; -import org.onap.policy.apex.model.basicmodel.dao.DaoParameters; import org.onap.policy.apex.model.policymodel.concepts.AxPolicyModel; /** @@ -56,29 +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); - - /** - * Load an Apex model from a database. - * - * @param modelName the name of the model to load - * @param modelVersion the version of the model to load, loads the policy model from the database with this name, if - * more than one exist, an exception is thrown - * @param daoParameters the parameters to use to access the database over JDBC - * @return the result of the operation - */ - ApexApiResult loadFromDatabase(String modelName, String modelVersion, DaoParameters daoParameters); - - /** - * Save an Apex model to a database. - * - * @param daoParameters the parameters to use to access the database over JDBC * @return the result of the operation */ - ApexApiResult saveToDatabase(DaoParameters daoParameters); + ApexApiResult saveToFile(String fileName); /** * Read an APEX model from a location identified by a URL. @@ -92,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. diff --git a/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/ApexModelFactory.java b/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/ApexModelFactory.java index 5be8b02b8..908f562d2 100644 --- a/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/ApexModelFactory.java +++ b/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/ApexModelFactory.java @@ -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)); } /** diff --git a/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/ApexModelImpl.java b/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/ApexModelImpl.java index cca9d3454..54b94d0e7 100644 --- a/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/ApexModelImpl.java +++ b/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/ApexModelImpl.java @@ -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) 2022 Bell Canada. All rights reserved. * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); @@ -28,7 +28,6 @@ import lombok.AccessLevel; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; -import org.onap.policy.apex.model.basicmodel.dao.DaoParameters; import org.onap.policy.apex.model.modelapi.ApexApiResult; import org.onap.policy.apex.model.modelapi.ApexApiResult.Result; import org.onap.policy.apex.model.modelapi.ApexModel; @@ -55,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; @@ -70,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 } @@ -102,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; @@ -771,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 @@ -780,29 +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); - } - } - - /** - * {@inheritDoc}. - */ - @Override - public ApexApiResult loadFromDatabase(final String modelName, final String modelVersion, - final DaoParameters daoParameters) { - return modelHandlerFacade.loadFromDatabase(modelName, modelVersion, daoParameters); - } - - /** - * {@inheritDoc}. - */ - @Override - public ApexApiResult saveToDatabase(final DaoParameters daoParameters) { - return modelHandlerFacade.saveToDatabase(daoParameters); + public ApexApiResult saveToFile(final String fileName) { + return modelHandlerFacade.saveToFile(fileName); } /** @@ -817,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); } /** @@ -894,4 +863,4 @@ public final class ApexModelImpl implements ApexModel { return policyModel; } -}
\ No newline at end of file +} diff --git a/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/ContextAlbumFacade.java b/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/ContextAlbumFacade.java index a78444da6..d29f32ea0 100644 --- a/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/ContextAlbumFacade.java +++ b/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/ContextAlbumFacade.java @@ -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; diff --git a/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/ContextSchemaFacade.java b/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/ContextSchemaFacade.java index 00156c5bd..83bca5a01 100644 --- a/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/ContextSchemaFacade.java +++ b/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/ContextSchemaFacade.java @@ -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; diff --git a/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/EventFacade.java b/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/EventFacade.java index f1f939397..336f27b5d 100644 --- a/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/EventFacade.java +++ b/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/EventFacade.java @@ -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 +} diff --git a/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/KeyInformationFacade.java b/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/KeyInformationFacade.java index b76bfdc06..6875a4c20 100644 --- a/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/KeyInformationFacade.java +++ b/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/KeyInformationFacade.java @@ -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; diff --git a/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/ModelFacade.java b/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/ModelFacade.java index 2adf99050..1030a5bf5 100644 --- a/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/ModelFacade.java +++ b/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/ModelFacade.java @@ -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); diff --git a/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/ModelHandlerFacade.java b/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/ModelHandlerFacade.java index b350af527..fecf92e1f 100644 --- a/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/ModelHandlerFacade.java +++ b/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/ModelHandlerFacade.java @@ -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,16 +30,11 @@ import java.net.URL; import java.net.URLConnection; import java.nio.file.Files; import java.util.LinkedHashSet; -import java.util.List; import java.util.Properties; import java.util.Set; import org.onap.policy.apex.model.basicmodel.concepts.ApexException; -import org.onap.policy.apex.model.basicmodel.concepts.ApexRuntimeException; import org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey; import org.onap.policy.apex.model.basicmodel.concepts.AxValidationResult; -import org.onap.policy.apex.model.basicmodel.dao.ApexDao; -import org.onap.policy.apex.model.basicmodel.dao.ApexDaoFactory; -import org.onap.policy.apex.model.basicmodel.dao.DaoParameters; import org.onap.policy.apex.model.basicmodel.handling.ApexModelException; import org.onap.policy.apex.model.basicmodel.handling.ApexModelFileWriter; import org.onap.policy.apex.model.basicmodel.handling.ApexModelReader; @@ -66,7 +61,6 @@ import org.slf4j.ext.XLoggerFactory; * @author Liam Fallon (liam.fallon@ericsson.com) */ public class ModelHandlerFacade { - private static final String FOUND_IN_DATABASE = " found in database"; private static final String FILE_NAME_MAY_NOT_BE_NULL = "fileName may not be null"; private static final String MODEL = "model "; private static final String ALREADY_LOADED = " already loaded"; @@ -76,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; } /** @@ -140,130 +129,18 @@ 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); - } - return new ApexApiResult(); - } catch (ApexException e) { - return new ApexApiResult(ApexApiResult.Result.FAILED, e); - } - } - - /** - * Load an Apex model from a database. - * - * @param modelName the name of the model to load - * @param modelVersion the version of the model to load, loads the policy model from the database with this name, if - * more than one exist, an exception is thrown - * @param daoParameters the parameters to use to access the database over JDBC - * @return the result of the operation - */ - public ApexApiResult loadFromDatabase(final String modelName, final String modelVersion, - final DaoParameters daoParameters) { - Assertions.argumentNotNull(modelName, "modelName may not be null"); - Assertions.argumentNotNull(daoParameters, "DaoParameters may not be null"); - - if (!apexModel.getPolicyModel().getKey().equals(AxArtifactKey.getNullKey())) { - return new ApexApiResult(ApexApiResult.Result.CONCEPT_EXISTS, - MODEL + apexModel.getPolicyModel().getKey().getId() + ALREADY_LOADED); - } - - ApexDao apexDao = null; - try { - apexDao = new ApexDaoFactory().createApexDao(daoParameters); - apexDao.init(daoParameters); - - // Single specific model requested - if (modelVersion != null) { - AxPolicyModel daoPolicyModel = - apexDao.get(AxPolicyModel.class, new AxArtifactKey(modelName, modelVersion)); - - if (daoPolicyModel != null) { - apexModel.setPolicyModel(daoPolicyModel); - return new ApexApiResult(); - } else { - apexModel.setPolicyModel(new AxPolicyModel()); - return new ApexApiResult(ApexApiResult.Result.FAILED, "no policy model with name " + modelName - + " and version " + modelVersion + FOUND_IN_DATABASE); - } - } else { - // Fishing expedition - return searchInDatabase(modelName, apexDao, apexModel); - } - } catch (ApexException | ApexRuntimeException e) { - return new ApexApiResult(ApexApiResult.Result.FAILED, e); - } finally { - if (apexDao != null) { - apexDao.close(); - } - } - } - - /** - * Search for an Apex model in the database. - * - * @param modelName the name of the model to load - * @param apexDao the DAO to use to find the model - * @param apexModel the APEX model we are loading the found model into - * @return the result of the operation - */ - private ApexApiResult searchInDatabase(String modelName, ApexDao apexDao, ApexModel apexModel) { - AxPolicyModel foundPolicyModel = null; - - List<AxPolicyModel> policyModelList = apexDao.getAll(AxPolicyModel.class); - for (AxPolicyModel dbPolicyModel : policyModelList) { - if (dbPolicyModel.getKey().getName().equals(modelName)) { - if (foundPolicyModel == null) { - foundPolicyModel = dbPolicyModel; - } else { - return new ApexApiResult(ApexApiResult.Result.FAILED, - "more than one policy model with name " + modelName + FOUND_IN_DATABASE); - } - } - } - - if (foundPolicyModel != null) { - apexModel.setPolicyModel(foundPolicyModel); - return new ApexApiResult(); - } else { - apexModel.setPolicyModel(new AxPolicyModel()); - return new ApexApiResult(ApexApiResult.Result.FAILED, - "no policy model with name " + modelName + FOUND_IN_DATABASE); - } - } - - /** - * Save an Apex model to a database. - * - * @param daoParameters the parameters to use to access the database over JDBC - * @return the result of the operation - */ - public ApexApiResult saveToDatabase(final DaoParameters daoParameters) { - ApexDao apexDao = null; - - try { - apexDao = new ApexDaoFactory().createApexDao(daoParameters); - apexDao.init(daoParameters); - - apexDao.create(apexModel.getPolicyModel()); + apexModelFileWriter.apexModelWriteJsonFile(apexModel.getPolicyModel(), AxPolicyModel.class, fileName); return new ApexApiResult(); } catch (ApexException e) { return new ApexApiResult(ApexApiResult.Result.FAILED, e); - } finally { - if (apexDao != null) { - apexDao.close(); - } } } @@ -293,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(); @@ -307,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; @@ -325,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(); @@ -363,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) { @@ -390,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; @@ -419,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; @@ -583,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; @@ -610,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; diff --git a/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/PolicyFacade.java b/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/PolicyFacade.java index 4d0999ab1..408f0913f 100644 --- a/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/PolicyFacade.java +++ b/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/PolicyFacade.java @@ -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) { diff --git a/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/TaskFacade.java b/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/TaskFacade.java index ad1edd72e..6a2ded3e2 100644 --- a/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/TaskFacade.java +++ b/model/model-api/src/main/java/org/onap/policy/apex/model/modelapi/impl/TaskFacade.java @@ -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) { diff --git a/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ApexEditorApiContextAlbumTest.java b/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ApexEditorApiContextAlbumTest.java index e6ed351ae..5ce6b6760 100644 --- a/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ApexEditorApiContextAlbumTest.java +++ b/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ApexEditorApiContextAlbumTest.java @@ -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()); diff --git a/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ApexEditorApiContextSchemaTest.java b/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ApexEditorApiContextSchemaTest.java index 04605f4a1..20310a29e 100644 --- a/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ApexEditorApiContextSchemaTest.java +++ b/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ApexEditorApiContextSchemaTest.java @@ -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()); diff --git a/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ApexEditorApiEventTest.java b/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ApexEditorApiEventTest.java index 775fcc1d3..ac9265e84 100644 --- a/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ApexEditorApiEventTest.java +++ b/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ApexEditorApiEventTest.java @@ -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 +} diff --git a/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ApexEditorApiKeyInfoTest.java b/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ApexEditorApiKeyInfoTest.java index caa25e4a4..2519b8cb2 100644 --- a/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ApexEditorApiKeyInfoTest.java +++ b/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ApexEditorApiKeyInfoTest.java @@ -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()); diff --git a/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ApexEditorApiPolicyTest.java b/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ApexEditorApiPolicyTest.java index 3e78921e9..0a4d72214 100644 --- a/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ApexEditorApiPolicyTest.java +++ b/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ApexEditorApiPolicyTest.java @@ -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); diff --git a/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ApexEditorApiTaskTest.java b/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ApexEditorApiTaskTest.java index 026f67c29..15e53f925 100644 --- a/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ApexEditorApiTaskTest.java +++ b/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ApexEditorApiTaskTest.java @@ -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()); diff --git a/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ApexModelApiTest.java b/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ApexModelApiTest.java index a4b42276a..f28d0e634 100644 --- a/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ApexModelApiTest.java +++ b/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ApexModelApiTest.java @@ -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,7 +34,6 @@ import java.util.UUID; import org.junit.After; import org.junit.Before; import org.junit.Test; -import org.onap.policy.apex.model.basicmodel.dao.DaoParameters; import org.onap.policy.apex.model.modelapi.impl.ApexModelImpl; import org.onap.policy.common.utils.resources.TextFileUtils; @@ -60,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()); @@ -71,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(); @@ -79,97 +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); - assertEquals(ApexApiResult.Result.SUCCESS, result.getResult()); - - final ApexModel xmlApexModel = new ApexModelFactory().createApexModel(null, false); - result = xmlApexModel.loadFromFile(tempXmlModelFile.getCanonicalPath()); - assertEquals(ApexApiResult.Result.SUCCESS, result.getResult()); - tempXmlModelFile.delete(); - } - - @Test - public void testApexModelDatabase() throws IOException { - final ApexModel apexModel = new ApexModelFactory().createApexModel(null, false); - - ApexApiResult result = apexModel.loadFromFile("src/test/resources/models/PolicyModel.json"); - assertEquals(ApexApiResult.Result.SUCCESS, result.getResult()); - - final DaoParameters DaoParameters = new DaoParameters(); - DaoParameters.setPluginClass("org.onap.policy.apex.model.basicmodel.dao.impl.DefaultApexDao"); - DaoParameters.setPersistenceUnit("DAOTest"); - - result = apexModel.saveToDatabase(DaoParameters); - assertEquals(ApexApiResult.Result.SUCCESS, result.getResult()); - - result = apexModel.deleteModel(); - assertEquals(ApexApiResult.Result.SUCCESS, result.getResult()); - - result = apexModel.loadFromDatabase("PolicyModel", "0.0.1", DaoParameters); - assertEquals(ApexApiResult.Result.SUCCESS, result.getResult()); - - result = apexModel.deleteModel(); - assertEquals(ApexApiResult.Result.SUCCESS, result.getResult()); - - result = apexModel.loadFromDatabase("PolicyModel", null, DaoParameters); + final File tempModelFile = File.createTempFile("ApexModelTest", ".json"); + result = apexModel.saveToFile(tempModelFile.getPath()); assertEquals(ApexApiResult.Result.SUCCESS, result.getResult()); - result = apexModel.deleteModel(); + final ApexModel testApexModel = new ApexModelFactory().createApexModel(null); + result = testApexModel.loadFromFile(tempModelFile.getPath()); assertEquals(ApexApiResult.Result.SUCCESS, result.getResult()); - - result = apexModel.loadFromDatabase("VPNPolicyModel", "0.0.1", DaoParameters); - assertEquals(ApexApiResult.Result.FAILED, result.getResult()); + 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)); @@ -178,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; @@ -208,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(); @@ -220,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); @@ -229,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); diff --git a/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ModelFacadeTest.java b/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ModelFacadeTest.java index a5f258e4c..d3b32b923 100644 --- a/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ModelFacadeTest.java +++ b/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ModelFacadeTest.java @@ -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()); diff --git a/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ModelHandlerFacadeTest.java b/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ModelHandlerFacadeTest.java index 4a1c3276c..5bbc95992 100644 --- a/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ModelHandlerFacadeTest.java +++ b/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/ModelHandlerFacadeTest.java @@ -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. @@ -29,7 +29,6 @@ import java.io.File; import java.io.IOException; import java.util.Properties; import org.junit.Test; -import org.onap.policy.apex.model.basicmodel.dao.DaoParameters; import org.onap.policy.apex.model.modelapi.impl.ModelHandlerFacade; import org.onap.policy.common.utils.resources.TextFileUtils; @@ -42,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"); @@ -69,19 +68,9 @@ public class ModelHandlerFacadeTest { result = mhf.loadFromString(modelString); assertEquals(ApexApiResult.Result.CONCEPT_EXISTS, result.getResult()); - final DaoParameters DaoParameters = new DaoParameters(); - result = mhf.loadFromDatabase("SomeModel", null, DaoParameters); - assertEquals(ApexApiResult.Result.CONCEPT_EXISTS, result.getResult()); - result = apexModel.deleteModel(); assertEquals(ApexApiResult.Result.SUCCESS, result.getResult()); - result = mhf.loadFromDatabase("SomeModel", null, DaoParameters); - assertEquals(ApexApiResult.Result.FAILED, result.getResult()); - - result = mhf.saveToDatabase(DaoParameters); - assertEquals(ApexApiResult.Result.FAILED, result.getResult()); - result = mhf.readFromUrl("blah://somewhere/over/the/rainbow"); assertEquals(ApexApiResult.Result.FAILED, result.getResult()); @@ -94,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 index 000000000..2a29f5297 --- /dev/null +++ b/model/model-api/src/test/java/org/onap/policy/apex/model/modelapi/RealModelTest.java @@ -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()); + } +} diff --git a/model/model-api/src/test/resources/META-INF/persistence.xml b/model/model-api/src/test/resources/META-INF/persistence.xml deleted file mode 100644 index 2603d5496..000000000 --- a/model/model-api/src/test/resources/META-INF/persistence.xml +++ /dev/null @@ -1,67 +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========================================================= ---> - -<persistence xmlns="http://java.sun.com/xml/ns/persistence" version="2.0"> - <persistence-unit name="DAOTest" transaction-type="RESOURCE_LOCAL"> - <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider> - - <class>org.onap.policy.apex.model.basicmodel.dao.converters.CDataConditioner</class> - <class>org.onap.policy.apex.model.basicmodel.dao.converters.Uuid2String</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxConcept</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxKeyInfo</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxKeyInformation</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxModel</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.TestEntity</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextSchema</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextSchemas</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextAlbum</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextAlbums</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextModel</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxField</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxInputField</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxOutputField</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxEvent</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxEvents</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxEventModel</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxLogic</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTaskParameter</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTaskLogic</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTask</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTasks</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTaskSelectionLogic</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxStateFinalizerLogic</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxStateOutput</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxStateTaskReference</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxState</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxPolicy</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxPolicies</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxPolicyModel</class> - - <properties> - <property name="javax.persistence.jdbc.url" value="jdbc:h2:mem:testdb" /> - <property name="javax.persistence.jdbc.driver" value="org.h2.Driver" /> - <property name="eclipselink.ddl-generation" value="create-or-extend-tables" /> - <property name="eclipselink.ddl-generation.output-mode" value="database" /> - <property name="eclipselink.logging.level" value="INFO" /> - </properties> - </persistence-unit> -</persistence> diff --git a/model/model-api/src/test/resources/models/PolicyModel.json b/model/model-api/src/test/resources/models/PolicyModel.json index 81c222609..fbb91bb0b 100644 --- a/model/model-api/src/test/resources/models/PolicyModel.json +++ b/model/model-api/src/test/resources/models/PolicyModel.json @@ -1,708 +1,775 @@ { - "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 index e47e21afc..000000000 --- a/model/model-api/src/test/resources/models/PolicyModel.xml +++ /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 index 000000000..f084747f2 --- /dev/null +++ b/model/model-api/src/test/resources/models/RealPolicyModel.json @@ -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" + } + } + ] + } + } +} diff --git a/model/policy-model/pom.xml b/model/policy-model/pom.xml index 3fbf8b1dc..cde0fa83c 100644 --- a/model/policy-model/pom.xml +++ b/model/policy-model/pom.xml @@ -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. @@ -50,30 +51,4 @@ <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> diff --git a/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxLogic.java b/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxLogic.java index 442e54b1f..0564d5854 100644 --- a/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxLogic.java +++ b/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxLogic.java @@ -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. @@ -22,27 +22,12 @@ package org.onap.policy.apex.model.policymodel.concepts; import java.util.List; -import javax.persistence.Column; -import javax.persistence.Convert; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.Inheritance; -import javax.persistence.InheritanceType; -import javax.persistence.Table; -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.dao.converters.CDataConditioner; -import org.onap.policy.apex.model.basicmodel.xml.AxReferenceKeyAdapter; import org.onap.policy.common.utils.validation.Assertions; /** @@ -57,16 +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. */ - -@Entity -@Table(name = "AxLogic") -@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS) - -@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; @@ -86,19 +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 - @EmbeddedId() - @XmlElement(name = "key", required = true) - @XmlJavaTypeAdapter(AxReferenceKeyAdapter.class) private AxReferenceKey key; - - @Column(name = LOGIC_FLAVOUR_TOKEN) - @XmlElement(required = true) private String logicFlavour; - - @Column(name = "logic", length = MAX_LOGIC_SIZE) - @Convert(converter = CDataConditioner.class) - @XmlJavaTypeAdapter(value = CDataConditioner.class) - @XmlElement(required = true) private String logic; /** @@ -361,9 +325,7 @@ public class AxLogic extends AxConcept { if (!logicFlavour.equals(other.logicFlavour)) { return false; } - final String thislogic = CDataConditioner.clean(logic).replace("\n", ""); - final String otherlogic = CDataConditioner.clean(other.logic).replace("\n", ""); - return thislogic.equals(otherlogic); + return logic.equals(other.logic); } /** diff --git a/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxPolicies.java b/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxPolicies.java index 922cc247a..bb30f46cf 100644 --- a/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxPolicies.java +++ b/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxPolicies.java @@ -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. @@ -27,18 +27,6 @@ import java.util.Map.Entry; import java.util.NavigableMap; import java.util.Set; import java.util.TreeMap; -import javax.persistence.CascadeType; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.JoinColumn; -import javax.persistence.JoinTable; -import javax.persistence.ManyToMany; -import javax.persistence.Table; -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; @@ -59,30 +47,11 @@ 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. */ -@Entity -@Table(name = "AxPolicies") - -@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; - @EmbeddedId - @XmlElement(name = "key", required = true) private AxArtifactKey key; - - // @formatter:off - @ManyToMany(cascade = CascadeType.ALL) - @JoinTable( - joinColumns = {@JoinColumn(name = "policyMapName", referencedColumnName = "name"), - @JoinColumn(name = "policyMapVersion", referencedColumnName = "version")}, - inverseJoinColumns = {@JoinColumn(name = "policyName", referencedColumnName = "name"), - @JoinColumn(name = "policyVersion", referencedColumnName = "version")}) - @XmlElement(required = true) private Map<AxArtifactKey, AxPolicy> policyMap; - // @formatter:on /** * The Default Constructor creates a {@link AxPolicies} object with a null artifact key and creates an empty event @@ -114,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) { @@ -128,22 +97,6 @@ public class AxPolicies extends AxConcept implements AxConceptGetter<AxPolicy> { } /** - * 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}. */ @Override @@ -166,6 +119,18 @@ public class AxPolicies extends AxConcept implements AxConceptGetter<AxPolicy> { } /** + * {@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. * * @param key the policy container key @@ -204,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); @@ -232,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())); } } @@ -373,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); } /** @@ -390,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); } } diff --git a/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxPolicy.java b/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxPolicy.java index 4baba0029..a47afe4d6 100644 --- a/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxPolicy.java +++ b/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxPolicy.java @@ -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. @@ -21,25 +21,13 @@ 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.persistence.CascadeType; -import javax.persistence.Column; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.JoinColumn; -import javax.persistence.JoinTable; -import javax.persistence.OneToMany; -import javax.persistence.Table; -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; @@ -68,48 +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> */ - -@Entity -@Table(name = "AxPolicy") -@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); - @EmbeddedId - @XmlElement(name = "policyKey", required = true) + @SerializedName("policyKey") private AxArtifactKey key; - - @Column(name = "template") - @XmlElement(required = true) private String template; - // @formatter:off - @OneToMany(cascade = CascadeType.ALL) - @JoinTable(joinColumns = {@JoinColumn(name = "parentKeyName", referencedColumnName = "name"), - @JoinColumn(name = "parentKeyVersion", referencedColumnName = "version")}) - @XmlElement(name = "state", required = true) + @SerializedName("state") private Map<String, AxState> stateMap; - // @formatter:on - - @Column(name = "firstState") - @XmlElement(required = true) private String firstState; /** @@ -134,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, @@ -190,6 +175,20 @@ public class AxPolicy extends AxConcept { } /** + * {@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. * * @param key the key of the policy @@ -264,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); @@ -293,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); } @@ -310,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())); } } @@ -371,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); } diff --git a/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxPolicyModel.java b/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxPolicyModel.java index aec144a46..e119536fb 100644 --- a/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxPolicyModel.java +++ b/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxPolicyModel.java @@ -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. * Modifications Copyright (C) 2021 Bell Canada. All rights reserved. * ================================================================================ @@ -25,19 +25,6 @@ package org.onap.policy.apex.model.policymodel.concepts; import java.util.List; import java.util.Map.Entry; -import javax.persistence.CascadeType; -import javax.persistence.Entity; -import javax.persistence.JoinColumn; -import javax.persistence.OneToOne; -import javax.persistence.Table; -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; @@ -46,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; @@ -55,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; /** @@ -103,51 +88,24 @@ import org.onap.policy.common.utils.validation.Assertions; * <li>All events referred to on direct state outputs must exist * </ol> */ -@Entity -@Table(name = "AxPolicyModel") - -@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; - // @formatter:off - @OneToOne(cascade = CascadeType.ALL) - @JoinColumn(name = "policiesName", referencedColumnName = "name") - @JoinColumn(name = "policiesVersion", referencedColumnName = "version") - @XmlElement(name = "policies", required = true) private AxPolicies policies; - - @OneToOne(cascade = CascadeType.ALL) - @JoinColumn(name = "tasksName", referencedColumnName = "name") - @JoinColumn(name = "tasksVersion", referencedColumnName = "version") - @XmlElement(name = "tasks", required = true) private AxTasks tasks; - - @OneToOne(cascade = CascadeType.ALL) - @JoinColumn(name = "eventsName", referencedColumnName = "name") - @JoinColumn(name = "eventsVersion", referencedColumnName = "version") - @XmlElement(name = "events", required = true) private AxEvents events; - - @OneToOne(cascade = CascadeType.ALL) - @JoinColumn(name = "albumsName", referencedColumnName = "name") - @JoinColumn(name = "albumsVersion", referencedColumnName = "version") - @XmlElement(name = "albums", required = false) - @XmlJavaTypeAdapter(EmptyAlbumsAdapter.class) private AxContextAlbums albums; - - @OneToOne(cascade = CascadeType.ALL) - @JoinColumn(name = "schemasName", referencedColumnName = "name") - @JoinColumn(name = "schemasVersion", referencedColumnName = "version") - @XmlElement(name = "schemas", required = true) private AxContextSchemas schemas; - // @formatter:on /** * The Default Constructor creates a policy model with a null key and empty containers for @@ -173,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()))); } /** @@ -193,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"); @@ -359,7 +318,7 @@ public class AxPolicyModel extends AxModel { validateEventKeys(result); validateContextAlbumKeys(result); - result = validateAllTaskKeys(result); + validateAllTaskKeys(result); validatePolicyKeys(result); return result; @@ -409,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; } @@ -521,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")); @@ -537,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); } /** diff --git a/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxState.java b/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxState.java index 78a96a1f2..ae8efbff4 100644 --- a/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxState.java +++ b/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxState.java @@ -2,7 +2,7 @@ * ============LICENSE_START======================================================= * Copyright (C) 2016-2018 Ericsson. All rights reserved. * Modifications Copyright (C) 2018 Samsung Electronics Co., Ltd. - * 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"); @@ -23,31 +23,13 @@ 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.persistence.AttributeOverride; -import javax.persistence.CascadeType; -import javax.persistence.CollectionTable; -import javax.persistence.Column; -import javax.persistence.ElementCollection; -import javax.persistence.Embedded; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.JoinColumn; -import javax.persistence.JoinTable; -import javax.persistence.ManyToMany; -import javax.persistence.OneToOne; -import javax.persistence.Table; -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; @@ -119,101 +101,28 @@ 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> */ - -@Entity -@Table(name = "AxState") - -@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; - @EmbeddedId - @XmlElement(name = "stateKey", required = true) + + + @SerializedName("stateKey") private AxReferenceKey key; - // @formatter:off - @Embedded - @AttributeOverride(name = "name", column = @Column(name = "inTriggerName")) - @AttributeOverride(name = "version", column = @Column(name = "inTriggerVersion")) - @Column(name = "trigger") - @XmlElement(required = true) private AxArtifactKey trigger; - - @ManyToMany(cascade = CascadeType.ALL) - @JoinTable( - joinColumns = {@JoinColumn(name = "soParentKeyName", referencedColumnName = "parentKeyName"), - @JoinColumn(name = "soParentKeyVersion", referencedColumnName = "parentKeyVersion"), - @JoinColumn(name = "soParentLocalName", referencedColumnName = "parentLocalName"), - @JoinColumn(name = "soLocalName", referencedColumnName = "localName")}, - inverseJoinColumns = {@JoinColumn(name = "stateParentKeyName", referencedColumnName = "parentKeyName"), - @JoinColumn(name = "stateParentKeyVersion", referencedColumnName = "parentKeyVersion"), - @JoinColumn(name = "stateParentLocalName", referencedColumnName = "parentLocalName"), - @JoinColumn(name = "stateLocalName", referencedColumnName = "localName")}) - @XmlElement(name = "stateOutputs", required = true) private Map<String, AxStateOutput> stateOutputs; - @ElementCollection - @CollectionTable(joinColumns = {@JoinColumn(name = "stateParentKeyName", referencedColumnName = "parentKeyName"), - @JoinColumn(name = "stateParentKeyVersion", referencedColumnName = "parentKeyVersion"), - @JoinColumn(name = "stateParentLocalName", referencedColumnName = "parentLocalName"), - @JoinColumn(name = "stateLocalName", referencedColumnName = "localName")}) - @XmlElement(name = "contextAlbumReference") + @SerializedName("contextAlbumReference") private Set<AxArtifactKey> contextAlbumReferenceSet; - @OneToOne - @JoinTable(name = "STATE_TSL_JT", - joinColumns = { - @JoinColumn(name = "tslParentKeyName", referencedColumnName = "parentKeyName", updatable = false, - insertable = false), - @JoinColumn(name = "tslParentKeyVersion", referencedColumnName = "parentKeyVersion", - updatable = false, insertable = false), - @JoinColumn(name = "tslParentLocalName ", referencedColumnName = "parentLocalName", - updatable = false, insertable = false), - @JoinColumn(name = "tslLocalName", referencedColumnName = "localName", updatable = false, - insertable = false)}) - @XmlElement(required = true) private AxTaskSelectionLogic taskSelectionLogic; - - @ManyToMany(cascade = CascadeType.ALL) - @JoinTable( - joinColumns = {@JoinColumn(name = "sflParentKeyName", referencedColumnName = "parentKeyName"), - @JoinColumn(name = "sflParentKeyVersion", referencedColumnName = "parentKeyVersion"), - @JoinColumn(name = "sflParentLocalName", referencedColumnName = "parentLocalName"), - @JoinColumn(name = "sflLocalName", referencedColumnName = "localName")}, - inverseJoinColumns = {@JoinColumn(name = "stateParentKeyName", referencedColumnName = "parentKeyName"), - @JoinColumn(name = "stateParentKeyVersion", referencedColumnName = "parentKeyVersion"), - @JoinColumn(name = "stateParentLocalName", referencedColumnName = "parentLocalName"), - @JoinColumn(name = "stateLocalName", referencedColumnName = "localName")}) - @XmlElement(name = "stateFinalizerLogicMap", required = true) private Map<String, AxStateFinalizerLogic> stateFinalizerLogicMap; - - @Embedded - @AttributeOverride(name = "name", column = @Column(name = "defaultTaskName")) - @AttributeOverride(name = "version", column = @Column(name = "defaultTaskVersion")) - @Column(name = "defaultTask") - @XmlElement(required = true) private AxArtifactKey defaultTask; - @ManyToMany(cascade = CascadeType.ALL) - @JoinTable( - joinColumns = {@JoinColumn(name = "trmParentKeyName", referencedColumnName = "parentKeyName"), - @JoinColumn(name = "trmParentKeyVersion", referencedColumnName = "parentKeyVersion"), - @JoinColumn(name = "trmParentLocalName", referencedColumnName = "parentLocalName"), - @JoinColumn(name = "trmLocalName", referencedColumnName = "localName")}, - inverseJoinColumns = {@JoinColumn(name = "stateParentKeyName", referencedColumnName = "parentKeyName"), - @JoinColumn(name = "stateParentKeyVersion", referencedColumnName = "parentKeyVersion"), - @JoinColumn(name = "stateParentLocalName", referencedColumnName = "parentLocalName"), - @JoinColumn(name = "stateLocalName", referencedColumnName = "localName")}) - @XmlElement(name = "taskReferences", required = true) + @SerializedName("taskReferences") private Map<AxArtifactKey, AxStateTaskReference> taskReferenceMap; - // @formatter:on /** * The Default Constructor creates a state with a null reference key and with default values for all other fields. @@ -283,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)); } /** diff --git a/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxStateFinalizerLogic.java b/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxStateFinalizerLogic.java index 0b5d9751e..31ffedea8 100644 --- a/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxStateFinalizerLogic.java +++ b/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxStateFinalizerLogic.java @@ -1,55 +1,40 @@ /*- * ============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.persistence.Entity; -import javax.persistence.Inheritance; -import javax.persistence.InheritanceType; -import javax.persistence.Table; -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; /** * This class holds State Finalizer Logic for {@link AxState} states in Apex. It is a specialization * of the {@link AxLogic} class, so that State Finalizer Logic in Apex states can be strongly typed. - * + * * <p>State Finalizer Logic is used to select the output {@link AxStateOutput} that a state will use. * The logic uses fields emitted by the executed {@link AxTask} task and information from the * context albums available on a state to decide what state output {@link AxStateOutput} to select * in a given context. State Finalizer Logic must marshal the output fields from the task onto the * output event in whatever manner is appropriate for the domain being handled. - * + * * <p>Validation uses standard Apex Logic validation, see validation in {@link AxLogic}. */ -@Entity -@Table(name = "AxStateFinalizerLogic") -@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS) - -@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; diff --git a/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxStateOutput.java b/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxStateOutput.java index 59433dccd..7d4695290 100644 --- a/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxStateOutput.java +++ b/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxStateOutput.java @@ -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. * Modifications Copyright (C) 2021 Bell Canada. All rights reserved. * ================================================================================ @@ -23,22 +23,9 @@ package org.onap.policy.apex.model.policymodel.concepts; +import com.google.gson.annotations.SerializedName; import java.util.List; import java.util.Set; -import javax.persistence.AttributeOverride; -import javax.persistence.CollectionTable; -import javax.persistence.Column; -import javax.persistence.ElementCollection; -import javax.persistence.Embedded; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.JoinColumn; -import javax.persistence.Table; -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; @@ -69,48 +56,20 @@ import org.onap.policy.common.utils.validation.Assertions; * <li>The next state key must be valid, see validation in {@link AxReferenceKey} * </ol> */ - -@Entity -@Table(name = "AxStateOutput") - -@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; - @EmbeddedId - @XmlElement(name = "key", required = true) @NonNull private AxReferenceKey key; - // @formatter:off - @Embedded - @AttributeOverride(name = "name", column = @Column(name = "outgoingEventName")) - @AttributeOverride(name = "version", column = @Column(name = "outgoingEventVersion")) - @Column(name = "outgoingEvent") - @XmlElement(required = true) @NonNull private AxArtifactKey outgoingEvent; - @ElementCollection - @CollectionTable(joinColumns = {@JoinColumn(name = "stateParentKeyName", referencedColumnName = "parentKeyName"), - @JoinColumn(name = "stateParentKeyVersion", referencedColumnName = "parentKeyVersion"), - @JoinColumn(name = "stateParentLocalName", referencedColumnName = "parentLocalName"), - @JoinColumn(name = "stateLocalName", referencedColumnName = "localName")}) - @XmlElement(name = "outgoingEventReference", required = false) + @SerializedName("outgoingEventReference") private Set<AxArtifactKey> outgoingEventSet; - @Embedded - @AttributeOverride(name = "parentKeyName", column = @Column(name = "nextStateParentKeyName")) - @AttributeOverride(name = "parentKeyVersion", column = @Column(name = "nextStateParentKeyVersion")) - @AttributeOverride(name = "parentLocalName", column = @Column(name = "nextStateParentLocalName")) - @AttributeOverride(name = "localName", column = @Column(name = "nextStateLocalName")) - @Column(name = "nextState") - @XmlElement(required = true) @NonNull private AxReferenceKey nextState; // @formatter:on diff --git a/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxStateTaskOutputType.java b/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxStateTaskOutputType.java index 741eb8833..171747c0c 100644 --- a/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxStateTaskOutputType.java +++ b/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxStateTaskOutputType.java @@ -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, diff --git a/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxStateTaskReference.java b/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxStateTaskReference.java index c98e38fbf..748eca92d 100644 --- a/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxStateTaskReference.java +++ b/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxStateTaskReference.java @@ -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"); @@ -23,18 +23,6 @@ package org.onap.policy.apex.model.policymodel.concepts; import java.util.List; -import javax.persistence.AttributeOverride; -import javax.persistence.Column; -import javax.persistence.Embedded; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.Enumerated; -import javax.persistence.Table; -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; @@ -68,37 +56,12 @@ import org.onap.policy.common.utils.validation.Assertions; * {@link AxReferenceKey} * </ol> */ - -@Entity -@Table(name = "AxStateTaskReference") - -@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; - @EmbeddedId - @XmlElement(name = "key", required = true) private AxReferenceKey key; - - @Enumerated - @Column(name = "outputType") - @XmlElement(required = true) private AxStateTaskOutputType outputType; - - // @formatter:off - @Embedded - @AttributeOverride(name = "parentKeyName", column = @Column(name = "outputParentKeyName")) - @AttributeOverride(name = "parentKeyVersion", column = @Column(name = "outputParentKeyVersion")) - @AttributeOverride(name = "parentLocalName", column = @Column(name = "outputParentLocalName")) - @AttributeOverride(name = "localName", column = @Column(name = "outputLocalName")) - @Column(name = "output") - @XmlElement(required = true) private AxReferenceKey output; - // @formatter:on /** * The Default Constructor creates a state task reference with a null reference key, an diff --git a/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxTask.java b/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxTask.java index 7eba99af0..c8b6baf4b 100644 --- a/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxTask.java +++ b/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxTask.java @@ -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 Bell Canada. All rights reserved. * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); @@ -22,28 +22,13 @@ 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.persistence.CascadeType; -import javax.persistence.CollectionTable; -import javax.persistence.ElementCollection; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.JoinColumn; -import javax.persistence.JoinTable; -import javax.persistence.OneToMany; -import javax.persistence.OneToOne; -import javax.persistence.Table; -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; @@ -81,17 +66,6 @@ import org.onap.policy.common.utils.validation.Assertions; * <li>The task logic must be valid, see validation in {@link AxTaskLogic} * </ol> */ - -@Entity -@Table(name = "AxTask") - -@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 { @@ -99,42 +73,17 @@ public class AxTask extends AxConcept { private static final long serialVersionUID = 5374237330697362762L; - @EmbeddedId - @XmlElement(name = "key", required = true) @NonNull private AxArtifactKey key; - @OneToOne(cascade = CascadeType.ALL) - @JoinTable( - name = "INPUT_EVENT_JT", - joinColumns = {@JoinColumn(name = "inEventTaskName", referencedColumnName = "name", updatable = false), - @JoinColumn(name = "inEventTaskVersion", referencedColumnName = "version", updatable = false)}) - @XmlElement(name = "inputEvent", required = false) private AxEvent inputEvent; - - @OneToMany(cascade = CascadeType.ALL) - @JoinTable( - name = "OUTPUT_EVENT_JT", - joinColumns = {@JoinColumn(name = "outEventTaskName", referencedColumnName = "name", updatable = false), - @JoinColumn(name = "outEventTaskVersion", referencedColumnName = "version", updatable = false)}) - @XmlElement(name = "outputEvents", required = false) private Map<String, AxEvent> outputEvents; - - @OneToMany(cascade = CascadeType.ALL) - @XmlElement(name = "taskParameters", required = true) private Map<String, AxTaskParameter> taskParameters; - // @formatter:off - @ElementCollection - @CollectionTable(joinColumns = {@JoinColumn(name = "contextAlbumName", referencedColumnName = "name"), - @JoinColumn(name = "contextAlbumVersion", referencedColumnName = "version")}) - @XmlElement(name = "contextAlbumReference") + @SerializedName("contextAlbumReference") @NonNull private Set<AxArtifactKey> contextAlbumReferenceSet; - // @formatter:on - @OneToOne(cascade = CascadeType.ALL) - @XmlElement(required = true) @NonNull private AxTaskLogic taskLogic; @@ -194,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)); } /** diff --git a/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxTaskLogic.java b/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxTaskLogic.java index 70b19ec48..8665d9e3e 100644 --- a/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxTaskLogic.java +++ b/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxTaskLogic.java @@ -1,54 +1,39 @@ /*- * ============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.persistence.Entity; -import javax.persistence.Inheritance; -import javax.persistence.InheritanceType; -import javax.persistence.Table; -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 holds Task Logic for {@link AxTask} tasks in Apex. It is a specialization of the * {@link AxLogic} class, so that Task Logic in Apex states can be strongly typed. - * + * * <p>Task Logic is used to execute tasks {@link AxTask} in Apex. The logic uses fields on the incoming * trigger event and information from the context albums available on a task to get context during * execution. The task logic populates the output fields of the task. - * + * * <p>Validation uses standard Apex Logic validation, see validation in {@link AxLogic}. */ -@Entity -@Table(name = "AxTaskLogic") -@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS) - -@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; diff --git a/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxTaskParameter.java b/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxTaskParameter.java index 47c62e6ae..a468ec499 100644 --- a/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxTaskParameter.java +++ b/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxTaskParameter.java @@ -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. @@ -22,15 +22,6 @@ package org.onap.policy.apex.model.policymodel.concepts; import java.util.List; -import javax.persistence.Column; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.Table; -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; @@ -46,24 +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. */ - -@Entity -@Table(name = "AxTaskParameter") - -@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; - @EmbeddedId - @XmlElement(name = "key", required = true) private AxReferenceKey key; - - @Column(name = "defaultValue") - @XmlElement private String defaultValue; /** diff --git a/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxTaskSelectionLogic.java b/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxTaskSelectionLogic.java index 5d6441a4d..b9cfd802d 100644 --- a/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxTaskSelectionLogic.java +++ b/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxTaskSelectionLogic.java @@ -1,53 +1,38 @@ /*- * ============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.persistence.Entity; -import javax.persistence.Inheritance; -import javax.persistence.InheritanceType; -import javax.persistence.Table; -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; /** * This class holds Task Selection Logic for {@link AxState} states in Apex. It is a specialization * of the {@link AxLogic} class, so that Task Selection Logic in Apex states can be strongly typed. - * + * * <p>Task Selection Logic is used to select the task {@link AxTask} that a state will execute. The * logic uses fields on the incoming trigger event and information from the context albums available * on a state to decide what task {@link AxTask} to select for execution in a given context. - * + * * <p>Validation uses standard Apex Logic validation, see validation in {@link AxLogic}. */ -@Entity -@Table(name = "AxTaskSelectionLogic") -@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS) - -@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; diff --git a/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxTasks.java b/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxTasks.java index 73012d8bc..f9ccafd54 100644 --- a/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxTasks.java +++ b/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/AxTasks.java @@ -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. @@ -27,18 +27,6 @@ import java.util.Map.Entry; import java.util.NavigableMap; import java.util.Set; import java.util.TreeMap; -import javax.persistence.CascadeType; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.JoinColumn; -import javax.persistence.JoinTable; -import javax.persistence.ManyToMany; -import javax.persistence.Table; -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; @@ -59,28 +47,11 @@ 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. */ -@Entity -@Table(name = "AxTasks") - -@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; - @EmbeddedId - @XmlElement(name = "key", required = true) private AxArtifactKey key; - - // @formatter:off - @ManyToMany(cascade = CascadeType.ALL) - @JoinTable( - joinColumns = {@JoinColumn(name = "taskMapName", referencedColumnName = "name"), - @JoinColumn(name = "taskMapVersion", referencedColumnName = "version")}, - inverseJoinColumns = {@JoinColumn(name = "taskName", referencedColumnName = "name"), - @JoinColumn(name = "taskVersion", referencedColumnName = "version")}) - @XmlElement(required = true) private Map<AxArtifactKey, AxTask> taskMap; - // @formatter:on /** * The Default Constructor creates a {@link AxTasks} object with a null artifact key and creates @@ -112,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) { @@ -126,23 +97,6 @@ public class AxTasks extends AxConcept implements AxConceptGetter<AxTask> { } /** - * 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}. */ @Override @@ -165,6 +119,14 @@ public class AxTasks extends AxConcept implements AxConceptGetter<AxTask> { } /** + * {@inheritDoc}. + */ + @Override + public void buildReferences() { + taskMap.values().stream().forEach(task -> task.buildReferences()); + } + + /** * Sets the task container key. * * @param key the task container key @@ -203,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); @@ -367,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); } /** @@ -384,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); } } diff --git a/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/package-info.java b/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/package-info.java index cc15a6af5..acf0e8221 100644 --- a/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/package-info.java +++ b/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/concepts/package-info.java @@ -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========================================================= */ @@ -21,15 +22,7 @@ /** * 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 index aa19edf0b..000000000 --- a/model/policy-model/src/main/java/org/onap/policy/apex/model/policymodel/handling/EmptyAlbumsAdapter.java +++ /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); - } - } - -} diff --git a/model/policy-model/src/test/java/org/onap/policy/apex/model/policymodel/concepts/PoliciesTest.java b/model/policy-model/src/test/java/org/onap/policy/apex/model/policymodel/concepts/PoliciesTest.java index e724a4663..526f5a628 100644 --- a/model/policy-model/src/test/java/org/onap/policy/apex/model/policymodel/concepts/PoliciesTest.java +++ b/model/policy-model/src/test/java/org/onap/policy/apex/model/policymodel/concepts/PoliciesTest.java @@ -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()); diff --git a/model/policy-model/src/test/java/org/onap/policy/apex/model/policymodel/concepts/StateTest.java b/model/policy-model/src/test/java/org/onap/policy/apex/model/policymodel/concepts/StateTest.java index 95a91325a..7fbe78078 100644 --- a/model/policy-model/src/test/java/org/onap/policy/apex/model/policymodel/concepts/StateTest.java +++ b/model/policy-model/src/test/java/org/onap/policy/apex/model/policymodel/concepts/StateTest.java @@ -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))); diff --git a/model/policy-model/src/test/java/org/onap/policy/apex/model/policymodel/concepts/TasksTest.java b/model/policy-model/src/test/java/org/onap/policy/apex/model/policymodel/concepts/TasksTest.java index 89dc9a048..9c7866c85 100644 --- a/model/policy-model/src/test/java/org/onap/policy/apex/model/policymodel/concepts/TasksTest.java +++ b/model/policy-model/src/test/java/org/onap/policy/apex/model/policymodel/concepts/TasksTest.java @@ -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)); diff --git a/model/policy-model/src/test/java/org/onap/policy/apex/model/policymodel/handling/ApexPolicyModelTest.java b/model/policy-model/src/test/java/org/onap/policy/apex/model/policymodel/handling/ApexPolicyModelTest.java index 3e3051021..48e4f87f9 100644 --- a/model/policy-model/src/test/java/org/onap/policy/apex/model/policymodel/handling/ApexPolicyModelTest.java +++ b/model/policy-model/src/test/java/org/onap/policy/apex/model/policymodel/handling/ApexPolicyModelTest.java @@ -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"); @@ -27,72 +27,10 @@ import static org.junit.Assert.assertEquals; import org.junit.Before; import org.junit.Test; import org.onap.policy.apex.model.basicmodel.concepts.AxValidationResult; -import org.onap.policy.apex.model.basicmodel.dao.DaoParameters; import org.onap.policy.apex.model.basicmodel.test.TestApexModel; import org.onap.policy.apex.model.policymodel.concepts.AxPolicyModel; public class ApexPolicyModelTest { - TestApexModel<AxPolicyModel> testApexModel; - - /** - * Set up the policy model tests. - * - * @throws Exception on setup errors - */ - @Before - public void setup() throws Exception { - testApexModel = new TestApexModel<AxPolicyModel>(AxPolicyModel.class, new SupportApexPolicyModelCreator()); - } - - @Test - public void testModelValid() throws Exception { - final AxValidationResult result = testApexModel.testApexModelValid(); - assertEquals(VALID_MODEL_STRING, result.toString()); - } - - @Test - public void testApexModelVaidateObservation() throws Exception { - final AxValidationResult result = testApexModel.testApexModelVaidateObservation(); - assertEquals(OBSERVATION_MODEL_STRING, result.toString()); - } - - @Test - public void testApexModelVaidateWarning() throws Exception { - final AxValidationResult result = testApexModel.testApexModelVaidateWarning(); - assertEquals(WARNING_MODEL_STRING, result.toString()); - } - - @Test - public void testModelVaidateInvalidModel() throws Exception { - final AxValidationResult result = testApexModel.testApexModelVaidateInvalidModel(); - assertEquals(INVALID_MODEL_STRING, result.toString()); - } - - @Test - public void testModelVaidateMalstructured() throws Exception { - final AxValidationResult result = testApexModel.testApexModelVaidateMalstructured(); - assertEquals(INVALID_MODEL_MALSTRUCTURED_STRING, result.toString()); - } - - @Test - public void testModelWriteReadXml() throws Exception { - testApexModel.testApexModelWriteReadXml(); - } - - @Test - public void testModelWriteReadJson() throws Exception { - testApexModel.testApexModelWriteReadJson(); - } - - @Test - public void testModelWriteReadJpa() throws Exception { - final DaoParameters DaoParameters = new DaoParameters(); - DaoParameters.setPluginClass("org.onap.policy.apex.model.basicmodel.dao.impl.DefaultApexDao"); - DaoParameters.setPersistenceUnit("DAOTest"); - - testApexModel.testApexModelWriteReadJpa(DaoParameters); - } - private static final String VALID_MODEL_STRING = "***validation of model successful***"; private static final String OBSERVATION_MODEL_STRING = "\n" @@ -150,4 +88,51 @@ public class ApexPolicyModelTest { + "AxArtifactKey:(name=policyModel_Policies,version=0.0.1)" + ":org.onap.policy.apex.model.policymodel.concepts.AxPolicies:INVALID:policyMap may not be empty\n" + "********************************"; + + TestApexModel<AxPolicyModel> testApexModel; + + /** + * Set up the policy model tests. + * + * @throws Exception on setup errors + */ + @Before + public void setup() throws Exception { + testApexModel = new TestApexModel<AxPolicyModel>(AxPolicyModel.class, new SupportApexPolicyModelCreator()); + } + + @Test + public void testModelValid() throws Exception { + final AxValidationResult result = testApexModel.testApexModelValid(); + assertEquals(VALID_MODEL_STRING, result.toString()); + } + + @Test + public void testApexModelVaidateObservation() throws Exception { + final AxValidationResult result = testApexModel.testApexModelVaidateObservation(); + assertEquals(OBSERVATION_MODEL_STRING, result.toString()); + } + + @Test + public void testApexModelVaidateWarning() throws Exception { + final AxValidationResult result = testApexModel.testApexModelVaidateWarning(); + assertEquals(WARNING_MODEL_STRING, result.toString()); + } + + @Test + public void testModelVaidateInvalidModel() throws Exception { + final AxValidationResult result = testApexModel.testApexModelVaidateInvalidModel(); + assertEquals(INVALID_MODEL_STRING, result.toString()); + } + + @Test + public void testModelVaidateMalstructured() throws Exception { + final AxValidationResult result = testApexModel.testApexModelVaidateMalstructured(); + assertEquals(INVALID_MODEL_MALSTRUCTURED_STRING, result.toString()); + } + + @Test + public void testModelWriteReadJson() throws Exception { + testApexModel.testApexModelWriteReadJson(); + } } diff --git a/model/policy-model/src/test/java/org/onap/policy/apex/model/policymodel/handling/PolicyModelComparerTest.java b/model/policy-model/src/test/java/org/onap/policy/apex/model/policymodel/handling/PolicyModelComparerTest.java index 0a1e80a20..691880d6b 100644 --- a/model/policy-model/src/test/java/org/onap/policy/apex/model/policymodel/handling/PolicyModelComparerTest.java +++ b/model/policy-model/src/test/java/org/onap/policy/apex/model/policymodel/handling/PolicyModelComparerTest.java @@ -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. @@ -43,66 +43,58 @@ public class PolicyModelComparerTest { String resultString = policyModelComparer.asString(false, false); String checkString = TextFileUtils - .getTextFileAsString("src/test/resources/checkFiles/PolicyModelComparisonIdenticalVerboseValues.txt"); - assertEquals(resultString.trim().replaceAll("\\s+", ""), - checkString.trim().replaceAll("\\s+", "")); + .getTextFileAsString("src/test/resources/checkFiles/PolicyModelComparisonIdenticalVerboseValues.txt"); + assertEquals(resultString.trim().replaceAll("\\s+", ""), checkString.trim().replaceAll("\\s+", "")); resultString = policyModelComparer.asString(false, true); checkString = TextFileUtils - .getTextFileAsString("src/test/resources/checkFiles/PolicyModelComparisonIdenticalVerboseKeys.txt"); - assertEquals(checkString.trim().replaceAll("\\s+", ""), - resultString.trim().replaceAll("\\s+", "")); + .getTextFileAsString("src/test/resources/checkFiles/PolicyModelComparisonIdenticalVerboseKeys.txt"); + assertEquals(checkString.trim().replaceAll("\\s+", ""), resultString.trim().replaceAll("\\s+", "")); resultString = policyModelComparer.asString(true, false); - checkString = TextFileUtils - .getTextFileAsString("src/test/resources/checkFiles/PolicyModelComparisonIdenticalTerse.txt"); - assertEquals(checkString.trim().replaceAll("\\s+", ""), - resultString.trim().replaceAll("\\s+", "")); + checkString = + TextFileUtils.getTextFileAsString("src/test/resources/checkFiles/PolicyModelComparisonIdenticalTerse.txt"); + assertEquals(checkString.trim().replaceAll("\\s+", ""), resultString.trim().replaceAll("\\s+", "")); resultString = policyModelComparer.asString(true, true); - checkString = TextFileUtils - .getTextFileAsString("src/test/resources/checkFiles/PolicyModelComparisonIdenticalTerse.txt"); - assertEquals(checkString.trim().replaceAll("\\s+", ""), - resultString.trim().replaceAll("\\s+", "")); + checkString = + TextFileUtils.getTextFileAsString("src/test/resources/checkFiles/PolicyModelComparisonIdenticalTerse.txt"); + assertEquals(checkString.trim().replaceAll("\\s+", ""), resultString.trim().replaceAll("\\s+", "")); final AxKeyInfo leftOnlyKeyInfo = new AxKeyInfo(new AxArtifactKey("LeftOnlyKeyInfo", "0.0.1"), - UUID.fromString("ce9168c-e6df-414f-9646-6da464b6f000"), "Left only key info"); + UUID.fromString("ce9168c-e6df-414f-9646-6da464b6f000"), "Left only key info"); final AxKeyInfo rightOnlyKeyInfo = new AxKeyInfo(new AxArtifactKey("RightOnlyKeyInfo", "0.0.1"), - UUID.fromString("ce9168c-e6df-414f-9646-6da464b6f001"), "Right only key info"); + UUID.fromString("ce9168c-e6df-414f-9646-6da464b6f001"), "Right only key info"); leftApexModel.getKeyInformation().getKeyInfoMap().put(leftOnlyKeyInfo.getKey(), leftOnlyKeyInfo); rightApexModel.getKeyInformation().getKeyInfoMap().put(rightOnlyKeyInfo.getKey(), rightOnlyKeyInfo); leftApexModel.getKeyInformation().getKeyInfoMap().get(new AxArtifactKey("inEvent", "0.0.1")) - .setDescription("Left InEvent Description"); + .setDescription("Left InEvent Description"); rightApexModel.getKeyInformation().getKeyInfoMap().get(new AxArtifactKey("inEvent", "0.0.1")) - .setDescription("Right InEvent Description"); + .setDescription("Right InEvent Description"); policyModelComparer = new PolicyModelComparer(leftApexModel, rightApexModel); resultString = policyModelComparer.asString(false, false); checkString = TextFileUtils - .getTextFileAsString("src/test/resources/checkFiles/PolicyModelComparisonDifferentVerboseValues.txt"); - assertEquals(resultString.trim().replaceAll("\\s+", ""), - checkString.trim().replaceAll("\\s+", "")); + .getTextFileAsString("src/test/resources/checkFiles/PolicyModelComparisonDifferentVerboseValues.txt"); + assertEquals(resultString.trim().replaceAll("\\s+", ""), checkString.trim().replaceAll("\\s+", "")); resultString = policyModelComparer.asString(false, true); checkString = TextFileUtils - .getTextFileAsString("src/test/resources/checkFiles/PolicyModelComparisonDifferentVerboseKeys.txt"); - assertEquals(checkString.trim().replaceAll("\\s+", ""), - resultString.trim().replaceAll("\\s+", "")); + .getTextFileAsString("src/test/resources/checkFiles/PolicyModelComparisonDifferentVerboseKeys.txt"); + assertEquals(checkString.trim().replaceAll("\\s+", ""), resultString.trim().replaceAll("\\s+", "")); resultString = policyModelComparer.asString(true, false); checkString = TextFileUtils - .getTextFileAsString("src/test/resources/checkFiles/PolicyModelComparisonDifferentTerseValues.txt"); - assertEquals(checkString.trim().replaceAll("\\s+", ""), - resultString.trim().replaceAll("\\s+", "")); + .getTextFileAsString("src/test/resources/checkFiles/PolicyModelComparisonDifferentTerseValues.txt"); + assertEquals(checkString.trim().replaceAll("\\s+", ""), resultString.trim().replaceAll("\\s+", "")); resultString = policyModelComparer.asString(true, true); checkString = TextFileUtils - .getTextFileAsString("src/test/resources/checkFiles/PolicyModelComparisonDifferentTerseKeys.txt"); - assertEquals(checkString.trim().replaceAll("\\s+", ""), - resultString.trim().replaceAll("\\s+", "")); + .getTextFileAsString("src/test/resources/checkFiles/PolicyModelComparisonDifferentTerseKeys.txt"); + assertEquals(checkString.trim().replaceAll("\\s+", ""), resultString.trim().replaceAll("\\s+", "")); assertNotNull(policyModelComparer.getContextAlbumComparisonResult()); assertNotNull(policyModelComparer.getContextAlbumKeyDifference()); @@ -121,6 +113,6 @@ public class PolicyModelComparerTest { assertNotNull(new PolicyComparer().compare(leftApexModel.getPolicies(), rightApexModel.getPolicies())); assertEquals("****** policy map differences ******\n*** context s", - policyModelComparer.toString().substring(0, 50)); + policyModelComparer.toString().substring(0, 50)); } } diff --git a/model/policy-model/src/test/resources/META-INF/persistence.xml b/model/policy-model/src/test/resources/META-INF/persistence.xml deleted file mode 100644 index 0eee729a1..000000000 --- a/model/policy-model/src/test/resources/META-INF/persistence.xml +++ /dev/null @@ -1,67 +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========================================================= ---> - -<persistence xmlns="http://java.sun.com/xml/ns/persistence" version="2.0"> - <persistence-unit name="DAOTest" transaction-type="RESOURCE_LOCAL"> - <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider> - - <class>org.onap.policy.apex.model.basicmodel.dao.converters.CDataConditioner</class> - <class>org.onap.policy.apex.model.basicmodel.dao.converters.Uuid2String</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxConcept</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxKeyInfo</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxKeyInformation</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxModel</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.TestEntity</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextSchema</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextSchemas</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextAlbum</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextAlbums</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextModel</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxField</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxInputField</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxOutputField</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxEvent</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxEvents</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxEventModel</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxLogic</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTaskParameter</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTaskLogic</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTask</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTasks</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTaskSelectionLogic</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxStateFinalizerLogic</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxStateOutput</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxStateTaskReference</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxState</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxPolicy</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxPolicies</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxPolicyModel</class> - - <properties> - <property name="javax.persistence.jdbc.url" value="jdbc:h2:mem:testdb" /> - <property name="javax.persistence.jdbc.driver" value="org.h2.Driver" /> - <property name="eclipselink.ddl-generation" value="drop-and-create-tables" /> - <property name="eclipselink.ddl-generation.output-mode" value="database" /> - <property name="eclipselink.logging.level" value="INFO" /> - </properties> - </persistence-unit> -</persistence> diff --git a/model/policy-model/src/test/resources/checkFiles/PolicyModelComparisonDifferentTerseKeys.txt b/model/policy-model/src/test/resources/checkFiles/PolicyModelComparisonDifferentTerseKeys.txt index 57b790222..4d00394b7 100644 --- a/model/policy-model/src/test/resources/checkFiles/PolicyModelComparisonDifferentTerseKeys.txt +++ b/model/policy-model/src/test/resources/checkFiles/PolicyModelComparisonDifferentTerseKeys.txt @@ -9,7 +9,4 @@ key=AxArtifactKey:(name=LeftOnlyKeyInfo,version=0.0.1) *** list of keys on right only key=AxArtifactKey:(name=RightOnlyKeyInfo,version=0.0.1) -*** list of differing entries between left and right -key=AxArtifactKey:(name=inEvent,version=0.0.1) *********************************** - diff --git a/model/policy-model/src/test/resources/checkFiles/PolicyModelComparisonDifferentTerseValues.txt b/model/policy-model/src/test/resources/checkFiles/PolicyModelComparisonDifferentTerseValues.txt index e3ba6dc7c..82fecd990 100644 --- a/model/policy-model/src/test/resources/checkFiles/PolicyModelComparisonDifferentTerseValues.txt +++ b/model/policy-model/src/test/resources/checkFiles/PolicyModelComparisonDifferentTerseValues.txt @@ -9,6 +9,4 @@ key=AxArtifactKey:(name=LeftOnlyKeyInfo,version=0.0.1),value=AxKeyInfo:(artifactId=AxArtifactKey:(name=LeftOnlyKeyInfo,version=0.0.1),uuid=0ce9168c-e6df-414f-9646-6da464b6f000,description=Left only key info) *** list of keys on right only key=AxArtifactKey:(name=RightOnlyKeyInfo,version=0.0.1),value=AxKeyInfo:(artifactId=AxArtifactKey:(name=RightOnlyKeyInfo,version=0.0.1),uuid=0ce9168c-e6df-414f-9646-6da464b6f001,description=Right only key info) -*** list of differing entries between left and right -key=AxArtifactKey:(name=inEvent,version=0.0.1),values={AxKeyInfo:(artifactId=AxArtifactKey:(name=inEvent,version=0.0.1),uuid=0ce9168c-e6df-414f-9646-6da464b6e011,description=Left InEvent Description)AxKeyInfo:(artifactId=AxArtifactKey:(name=inEvent,version=0.0.1),uuid=0ce9168c-e6df-414f-9646-6da464b6e011,description=Right InEvent Description),} *********************************** diff --git a/model/policy-model/src/test/resources/checkFiles/PolicyModelComparisonDifferentVerboseKeys.txt b/model/policy-model/src/test/resources/checkFiles/PolicyModelComparisonDifferentVerboseKeys.txt index 926a8d764..38623c32a 100644 --- a/model/policy-model/src/test/resources/checkFiles/PolicyModelComparisonDifferentVerboseKeys.txt +++ b/model/policy-model/src/test/resources/checkFiles/PolicyModelComparisonDifferentVerboseKeys.txt @@ -47,8 +47,7 @@ left key AxArtifactKey:(name=PolicyModel,version=0.0.1) equals right key AxArtif key=AxArtifactKey:(name=LeftOnlyKeyInfo,version=0.0.1) *** list of keys on right only key=AxArtifactKey:(name=RightOnlyKeyInfo,version=0.0.1) -*** list of differing entries between left and right -key=AxArtifactKey:(name=inEvent,version=0.0.1) +*** all values in left and right are identical *** list of identical entries in left and right key=AxArtifactKey:(name=ContextSchemas,version=0.0.1) key=AxArtifactKey:(name=KeyInfoMapKey,version=0.0.1) @@ -61,11 +60,11 @@ key=AxArtifactKey:(name=contextAlbum1,version=0.0.1) key=AxArtifactKey:(name=eventContextItem0,version=0.0.1) key=AxArtifactKey:(name=eventContextItem1,version=0.0.1) key=AxArtifactKey:(name=events,version=0.0.1) +key=AxArtifactKey:(name=inEvent,version=0.0.1) key=AxArtifactKey:(name=outEvent0,version=0.0.1) key=AxArtifactKey:(name=outEvent1,version=0.0.1) key=AxArtifactKey:(name=policies,version=0.0.1) key=AxArtifactKey:(name=policy,version=0.0.1) key=AxArtifactKey:(name=task,version=0.0.1) key=AxArtifactKey:(name=tasks,version=0.0.1) -*********************************** - +***********************************
\ No newline at end of file diff --git a/model/policy-model/src/test/resources/checkFiles/PolicyModelComparisonDifferentVerboseValues.txt b/model/policy-model/src/test/resources/checkFiles/PolicyModelComparisonDifferentVerboseValues.txt index 77d17f679..53cadd979 100644 --- a/model/policy-model/src/test/resources/checkFiles/PolicyModelComparisonDifferentVerboseValues.txt +++ b/model/policy-model/src/test/resources/checkFiles/PolicyModelComparisonDifferentVerboseValues.txt @@ -6,10 +6,10 @@ left key AxArtifactKey:(name=PolicyModel,version=0.0.1) equals right key AxArtif *** all right keys in left *** all values in left and right are identical *** list of identical entries in left and right -key=AxArtifactKey:(name=MapType,version=0.0.1),value=AxContextSchema(key=AxArtifactKey:(name=MapType,version=0.0.1),schemaFlavour=Java,schemaDefinition=org.onap.policy.apex.model.policymodel.concepts.TestContextItem00A) -key=AxArtifactKey:(name=StringType,version=0.0.1),value=AxContextSchema(key=AxArtifactKey:(name=StringType,version=0.0.1),schemaFlavour=Java,schemaDefinition=org.onap.policy.apex.model.policymodel.concepts.TestContextItem000) -key=AxArtifactKey:(name=eventContextItem0,version=0.0.1),value=AxContextSchema(key=AxArtifactKey:(name=eventContextItem0,version=0.0.1),schemaFlavour=Java,schemaDefinition=java.lang.String) -key=AxArtifactKey:(name=eventContextItem1,version=0.0.1),value=AxContextSchema(key=AxArtifactKey:(name=eventContextItem1,version=0.0.1),schemaFlavour=Java,schemaDefinition=java.lang.Long) +key=AxArtifactKey:(name=MapType,version=0.0.1),value=AxContextSchema(key=AxArtifactKey:(name=MapType,version=0.0.1), schemaFlavour=Java, schemaDefinition=org.onap.policy.apex.model.policymodel.concepts.TestContextItem00A) +key=AxArtifactKey:(name=StringType,version=0.0.1),value=AxContextSchema(key=AxArtifactKey:(name=StringType,version=0.0.1), schemaFlavour=Java, schemaDefinition=org.onap.policy.apex.model.policymodel.concepts.TestContextItem000) +key=AxArtifactKey:(name=eventContextItem0,version=0.0.1),value=AxContextSchema(key=AxArtifactKey:(name=eventContextItem0,version=0.0.1), schemaFlavour=Java, schemaDefinition=java.lang.String) +key=AxArtifactKey:(name=eventContextItem1,version=0.0.1),value=AxContextSchema(key=AxArtifactKey:(name=eventContextItem1,version=0.0.1), schemaFlavour=Java, schemaDefinition=java.lang.Long) *** event differences *** left key AxArtifactKey:(name=PolicyModel,version=0.0.1) equals right key AxArtifactKey:(name=PolicyModel,version=0.0.1) *** all left keys in right @@ -25,8 +25,8 @@ left key AxArtifactKey:(name=PolicyModel,version=0.0.1) equals right key AxArtif *** all right keys in left *** all values in left and right are identical *** list of identical entries in left and right -key=AxArtifactKey:(name=contextAlbum0,version=0.0.1),value=AxContextAlbum(key=AxArtifactKey:(name=contextAlbum0,version=0.0.1),scope=APPLICATION,isWritable=true,itemSchema=AxArtifactKey:(name=MapType,version=0.0.1)) -key=AxArtifactKey:(name=contextAlbum1,version=0.0.1),value=AxContextAlbum(key=AxArtifactKey:(name=contextAlbum1,version=0.0.1),scope=GLOBAL,isWritable=false,itemSchema=AxArtifactKey:(name=StringType,version=0.0.1)) +key=AxArtifactKey:(name=contextAlbum0,version=0.0.1),value=AxContextAlbum(key=AxArtifactKey:(name=contextAlbum0,version=0.0.1), scope=APPLICATION, isWritable=true, itemSchema=AxArtifactKey:(name=MapType,version=0.0.1)) +key=AxArtifactKey:(name=contextAlbum1,version=0.0.1),value=AxContextAlbum(key=AxArtifactKey:(name=contextAlbum1,version=0.0.1), scope=GLOBAL, isWritable=false, itemSchema=AxArtifactKey:(name=StringType,version=0.0.1)) *** task differences *** left key AxArtifactKey:(name=PolicyModel,version=0.0.1) equals right key AxArtifactKey:(name=PolicyModel,version=0.0.1) *** all left keys in right @@ -47,8 +47,7 @@ left key AxArtifactKey:(name=PolicyModel,version=0.0.1) equals right key AxArtif key=AxArtifactKey:(name=LeftOnlyKeyInfo,version=0.0.1),value=AxKeyInfo:(artifactId=AxArtifactKey:(name=LeftOnlyKeyInfo,version=0.0.1),uuid=0ce9168c-e6df-414f-9646-6da464b6f000,description=Left only key info) *** list of keys on right only key=AxArtifactKey:(name=RightOnlyKeyInfo,version=0.0.1),value=AxKeyInfo:(artifactId=AxArtifactKey:(name=RightOnlyKeyInfo,version=0.0.1),uuid=0ce9168c-e6df-414f-9646-6da464b6f001,description=Right only key info) -*** list of differing entries between left and right -key=AxArtifactKey:(name=inEvent,version=0.0.1),values={AxKeyInfo:(artifactId=AxArtifactKey:(name=inEvent,version=0.0.1),uuid=0ce9168c-e6df-414f-9646-6da464b6e011,description=Left InEvent Description)AxKeyInfo:(artifactId=AxArtifactKey:(name=inEvent,version=0.0.1),uuid=0ce9168c-e6df-414f-9646-6da464b6e011,description=Right InEvent Description),} +*** all values in left and right are identical *** list of identical entries in left and right key=AxArtifactKey:(name=ContextSchemas,version=0.0.1),value=AxKeyInfo:(artifactId=AxArtifactKey:(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=AxArtifactKey:(name=KeyInfoMapKey,version=0.0.1),value=AxKeyInfo:(artifactId=AxArtifactKey:(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") @@ -61,6 +60,7 @@ key=AxArtifactKey:(name=contextAlbum1,version=0.0.1),value=AxKeyInfo:(artifactId key=AxArtifactKey:(name=eventContextItem0,version=0.0.1),value=AxKeyInfo:(artifactId=AxArtifactKey:(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=AxArtifactKey:(name=eventContextItem1,version=0.0.1),value=AxKeyInfo:(artifactId=AxArtifactKey:(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=AxArtifactKey:(name=events,version=0.0.1),value=AxKeyInfo:(artifactId=AxArtifactKey:(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=AxArtifactKey:(name=inEvent,version=0.0.1),value=AxKeyInfo:(artifactId=AxArtifactKey:(name=inEvent,version=0.0.1),uuid=0ce9168c-e6df-414f-9646-6da464b6e011,description=Left InEvent Description) key=AxArtifactKey:(name=outEvent0,version=0.0.1),value=AxKeyInfo:(artifactId=AxArtifactKey:(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=AxArtifactKey:(name=outEvent1,version=0.0.1),value=AxKeyInfo:(artifactId=AxArtifactKey:(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=AxArtifactKey:(name=policies,version=0.0.1),value=AxKeyInfo:(artifactId=AxArtifactKey:(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") diff --git a/packages/apex-pdp-package-full/pom.xml b/packages/apex-pdp-package-full/pom.xml index c2fb7e8e0..5dc4f88be 100644 --- a/packages/apex-pdp-package-full/pom.xml +++ b/packages/apex-pdp-package-full/pom.xml @@ -1,7 +1,7 @@ <!-- ============LICENSE_START======================================================= Copyright (C) 2018 Ericsson. All rights reserved. - Modifications Copyright (C) 2019-2020 Nordix Foundation + Modifications Copyright (C) 2019-2020, 2022 Nordix Foundation Modifications Copyright (C) 2019-2020 Bell Canada. Modifications Copyright (C) 2020 AT&T Intellectual Property. All rights reserved. ================================================================================ @@ -245,6 +245,18 @@ </dependencies> <build> + <filters> + <filter>src/main/resources/properties/db.properties</filter> + </filters> + <resources> + <resource> + <directory>src/main/resources/META-INF</directory> + <filtering>true</filtering> + <includes> + <include>**/*.xml</include> + </includes> + </resource> + </resources> <plugins> <!-- Copy required resources and examples --> <plugin> diff --git a/packages/apex-pdp-package-full/src/main/resources/META-INF/persistence.xml b/packages/apex-pdp-package-full/src/main/resources/META-INF/persistence.xml deleted file mode 100644 index 61f5409bd..000000000 --- a/packages/apex-pdp-package-full/src/main/resources/META-INF/persistence.xml +++ /dev/null @@ -1,263 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - ============LICENSE_START======================================================= - Copyright (C) 2016-2018 Ericsson. All rights reserved. - Modifications Copyright (C) 2019-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========================================================= ---> - -<persistence xmlns="http://java.sun.com/xml/ns/persistence" version="2.0"> - <persistence-unit name="org.onap.policy.apex.core.model.eclipselink.runtime" - transaction-type="RESOURCE_LOCAL"> - <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider> - - <class>org.onap.policy.apex.core.basicmodel.dao.converters.UUID2String</class> - <class>org.onap.policy.apex.core.basicmodel.concepts.AxArtifactKey</class> - <class>org.onap.policy.apex.core.basicmodel.concepts.AxConcept</class> - <class>org.onap.policy.apex.core.basicmodel.concepts.AxDataType</class> - <class>org.onap.policy.apex.core.basicmodel.concepts.AxKeyInfo</class> - <class>org.onap.policy.apex.core.basicmodel.concepts.AxKeyInformation</class> - <class>org.onap.policy.apex.core.basicmodel.concepts.AxModel</class> - <class>org.onap.policy.apex.core.basicmodel.concepts.TestEntity</class> - <class>org.onap.policy.apex.core.contextmodel.concepts.AxContextType</class> - <class>org.onap.policy.apex.core.contextmodel.concepts.AxContextItem</class> - <class>org.onap.policy.apex.core.contextmodel.concepts.AxContextItemTemplate</class> - <class>org.onap.policy.apex.core.contextmodel.concepts.AxContextScope</class> - <class>org.onap.policy.apex.core.contextmodel.concepts.AxContextType</class> - <class>org.onap.policy.apex.core.contextmodel.concepts.AxContextMap</class> - <class>org.onap.policy.apex.core.contextmodel.concepts.AxContext</class> - <class>org.onap.policy.apex.core.contextmodel.concepts.AxContextModel</class> - <class>org.onap.policy.apex.core.eventmodel.concepts.AxEventParameter</class> - <class>org.onap.policy.apex.core.eventmodel.concepts.AxEvent</class> - <class>org.onap.policy.apex.core.eventmodel.concepts.AxEvents</class> - <class>org.onap.policy.apex.core.eventmodel.concepts.AxEventModel</class> - <class>org.onap.policy.apex.core.policymodel.concepts.AxLogic</class> - <class>org.onap.policy.apex.core.policymodel.concepts.AxTaskParameter</class> - <class>org.onap.policy.apex.core.policymodel.concepts.AxTask</class> - <class>org.onap.policy.apex.core.policymodel.concepts.AxTasks</class> - <class>org.onap.policy.apex.core.policymodel.concepts.AxState</class> - <class>org.onap.policy.apex.core.policymodel.concepts.AxPolicy</class> - <class>org.onap.policy.apex.core.policymodel.concepts.AxPolicies</class> - <class>org.onap.policy.apex.core.policymodel.concepts.AxPolicyModel</class> - <class>org.onap.policy.apex.core.enginemodel.concepts.AxEngineStats</class> - <class>org.onap.policy.apex.core.enginemodel.concepts.AxEngineModel</class> - <class>org.onap.policy.apex.domains.aadm.concepts.ENodeBStatus</class> - <class>org.onap.policy.apex.domains.aadm.concepts.IMSIStatus</class> - <class>org.onap.policy.apex.domains.aadm.concepts.IPAddressStatus</class> - <class>org.onap.policy.apex.domains.adaptive.concepts.AnomalyDetection</class> - <class>org.onap.policy.apex.domains.adaptive.concepts.AutoLearn</class> - <class>org.onap.policy.apex.domains.vpn.concepts.VPNCustomer</class> - <class>org.onap.policy.apex.domains.vpn.concepts.VPNLink</class> - <class>org.onap.policy.apex.domains.vpn.concepts.VPNProblem</class> - - <exclude-unlisted-classes>false</exclude-unlisted-classes> - <properties> - <property name="eclipselink.target-database" value="MySQL" /> - <property name="javax.persistence.jdbc.driver" value="org.mariadb.jdbc.Driver" /> - <property name="javax.persistence.jdbc.url" value="jdbc:mariadb://localhost:5432/apex" /> - <property name="javax.persistence.jdbc.user" value="policy" /> - <property name="javax.persistence.jdbc.password" value="P01icY" /> - - <property name="eclipselink.ddl-generation" value="create-or-extend-tables" /> - <property name="eclipselink.logging.level" value="INFO" /> - - </properties> - </persistence-unit> - - <persistence-unit name="org.onap.policy.apex.core.model.eclipselink.test" - transaction-type="RESOURCE_LOCAL"> - <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider> - - <class>org.onap.policy.apex.core.basicmodel.dao.converters.UUID2String</class> - <class>org.onap.policy.apex.core.basicmodel.concepts.AxArtifactKey</class> - <class>org.onap.policy.apex.core.basicmodel.concepts.AxConcept</class> - <class>org.onap.policy.apex.core.basicmodel.concepts.AxDataType</class> - <class>org.onap.policy.apex.core.basicmodel.concepts.AxKeyInfo</class> - <class>org.onap.policy.apex.core.basicmodel.concepts.AxKeyInformation</class> - <class>org.onap.policy.apex.core.basicmodel.concepts.AxModel</class> - <class>org.onap.policy.apex.core.basicmodel.concepts.TestEntity</class> - <class>org.onap.policy.apex.core.contextmodel.concepts.AxContextType</class> - <class>org.onap.policy.apex.core.contextmodel.concepts.AxContextItem</class> - <class>org.onap.policy.apex.core.contextmodel.concepts.AxContextItemTemplate</class> - <class>org.onap.policy.apex.core.contextmodel.concepts.AxContextScope</class> - <class>org.onap.policy.apex.core.contextmodel.concepts.AxContextType</class> - <class>org.onap.policy.apex.core.contextmodel.concepts.AxContextMap</class> - <class>org.onap.policy.apex.core.contextmodel.concepts.AxContext</class> - <class>org.onap.policy.apex.core.contextmodel.concepts.AxContextModel</class> - <class>org.onap.policy.apex.core.eventmodel.concepts.AxEventParameter</class> - <class>org.onap.policy.apex.core.eventmodel.concepts.AxEvent</class> - <class>org.onap.policy.apex.core.eventmodel.concepts.AxEvents</class> - <class>org.onap.policy.apex.core.eventmodel.concepts.AxEventModel</class> - <class>org.onap.policy.apex.core.policymodel.concepts.AxLogic</class> - <class>org.onap.policy.apex.core.policymodel.concepts.AxTaskParameter</class> - <class>org.onap.policy.apex.core.policymodel.concepts.AxTask</class> - <class>org.onap.policy.apex.core.policymodel.concepts.AxTasks</class> - <class>org.onap.policy.apex.core.policymodel.concepts.AxState</class> - <class>org.onap.policy.apex.core.policymodel.concepts.AxPolicy</class> - <class>org.onap.policy.apex.core.policymodel.concepts.AxPolicies</class> - <class>org.onap.policy.apex.core.policymodel.concepts.AxPolicyModel</class> - <class>org.onap.policy.apex.core.enginemodel.concepts.AxEngineStats</class> - <class>org.onap.policy.apex.core.enginemodel.concepts.AxEngineModel</class> - <class>org.onap.policy.apex.domains.aadm.concepts.ENodeBStatus</class> - <class>org.onap.policy.apex.domains.aadm.concepts.IMSIStatus</class> - <class>org.onap.policy.apex.domains.aadm.concepts.IPAddressStatus</class> - <class>org.onap.policy.apex.domains.adaptive.concepts.AnomalyDetection</class> - <class>org.onap.policy.apex.domains.adaptive.concepts.AutoLearn</class> - <class>org.onap.policy.apex.domains.vpn.concepts.VPNCustomer</class> - <class>org.onap.policy.apex.domains.vpn.concepts.VPNLink</class> - <class>org.onap.policy.apex.domains.vpn.concepts.VPNProblem</class> - - <exclude-unlisted-classes>false</exclude-unlisted-classes> - <properties> - <property name="eclipselink.target-database" value="MySQL" /> - <property name="javax.persistence.jdbc.driver" value="org.mariadb.jdbc.Driver" /> - <property name="javax.persistence.jdbc.url" value="jdbc:mariadb://localhost:5432/apex_test" /> - <property name="javax.persistence.jdbc.user" value="policy" /> - <property name="javax.persistence.jdbc.password" value="P01icY" /> - - <property name="eclipselink.ddl-generation" value="drop-and-create-tables" /> - <property name="eclipselink.logging.level" value="INFO" /> - - </properties> - </persistence-unit> - - <persistence-unit name="org.onap.policy.apex.core.model.hibernate.runtime"> - <provider>org.hibernate.jpa.HibernatePersistenceProvider</provider> - - <class>org.onap.policy.apex.core.basicmodel.dao.converters.UUID2String</class> - <class>org.onap.policy.apex.core.basicmodel.concepts.AxArtifactKey</class> - <class>org.onap.policy.apex.core.basicmodel.concepts.AxConcept</class> - <class>org.onap.policy.apex.core.basicmodel.concepts.AxDataType</class> - <class>org.onap.policy.apex.core.basicmodel.concepts.AxKeyInfo</class> - <class>org.onap.policy.apex.core.basicmodel.concepts.AxKeyInformation</class> - <class>org.onap.policy.apex.core.basicmodel.concepts.AxModel</class> - <class>org.onap.policy.apex.core.basicmodel.concepts.TestEntity</class> - <class>org.onap.policy.apex.core.contextmodel.concepts.AxContextType</class> - <class>org.onap.policy.apex.core.contextmodel.concepts.AxContextItem</class> - <class>org.onap.policy.apex.core.contextmodel.concepts.AxContextItemTemplate</class> - <class>org.onap.policy.apex.core.contextmodel.concepts.AxContextScope</class> - <class>org.onap.policy.apex.core.contextmodel.concepts.AxContextType</class> - <class>org.onap.policy.apex.core.contextmodel.concepts.AxContextMap</class> - <class>org.onap.policy.apex.core.contextmodel.concepts.AxContext</class> - <class>org.onap.policy.apex.core.contextmodel.concepts.AxContextModel</class> - <class>org.onap.policy.apex.core.eventmodel.concepts.AxEventParameter</class> - <class>org.onap.policy.apex.core.eventmodel.concepts.AxEvent</class> - <class>org.onap.policy.apex.core.eventmodel.concepts.AxEvents</class> - <class>org.onap.policy.apex.core.eventmodel.concepts.AxEventModel</class> - <class>org.onap.policy.apex.core.policymodel.concepts.AxLogic</class> - <class>org.onap.policy.apex.core.policymodel.concepts.AxTaskParameter</class> - <class>org.onap.policy.apex.core.policymodel.concepts.AxTask</class> - <class>org.onap.policy.apex.core.policymodel.concepts.AxTasks</class> - <class>org.onap.policy.apex.core.policymodel.concepts.AxState</class> - <class>org.onap.policy.apex.core.policymodel.concepts.AxPolicy</class> - <class>org.onap.policy.apex.core.policymodel.concepts.AxPolicies</class> - <class>org.onap.policy.apex.core.policymodel.concepts.AxPolicyModel</class> - <class>org.onap.policy.apex.core.enginemodel.concepts.AxEngineStats</class> - <class>org.onap.policy.apex.core.enginemodel.concepts.AxEngineModel</class> - <class>org.onap.policy.apex.domains.aadm.concepts.ENodeBStatus</class> - <class>org.onap.policy.apex.domains.aadm.concepts.IMSIStatus</class> - <class>org.onap.policy.apex.domains.aadm.concepts.IPAddressStatus</class> - <class>org.onap.policy.apex.domains.adaptive.concepts.AnomalyDetection</class> - <class>org.onap.policy.apex.domains.adaptive.concepts.AutoLearn</class> - <class>org.onap.policy.apex.domains.vpn.concepts.VPNCustomer</class> - <class>org.onap.policy.apex.domains.vpn.concepts.VPNLink</class> - <class>org.onap.policy.apex.domains.vpn.concepts.VPNProblem</class> - - <properties> - <property name="eclipselink.target-database" value="MySQL" /> - <property name="javax.persistence.jdbc.driver" value="org.mariadb.jdbc.Driver" /> - <property name="javax.persistence.jdbc.url" value="jdbc:mariadb://localhost:5432/apex" /> - <property name="javax.persistence.jdbc.user" value="policy" /> - <property name="javax.persistence.jdbc.password" value="P01icY" /> - - <property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5Dialect" /> - <property name="hibernate.hbm2ddl.auto" value="update" /> - <property name="hibernate.connection.provider_class" - value="org.hibernate.connection.C3P0ConnectionProvider" /> - <property name="hibernate.temp.use_jdbc_metadata_defaults" value="false" /> - <property name="hibernate.c3p0.max_size" value="100" /> - <property name="hibernate.c3p0.min_size" value="0" /> - <property name="hibernate.c3p0.acquire_increment" value="1" /> - <property name="hibernate.c3p0.idle_test_period" value="300" /> - <property name="hibernate.c3p0.max_statements" value="0" /> - <property name="hibernate.c3p0.timeout" value="100" /> - </properties> - </persistence-unit> - - <persistence-unit name="org.onap.policy.apex.core.model.hibernate.test"> - <provider>org.hibernate.jpa.HibernatePersistenceProvider</provider> - - <class>org.onap.policy.apex.core.basicmodel.dao.converters.UUID2String</class> - <class>org.onap.policy.apex.core.basicmodel.concepts.AxArtifactKey</class> - <class>org.onap.policy.apex.core.basicmodel.concepts.AxConcept</class> - <class>org.onap.policy.apex.core.basicmodel.concepts.AxDataType</class> - <class>org.onap.policy.apex.core.basicmodel.concepts.AxKeyInfo</class> - <class>org.onap.policy.apex.core.basicmodel.concepts.AxKeyInformation</class> - <class>org.onap.policy.apex.core.basicmodel.concepts.AxModel</class> - <class>org.onap.policy.apex.core.basicmodel.concepts.TestEntity</class> - <class>org.onap.policy.apex.core.contextmodel.concepts.AxContextType</class> - <class>org.onap.policy.apex.core.contextmodel.concepts.AxContextItem</class> - <class>org.onap.policy.apex.core.contextmodel.concepts.AxContextItemTemplate</class> - <class>org.onap.policy.apex.core.contextmodel.concepts.AxContextScope</class> - <class>org.onap.policy.apex.core.contextmodel.concepts.AxContextType</class> - <class>org.onap.policy.apex.core.contextmodel.concepts.AxContextMap</class> - <class>org.onap.policy.apex.core.contextmodel.concepts.AxContext</class> - <class>org.onap.policy.apex.core.contextmodel.concepts.AxContextModel</class> - <class>org.onap.policy.apex.core.eventmodel.concepts.AxEventParameter</class> - <class>org.onap.policy.apex.core.eventmodel.concepts.AxEvent</class> - <class>org.onap.policy.apex.core.eventmodel.concepts.AxEvents</class> - <class>org.onap.policy.apex.core.eventmodel.concepts.AxEventModel</class> - <class>org.onap.policy.apex.core.policymodel.concepts.AxLogic</class> - <class>org.onap.policy.apex.core.policymodel.concepts.AxTaskParameter</class> - <class>org.onap.policy.apex.core.policymodel.concepts.AxTask</class> - <class>org.onap.policy.apex.core.policymodel.concepts.AxTasks</class> - <class>org.onap.policy.apex.core.policymodel.concepts.AxState</class> - <class>org.onap.policy.apex.core.policymodel.concepts.AxPolicy</class> - <class>org.onap.policy.apex.core.policymodel.concepts.AxPolicies</class> - <class>org.onap.policy.apex.core.policymodel.concepts.AxPolicyModel</class> - <class>org.onap.policy.apex.core.enginemodel.concepts.AxEngineStats</class> - <class>org.onap.policy.apex.core.enginemodel.concepts.AxEngineModel</class> - <class>org.onap.policy.apex.domains.aadm.concepts.ENodeBStatus</class> - <class>org.onap.policy.apex.domains.aadm.concepts.IMSIStatus</class> - <class>org.onap.policy.apex.domains.aadm.concepts.IPAddressStatus</class> - <class>org.onap.policy.apex.domains.adaptive.concepts.AnomalyDetection</class> - <class>org.onap.policy.apex.domains.adaptive.concepts.AutoLearn</class> - <class>org.onap.policy.apex.domains.vpn.concepts.VPNCustomer</class> - <class>org.onap.policy.apex.domains.vpn.concepts.VPNLink</class> - <class>org.onap.policy.apex.domains.vpn.concepts.VPNProblem</class> - - <properties> - <property name="eclipselink.target-database" value="MySQL" /> - <property name="javax.persistence.jdbc.driver" value="org.mariadb.jdbc.Driver" /> - <property name="javax.persistence.jdbc.url" value="jdbc:mariadb://localhost:5432/apex_test" /> - <property name="javax.persistence.jdbc.user" value="policy" /> - <property name="javax.persistence.jdbc.password" value="P01icY" /> - <property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5Dialect" /> - <property name="hibernate.hbm2ddl.auto" value="create" /> - <property name="hibernate.connection.provider_class" - value="org.hibernate.connection.C3P0ConnectionProvider" /> - <property name="hibernate.temp.use_jdbc_metadata_defaults" value="false" /> - <property name="hibernate.c3p0.max_size" value="100" /> - <property name="hibernate.c3p0.min_size" value="0" /> - <property name="hibernate.c3p0.acquire_increment" value="1" /> - <property name="hibernate.c3p0.idle_test_period" value="300" /> - <property name="hibernate.c3p0.max_statements" value="0" /> - <property name="hibernate.c3p0.timeout" value="100" /> - </properties> - </persistence-unit> - -</persistence> diff --git a/packages/apex-pdp-package-full/src/main/resources/properties/db.properties b/packages/apex-pdp-package-full/src/main/resources/properties/db.properties new file mode 100644 index 000000000..db536d65e --- /dev/null +++ b/packages/apex-pdp-package-full/src/main/resources/properties/db.properties @@ -0,0 +1,6 @@ +database.target-database=MySQL +database.jdbc.driver=org.mariadb.jdbc.Driver +database.jdbc.url=jdbc:mariadb://localhost:5432/apex +database.jdbc.user=policy +database.jdbc.password=P01icY +database.dialect=org.hibernate.dialect.MySQL5Dialect
\ No newline at end of file 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 index 743167d14..000000000 --- a/plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/pom.xml +++ /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 index 907d426e7..000000000 --- a/plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/src/main/java/org/onap/policy/apex/plugins/event/protocol/xml/Apex2XmlEventConverter.java +++ /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 index 143669db1..000000000 --- a/plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/src/main/java/org/onap/policy/apex/plugins/event/protocol/xml/XmlEventProtocolParameters.java +++ /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 index 4f972657f..000000000 --- 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 +++ /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 index fa334c413..000000000 --- a/plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/src/main/resources/xml/apex-event.xjb +++ /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 index c8314550a..000000000 --- a/plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/src/main/resources/xml/apex-event.xsd +++ /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 index 9c8696c6c..000000000 --- a/plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/src/test/java/org/onap/policy/apex/plugins/event/protocol/xml/XmlEventGenerator.java +++ /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 index f8caf8c2f..000000000 --- a/plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/src/test/java/org/onap/policy/apex/plugins/event/protocol/xml/XmlEventHandlerTest.java +++ /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 index 27fd22095..000000000 --- a/plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/src/test/java/org/onap/policy/apex/plugins/event/protocol/xml/XmlEventProtocolParametersTest.java +++ /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 index 320d7ba22..000000000 --- a/plugins/plugins-event/plugins-event-protocol/plugins-event-protocol-xml/src/test/java/org/onap/policy/apex/plugins/event/protocol/xml/XmlTaggedEventConsumerTest.java +++ /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()); - } -} diff --git a/plugins/plugins-event/plugins-event-protocol/pom.xml b/plugins/plugins-event/plugins-event-protocol/pom.xml index b9e3026c4..a8d36a6fd 100644 --- a/plugins/plugins-event/plugins-event-protocol/pom.xml +++ b/plugins/plugins-event/plugins-event-protocol/pom.xml @@ -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> diff --git a/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-eclipselink/pom.xml b/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-eclipselink/pom.xml deleted file mode 100644 index 8df1b8168..000000000 --- a/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-eclipselink/pom.xml +++ /dev/null @@ -1,30 +0,0 @@ -<!-- - ============LICENSE_START======================================================= - Copyright (C) 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========================================================= ---> -<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-persistence.plugins-persistence-jpa</groupId> - <artifactId>plugins-persistence-jpa</artifactId> - <version>2.7.1-SNAPSHOT</version> - </parent> - <artifactId>plugins-persistence-jpa-eclipselink</artifactId> - <name>${project.artifactId}</name> - <description>[${project.parent.artifactId}] Plugin for persistence using EclipseLink</description> -</project>
\ No newline at end of file diff --git a/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-eclipselink/src/main/java/org/onap/policy/apex/plugins/persistence/jpa/eclipselink/EclipselinkApexDao.java b/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-eclipselink/src/main/java/org/onap/policy/apex/plugins/persistence/jpa/eclipselink/EclipselinkApexDao.java deleted file mode 100644 index e0bce2dd6..000000000 --- a/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-eclipselink/src/main/java/org/onap/policy/apex/plugins/persistence/jpa/eclipselink/EclipselinkApexDao.java +++ /dev/null @@ -1,32 +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.persistence.jpa.eclipselink; - -import org.onap.policy.apex.model.basicmodel.dao.impl.DefaultApexDao; - -/** - * The Class EclipselinkApexDao is the EclipseLink JPA implementation. It just uses the standard Apex JPA - * implementation. - * - * @author Sergey Sachkov (sergey.sachkov@ericsson.com) - */ -public class EclipselinkApexDao extends DefaultApexDao { -} diff --git a/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-eclipselink/src/main/java/org/onap/policy/apex/plugins/persistence/jpa/eclipselink/package-info.java b/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-eclipselink/src/main/java/org/onap/policy/apex/plugins/persistence/jpa/eclipselink/package-info.java deleted file mode 100644 index f58e5fc76..000000000 --- a/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-eclipselink/src/main/java/org/onap/policy/apex/plugins/persistence/jpa/eclipselink/package-info.java +++ /dev/null @@ -1,28 +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========================================================= - */ - -/** - * Provides the <a href="http://www.eclipse.org/eclipselink/">EclipseLink</a> implementation on the APEX DAO for - * persistence over <a href="https://en.wikipedia.org/wiki/Java_Database_Connectivity">JDBC</a>. - * - * @author Liam Fallon (liam.fallon@ericsson.com) - */ - -package org.onap.policy.apex.plugins.persistence.jpa.eclipselink; diff --git a/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-eclipselink/src/test/java/org/onap/policy/apex/plugins/persistence/jpa/eclipselink/EclipselinkApexDaoTest.java b/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-eclipselink/src/test/java/org/onap/policy/apex/plugins/persistence/jpa/eclipselink/EclipselinkApexDaoTest.java deleted file mode 100644 index 4f3c68b0f..000000000 --- a/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-eclipselink/src/test/java/org/onap/policy/apex/plugins/persistence/jpa/eclipselink/EclipselinkApexDaoTest.java +++ /dev/null @@ -1,251 +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========================================================= - */ - -package org.onap.policy.apex.plugins.persistence.jpa.eclipselink; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertNull; - -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -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.AxArtifactKey; -import org.onap.policy.apex.model.basicmodel.concepts.AxReferenceKey; -import org.onap.policy.apex.model.basicmodel.dao.DaoParameters; -import org.onap.policy.apex.plugins.persistence.jpa.eclipselink.entities.ArtifactKeyTestEntity; -import org.onap.policy.apex.plugins.persistence.jpa.eclipselink.entities.ReferenceKeyTestEntity; - -/** - * Junit tests for class EclipselinkApexDao. - * - * @author Dinh Danh Le (dinh.danh.le@ericsson.com) - * - */ - -public class EclipselinkApexDaoTest { - - private static final List<AxArtifactKey> TEST_ARTIKEYS = Arrays.asList(new AxArtifactKey[] - { new AxArtifactKey("ABC", "0.0.1"), new AxArtifactKey("DEF", "0.1.1"), new AxArtifactKey("XYZ", "1.1.1") }); - - private final DaoParameters daoParameters = new DaoParameters(); - - private EclipselinkApexDao eclipselinkApexDao = null; - - /** - * Setup the tests. - * - * @throws ApexException Exceptions from test setup - */ - @Before - public void setup() throws ApexException { - daoParameters.setPluginClass(EclipselinkApexDao.class.getName()); - daoParameters.setPersistenceUnit("DAOTest"); - eclipselinkApexDao = new EclipselinkApexDao(); - eclipselinkApexDao.init(daoParameters); - } - - @After - public void teardown() { - eclipselinkApexDao.close(); - } - - @Test - public void test_NullArguments() { - final AxArtifactKey nullArtifactKey = null; - final AxArtifactKey nullRefernceKey = null; - final List<Object> emptyList = Collections.emptyList(); - - assertNull(eclipselinkApexDao.getArtifact(null, nullArtifactKey)); - assertNull(eclipselinkApexDao.getArtifact(ArtifactKeyTestEntity.class, nullArtifactKey)); - - assertNull(eclipselinkApexDao.getArtifact(null, nullRefernceKey)); - assertNull(eclipselinkApexDao.getArtifact(ReferenceKeyTestEntity.class, nullRefernceKey)); - - assertNotNull(eclipselinkApexDao.getAll(null)); - assertEquals(emptyList, eclipselinkApexDao.getAll(null)); - assertNotNull(eclipselinkApexDao.getAll(ReferenceKeyTestEntity.class)); - } - - @Test - public void test_createObject() throws ApexException { - // create 3 more entities from testArtiKeys - for (final AxArtifactKey akey : TEST_ARTIKEYS) { - eclipselinkApexDao.create(new ReferenceKeyTestEntity(new AxReferenceKey(akey), Math.random())); - } - assertEquals(3, eclipselinkApexDao.getAll(ReferenceKeyTestEntity.class).size()); - } - - @Test - public void test_getAll() { - // create a list of three entities from testArtiKeys - final double[] genDoubleVals = new double[TEST_ARTIKEYS.size()]; - - for (int i = 0; i < TEST_ARTIKEYS.size(); i++) { - final AxArtifactKey akey = TEST_ARTIKEYS.get(i); - genDoubleVals[i] = Math.random(); - eclipselinkApexDao.create(new ReferenceKeyTestEntity(new AxReferenceKey(akey), genDoubleVals[i])); - } - - final List<ReferenceKeyTestEntity> ret = eclipselinkApexDao.getAll(ReferenceKeyTestEntity.class); - assertEquals(TEST_ARTIKEYS.size(), ret.size()); - - for (int i = 0; i < TEST_ARTIKEYS.size(); i++) { - final ReferenceKeyTestEntity e = ret.get(i); - assertEquals(TEST_ARTIKEYS.get(i), e.getKey().getParentArtifactKey()); - assertEquals(genDoubleVals[i], e.getDoubleValue(), 0.0); - } - } - - @Test - public void test_getArtifactByReferenceKey() { - final AxArtifactKey artifactKey = new AxArtifactKey("XXX", "0.0.1"); - final AxReferenceKey referenceKey = new AxReferenceKey(artifactKey, "Entity1"); - - // assert null if Entity Class is null - assertNull(eclipselinkApexDao.getArtifact(null, referenceKey)); - - // create PersistenceContext with an entity - eclipselinkApexDao.create(new ReferenceKeyTestEntity(referenceKey, 1.0)); - // assert null when trying to find an entity with an unknown key - final AxArtifactKey anotherArtifactKey = new AxArtifactKey("YYY", "0.0.2"); - final AxReferenceKey anotherReferenceKey = new AxReferenceKey(anotherArtifactKey); - - assertNull(eclipselinkApexDao.getArtifact(ReferenceKeyTestEntity.class, anotherReferenceKey)); - - // assert return only one entity when finding an entity with correct key - final ReferenceKeyTestEntity retEntity = eclipselinkApexDao.getArtifact(ReferenceKeyTestEntity.class, - referenceKey); - assertEquals(referenceKey, retEntity.getKey()); - } - - @Test - public void test_getArtifactByArtifactKey() { - final AxArtifactKey artifactKey = new AxArtifactKey("XXX", "0.0.1"); - // assert null if either Entity Class is null - assertNull(eclipselinkApexDao.getArtifact(null, artifactKey)); - // create an entity - eclipselinkApexDao.create(new ArtifactKeyTestEntity(artifactKey, 1.0)); - - // assert null when trying to find an entity with an unknown key - final AxArtifactKey otherArtifactKey = new AxArtifactKey("YYY", "0.0.2"); - assertNull(eclipselinkApexDao.getArtifact(ArtifactKeyTestEntity.class, otherArtifactKey)); - - // assert return only one entity when finding an entity with correct key - final ArtifactKeyTestEntity retEntity = eclipselinkApexDao.getArtifact(ArtifactKeyTestEntity.class, - artifactKey); - assertNotNull(retEntity); - assertEquals(artifactKey, retEntity.getKey()); - } - - @Test - public void test_deleteByArtifactKey() { - // initialize a list of (3) entities corresponding to the list of testArtiKeys - for (final AxArtifactKey akey : TEST_ARTIKEYS) { - eclipselinkApexDao.create(new ArtifactKeyTestEntity(akey, Math.random())); - } - // create one more entity - final ArtifactKeyTestEntity entity = new ArtifactKeyTestEntity(new AxArtifactKey("XYZ", "100.0.0"), 100.0); - eclipselinkApexDao.create(entity); - - assertEquals(3, eclipselinkApexDao.deleteByArtifactKey(ArtifactKeyTestEntity.class, TEST_ARTIKEYS)); - - // after deleteByArtifactKey()--> getAll().size() == 1 - final List<ArtifactKeyTestEntity> remainingEntities = eclipselinkApexDao.getAll(ArtifactKeyTestEntity.class); - assertEquals(1, remainingEntities.size()); - // more details about the remainingEntities - assertEquals(100.0, remainingEntities.get(0).getDoubleValue(), 0.0); - } - - @Test - public void test_deleteByReferenceKey() { - // prepare 2 AxArtifactKeys - final AxArtifactKey owner0Key = new AxArtifactKey("Owner0", "0.0.1"); - final AxArtifactKey owner1Key = new AxArtifactKey("Owner1", "0.0.1"); - - // prepare a list of (3) AxReferenceKeys corresponding to owner0Key - final List<AxReferenceKey> refKey0s = Arrays.asList(new AxReferenceKey[] { - new AxReferenceKey(owner0Key, "Entity01"), - new AxReferenceKey(owner0Key, "Entity02"), - new AxReferenceKey(owner0Key, "Entity03") - }); - - // prepare 2 more AxReferenceKeys corresponding to owner1Key - final AxReferenceKey refKey11 = new AxReferenceKey(owner1Key, "Entity11"); - final AxReferenceKey refKey12 = new AxReferenceKey(owner1Key, "Entity12"); - - // create a list of 5 entities - eclipselinkApexDao.create(new ReferenceKeyTestEntity(refKey0s.get(0), 101.0)); - eclipselinkApexDao.create(new ReferenceKeyTestEntity(refKey0s.get(1), 102.0)); - eclipselinkApexDao.create(new ReferenceKeyTestEntity(refKey0s.get(2), 103.0)); - eclipselinkApexDao.create(new ReferenceKeyTestEntity(refKey11, 104.0)); - eclipselinkApexDao.create(new ReferenceKeyTestEntity(refKey12, 105.0)); - - // assert 3 entities are deleted by this deletion - assertEquals(3, eclipselinkApexDao.deleteByReferenceKey(ReferenceKeyTestEntity.class, refKey0s)); - // after deletion, make sure getAll().size() == 2 - assertEquals(2, eclipselinkApexDao.getAll(ReferenceKeyTestEntity.class).size()); - } - - @Test - public void test_deleteAll() { - // initialize a list of (3) entities and add to the PersistenceContext - for (final AxArtifactKey akey : TEST_ARTIKEYS) { - eclipselinkApexDao.create(new ReferenceKeyTestEntity(new AxReferenceKey(akey), Math.random())); - } - // before deleteAll()--> getAll().size() == 3 - assertEquals(3, eclipselinkApexDao.getAll(ReferenceKeyTestEntity.class).size()); - eclipselinkApexDao.deleteAll(ReferenceKeyTestEntity.class); - // after deleteAll()--> getAll().size() == 0 - assertEquals(0, eclipselinkApexDao.getAll(ReferenceKeyTestEntity.class).size()); - } - - @Test - public void test_getAllByArtifactKey() { - - final AxArtifactKey artiKey0 = new AxArtifactKey("XYZA", "0.1.2"); - final AxArtifactKey artiKey1 = new AxArtifactKey("ONAP", "0.0.1"); - - final AxReferenceKey refKey0 = new AxReferenceKey(artiKey0, "Entity0"); - final AxReferenceKey refKey1 = new AxReferenceKey(artiKey1, "Entity1"); - - // test with null class with known key --> return an empty list - assertNotNull(eclipselinkApexDao.getAll(null, artiKey1)); - assertEquals(Collections.emptyList(), eclipselinkApexDao.getAll(null, artiKey1)); - - // test with (not_null) ArtifactKeyTestEntity class - assertEquals(0, eclipselinkApexDao.getAll(ReferenceKeyTestEntity.class, artiKey0).size()); - // create 2 entities - eclipselinkApexDao.create(new ReferenceKeyTestEntity(refKey0, 100.0)); - eclipselinkApexDao.create(new ReferenceKeyTestEntity(refKey0, 200.0)); - eclipselinkApexDao.create(new ReferenceKeyTestEntity(refKey1, 100.0)); - - final List<ReferenceKeyTestEntity> ret = eclipselinkApexDao.getAll(ReferenceKeyTestEntity.class, artiKey0); - assertEquals(1, ret.size()); - final ReferenceKeyTestEntity retEntity = ret.get(0); - assertEquals(200.0, retEntity.getDoubleValue(), 0); - } - -} diff --git a/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-eclipselink/src/test/java/org/onap/policy/apex/plugins/persistence/jpa/eclipselink/entities/ArtifactKeyTestEntity.java b/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-eclipselink/src/test/java/org/onap/policy/apex/plugins/persistence/jpa/eclipselink/entities/ArtifactKeyTestEntity.java deleted file mode 100644 index 98a4c5738..000000000 --- a/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-eclipselink/src/test/java/org/onap/policy/apex/plugins/persistence/jpa/eclipselink/entities/ArtifactKeyTestEntity.java +++ /dev/null @@ -1,160 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * Copyright (C) 2019 Nordix Foundation. - * 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.persistence.jpa.eclipselink.entities; - -import java.util.Arrays; -import java.util.List; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.Table; -import javax.xml.bind.annotation.XmlElement; -import lombok.EqualsAndHashCode; -import lombok.Getter; -import lombok.Setter; -import lombok.ToString; -import org.apache.commons.lang3.builder.CompareToBuilder; -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; -import org.onap.policy.apex.model.basicmodel.concepts.AxValidationResult; - -/** - * The Class ArtifactKeyTestEntity is an entity for testing artifact keys. - */ -@Entity -@Table(name = "ArtifactKeyTestEntity") -@Getter -@Setter -@ToString -@EqualsAndHashCode(callSuper = false) -public class ArtifactKeyTestEntity extends AxConcept { - private static final long serialVersionUID = -2962570563281067896L; - - @EmbeddedId() - @XmlElement(name = "key", required = true) - protected AxArtifactKey key; - - private double doubleValue; - - /** - * Instantiates a new artifact key test entity. - */ - public ArtifactKeyTestEntity() { - this.key = new AxArtifactKey(); - this.doubleValue = 0; - } - - /** - * Instantiates a new artifact key test entity. - * - * @param doubleValue the double value - */ - public ArtifactKeyTestEntity(final Double doubleValue) { - this.key = new AxArtifactKey(); - this.doubleValue = doubleValue; - } - - /** - * Instantiates a new artifact key test entity. - * - * @param key the key - * @param doubleValue the double value - */ - public ArtifactKeyTestEntity(final AxArtifactKey key, final Double doubleValue) { - this.key = key; - this.doubleValue = doubleValue; - } - - /** - * {@inheritDoc}. - */ - @Override - public List<AxKey> getKeys() { - return Arrays.asList((AxKey) getKey()); - } - - /** - * Check set key. - * - * @return true, if successful - */ - public boolean checkSetKey() { - return (this.key != null); - } - - /** - * {@inheritDoc}. - */ - @Override - public AxValidationResult validate(final AxValidationResult result) { - return key.validate(result); - } - - /** - * {@inheritDoc}. - */ - @Override - public void clean() { - key.clean(); - } - - /** - * {@inheritDoc}. - */ - @Override - public AxConcept copyTo(final AxConcept target) { - final Object copyObject = ((target == null) ? new ArtifactKeyTestEntity() : target); - if (copyObject instanceof ArtifactKeyTestEntity) { - final ArtifactKeyTestEntity copy = ((ArtifactKeyTestEntity) copyObject); - if (this.checkSetKey()) { - copy.setKey(new AxArtifactKey(key)); - } else { - copy.key = null; - } - copy.doubleValue = doubleValue; - return copy; - } else { - return null; - } - } - - /** - * {@inheritDoc}. - */ - @Override - public int compareTo(final AxConcept otherObj) { - if (otherObj == null) { - return -1; - } - if (this == otherObj) { - return 0; - } - if (getClass() != otherObj.getClass()) { - return -1; - } - final ArtifactKeyTestEntity other = (ArtifactKeyTestEntity) otherObj; - return new CompareToBuilder() - .append(key, other.key) - .append(doubleValue, other.doubleValue) - .toComparison(); - } -} diff --git a/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-eclipselink/src/test/java/org/onap/policy/apex/plugins/persistence/jpa/eclipselink/entities/ReferenceKeyTestEntity.java b/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-eclipselink/src/test/java/org/onap/policy/apex/plugins/persistence/jpa/eclipselink/entities/ReferenceKeyTestEntity.java deleted file mode 100644 index cadc9b8db..000000000 --- a/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-eclipselink/src/test/java/org/onap/policy/apex/plugins/persistence/jpa/eclipselink/entities/ReferenceKeyTestEntity.java +++ /dev/null @@ -1,163 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * Copyright (C) 2019 Nordix Foundation. - * 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.persistence.jpa.eclipselink.entities; - -import java.util.Arrays; -import java.util.List; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.Table; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; -import lombok.EqualsAndHashCode; -import lombok.Getter; -import lombok.Setter; -import lombok.ToString; -import org.apache.commons.lang3.builder.CompareToBuilder; -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.AxValidationResult; -import org.onap.policy.apex.model.basicmodel.xml.AxReferenceKeyAdapter; - -/** - * The Class ReferenceKeyTestEntity provides a reference key test concept. - */ -@Entity -@Table(name = "ReferenceKeyTestEntity") -@Getter -@Setter -@ToString -@EqualsAndHashCode(callSuper = false) -public class ReferenceKeyTestEntity extends AxConcept { - private static final long serialVersionUID = -2962570563281067895L; - - @EmbeddedId() - @XmlElement(name = "key", required = true) - @XmlJavaTypeAdapter(AxReferenceKeyAdapter.class) - protected AxReferenceKey key; - - private double doubleValue; - - /** - * Instantiates a new reference key test entity. - */ - public ReferenceKeyTestEntity() { - this.key = new AxReferenceKey(); - this.doubleValue = 0; - } - - /** - * Instantiates a new reference key test entity. - * - * @param doubleValue the double value - */ - public ReferenceKeyTestEntity(final Double doubleValue) { - this.key = new AxReferenceKey(); - this.doubleValue = doubleValue; - } - - /** - * Instantiates a new reference key test entity. - * - * @param key the key - * @param doubleValue the double value - */ - public ReferenceKeyTestEntity(final AxReferenceKey key, final Double doubleValue) { - this.key = key; - this.doubleValue = doubleValue; - } - - /** - * {@inheritDoc}. - */ - @Override - public List<AxKey> getKeys() { - return Arrays.asList((AxKey) getKey()); - } - - /** - * Check set key. - * - * @return true, if successful - */ - public boolean checkSetKey() { - return (this.key != null); - } - - /** - * {@inheritDoc}. - */ - @Override - public AxValidationResult validate(final AxValidationResult result) { - return key.validate(result); - } - - /** - * {@inheritDoc}. - */ - @Override - public void clean() { - key.clean(); - } - - /** - * {@inheritDoc}. - */ - @Override - public AxConcept copyTo(final AxConcept target) { - final Object copyObject = ((target == null) ? new ReferenceKeyTestEntity() : target); - if (copyObject instanceof ReferenceKeyTestEntity) { - final ReferenceKeyTestEntity copy = ((ReferenceKeyTestEntity) copyObject); - if (this.checkSetKey()) { - copy.setKey(new AxReferenceKey(key)); - } else { - copy.key = null; - } - copy.doubleValue = doubleValue; - return copy; - } else { - return null; - } - } - - /** - * {@inheritDoc}. - */ - @Override - public int compareTo(final AxConcept otherObj) { - if (otherObj == null) { - return -1; - } - if (this == otherObj) { - return 0; - } - if (getClass() != otherObj.getClass()) { - return -1; - } - final ReferenceKeyTestEntity other = (ReferenceKeyTestEntity) otherObj; - return new CompareToBuilder() - .append(key, other.key) - .append(doubleValue, other.doubleValue) - .toComparison(); - } -} diff --git a/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-eclipselink/src/test/java/org/onap/policy/apex/plugins/persistence/jpa/eclipselink/entities/package-info.java b/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-eclipselink/src/test/java/org/onap/policy/apex/plugins/persistence/jpa/eclipselink/entities/package-info.java deleted file mode 100644 index b30d40559..000000000 --- a/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-eclipselink/src/test/java/org/onap/policy/apex/plugins/persistence/jpa/eclipselink/entities/package-info.java +++ /dev/null @@ -1,24 +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========================================================= - */ - -/** - * Contains common test entities. - */ -package org.onap.policy.apex.plugins.persistence.jpa.eclipselink.entities; diff --git a/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-eclipselink/src/test/resources/META-INF/persistence.xml b/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-eclipselink/src/test/resources/META-INF/persistence.xml deleted file mode 100644 index 3f8be58e4..000000000 --- a/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-eclipselink/src/test/resources/META-INF/persistence.xml +++ /dev/null @@ -1,40 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - ============LICENSE_START======================================================= - Copyright (C) 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========================================================= ---> -<!-- This is to configure H2-IMDB using EclipseLink JPA--> - -<persistence xmlns="http://java.sun.com/xml/ns/persistence" version="2.0"> - <persistence-unit name="DAOTest" transaction-type="RESOURCE_LOCAL"> - <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider> - - <class>org.onap.policy.apex.plugins.persistence.jpa.eclipselink.entities.ReferenceKeyTestEntity</class> - <class>org.onap.policy.apex.plugins.persistence.jpa.eclipselink.entities.ArtifactKeyTestEntity</class> - - <properties> - <property name="javax.persistence.jdbc.driver" value="org.h2.Driver" /> - <property name="javax.persistence.jdbc.url" value="jdbc:h2:mem:test" /> - <property name="javax.persistence.jdbc.user" value="sa" /> - <property name="javax.persistence.jdbc.password" value="" /> - <property name="eclipselink.ddl-generation" value="drop-and-create-tables" /> - <property name="eclipselink.ddl-generation.output-mode" value="database" /> - <property name="eclipselink.logging.level" value="INFO" /> - </properties> - </persistence-unit> -</persistence>
\ No newline at end of file diff --git a/plugins/plugins-persistence/plugins-persistence-jpa/pom.xml b/plugins/plugins-persistence/plugins-persistence-jpa/pom.xml deleted file mode 100644 index 647c3e03a..000000000 --- a/plugins/plugins-persistence/plugins-persistence-jpa/pom.xml +++ /dev/null @@ -1,51 +0,0 @@ -<!-- - ============LICENSE_START======================================================= - Copyright (C) 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========================================================= ---> -<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-persistence</groupId> - <artifactId>plugins-persistence</artifactId> - <version>2.7.1-SNAPSHOT</version> - </parent> - - <groupId>org.onap.policy.apex-pdp.plugins.plugins-persistence.plugins-persistence-jpa</groupId> - <artifactId>plugins-persistence-jpa</artifactId> - <packaging>pom</packaging> - - <name>${project.artifactId}</name> - <description>Plugins for 3pps that handle persistence over JPA</description> - - <dependencies> - <dependency> - <groupId>org.onap.policy.apex-pdp.model</groupId> - <artifactId>basic-model</artifactId> - <version>${project.version}</version> - </dependency> - <dependency> - <groupId>com.h2database</groupId> - <artifactId>h2</artifactId> - <scope>test</scope> - </dependency> - </dependencies> - - <modules> - <module>plugins-persistence-jpa-eclipselink</module> - </modules> -</project> diff --git a/plugins/plugins-persistence/pom.xml b/plugins/plugins-persistence/pom.xml deleted file mode 100644 index 4e16478eb..000000000 --- a/plugins/plugins-persistence/pom.xml +++ /dev/null @@ -1,46 +0,0 @@ -<!-- - ============LICENSE_START======================================================= - Copyright (C) 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========================================================= ---> -<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</groupId> - <artifactId>plugins</artifactId> - <version>2.7.1-SNAPSHOT</version> - </parent> - - <groupId>org.onap.policy.apex-pdp.plugins.plugins-persistence</groupId> - <artifactId>plugins-persistence</artifactId> - <packaging>pom</packaging> - - <name>${project.artifactId}</name> - <description>Plugins for 3pps that implement persistence</description> - - <dependencies> - <dependency> - <groupId>org.postgresql</groupId> - <artifactId>postgresql</artifactId> - <version>42.2.14</version> - <scope>test</scope> - </dependency> - </dependencies> - <modules> - <module>plugins-persistence-jpa</module> - </modules> -</project>
\ No newline at end of file diff --git a/plugins/pom.xml b/plugins/pom.xml index b1ef1fac6..b30bf65af 100644 --- a/plugins/pom.xml +++ b/plugins/pom.xml @@ -1,7 +1,7 @@ <!-- ============LICENSE_START======================================================= Copyright (C) 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. @@ -42,6 +42,5 @@ <module>plugins-context</module> <module>plugins-event</module> <module>plugins-executor</module> - <module>plugins-persistence</module> </modules> </project> diff --git a/services/services-engine/src/main/java/org/onap/policy/apex/service/engine/main/ApexEventUnmarshaller.java b/services/services-engine/src/main/java/org/onap/policy/apex/service/engine/main/ApexEventUnmarshaller.java index 8f3bb858f..a5e823e97 100644 --- a/services/services-engine/src/main/java/org/onap/policy/apex/service/engine/main/ApexEventUnmarshaller.java +++ b/services/services-engine/src/main/java/org/onap/policy/apex/service/engine/main/ApexEventUnmarshaller.java @@ -2,7 +2,7 @@ * ============LICENSE_START======================================================= * Copyright (C) 2016-2018 Ericsson. All rights reserved. * Modifications Copyright (C) 2019-2021 Nordix Foundation. - * Modifications Copyright (C) 2020-2021 Bell Canada. All rights reserved. + * Modifications Copyright (C) 2020-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"); @@ -23,6 +23,8 @@ package org.onap.policy.apex.service.engine.main; +import com.google.common.base.Strings; +import io.prometheus.client.Counter; import java.util.Arrays; import java.util.Collections; import java.util.Iterator; @@ -33,9 +35,11 @@ import java.util.concurrent.LinkedBlockingQueue; import java.util.concurrent.TimeUnit; import lombok.Getter; import lombok.NonNull; +import org.apache.commons.lang3.EnumUtils; import org.onap.policy.apex.core.infrastructure.threading.ApplicationThreadFactory; import org.onap.policy.apex.core.infrastructure.threading.ThreadUtilities; import org.onap.policy.apex.model.basicmodel.concepts.ApexException; +import org.onap.policy.apex.model.basicmodel.concepts.AxToscaPolicyProcessingStatus; import org.onap.policy.apex.service.engine.event.ApexEvent; import org.onap.policy.apex.service.engine.event.ApexEventConsumer; import org.onap.policy.apex.service.engine.event.ApexEventException; @@ -48,6 +52,9 @@ import org.onap.policy.apex.service.engine.event.impl.EventProtocolFactory; import org.onap.policy.apex.service.parameters.engineservice.EngineServiceParameters; import org.onap.policy.apex.service.parameters.eventhandler.EventHandlerParameters; import org.onap.policy.apex.service.parameters.eventhandler.EventHandlerPeeredMode; +import org.onap.policy.common.utils.resources.PrometheusUtils; +import org.onap.policy.models.pdp.concepts.PdpStatus; +import org.onap.policy.models.pdp.enums.PdpResponseStatus; import org.slf4j.ext.XLogger; import org.slf4j.ext.XLoggerFactory; @@ -67,6 +74,14 @@ public class ApexEventUnmarshaller implements ApexEventReceiver, Runnable { // The amount of time to wait between polls of the event queue in milliseconds private static final long EVENT_QUEUE_POLL_INTERVAL = 20; + private static final String PROMETHEUS_TOTAL_LABEL_VALUE = "TOTAL"; + + // prometheus registration for policy execution metrics + static final Counter POLICY_EXECUTED_COUNTER = + Counter.build().namespace(PrometheusUtils.PdpType.PDPA.getNamespace()) + .name(PrometheusUtils.POLICY_EXECUTION_METRIC).labelNames(PrometheusUtils.STATUS_METRIC_LABEL) + .help(PrometheusUtils.POLICY_EXECUTION_HELP).register(); + // The name of the unmarshaler @Getter private final String name; @@ -218,11 +233,36 @@ public class ApexEventUnmarshaller implements ApexEventReceiver, Runnable { synchronousEventCache.cacheSynchronizedEventToApex(apexEvent.getExecutionId(), apexEvent); } + // Update policy execution metrics + updatePolicyExecutedMetrics(apexEvent.getToscaPolicyState()); + // Enqueue the event queue.add(apexEvent); } } + /** + * Increment Prometheus counters for TOSCA policy execution metrics. + * + * @param toscaPolicyState the TOSCA Policy state flag from the event + */ + private void updatePolicyExecutedMetrics(String toscaPolicyState) { + // Skip events that are not flagged as TOSCA processing entry or exit points. + if (Strings.isNullOrEmpty(toscaPolicyState) + || !EnumUtils.isValidEnum(AxToscaPolicyProcessingStatus.class, toscaPolicyState)) { + return; + } + + // Increment total, successful and failed policy executed counter. + if (AxToscaPolicyProcessingStatus.ENTRY.name().equals(toscaPolicyState)) { + POLICY_EXECUTED_COUNTER.labels(PROMETHEUS_TOTAL_LABEL_VALUE).inc(); + } else if (AxToscaPolicyProcessingStatus.EXIT_SUCCESS.name().equals(toscaPolicyState)) { + POLICY_EXECUTED_COUNTER.labels(PdpResponseStatus.SUCCESS.name()).inc(); + } else if (AxToscaPolicyProcessingStatus.EXIT_FAILURE.name().equals(toscaPolicyState)) { + POLICY_EXECUTED_COUNTER.labels(PdpResponseStatus.FAIL.name()).inc(); + } + } + private List<ApexEvent> convertToApexEvents(final Object event) throws ApexEventException { List<ApexEvent> apexEventList = null; List<String> eventNamesList = null; @@ -340,4 +380,4 @@ public class ApexEventUnmarshaller implements ApexEventReceiver, Runnable { } LOGGER.exit("shut down Apex event unmarshaller"); } -} +}
\ No newline at end of file diff --git a/services/services-engine/src/main/java/org/onap/policy/apex/service/engine/runtime/impl/EngineWorker.java b/services/services-engine/src/main/java/org/onap/policy/apex/service/engine/runtime/impl/EngineWorker.java index f69eae664..ebb1cdf2d 100644 --- a/services/services-engine/src/main/java/org/onap/policy/apex/service/engine/runtime/impl/EngineWorker.java +++ b/services/services-engine/src/main/java/org/onap/policy/apex/service/engine/runtime/impl/EngineWorker.java @@ -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) { diff --git a/services/services-engine/src/main/java/org/onap/policy/apex/service/parameters/ApexParameterHandler.java b/services/services-engine/src/main/java/org/onap/policy/apex/service/parameters/ApexParameterHandler.java index cc19080f9..2e97c54fc 100644 --- a/services/services-engine/src/main/java/org/onap/policy/apex/service/parameters/ApexParameterHandler.java +++ b/services/services-engine/src/main/java/org/onap/policy/apex/service/parameters/ApexParameterHandler.java @@ -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(); + } + } } diff --git a/services/services-engine/src/test/java/org/onap/policy/apex/service/engine/event/JsonEventHandlerForPojoTest.java b/services/services-engine/src/test/java/org/onap/policy/apex/service/engine/event/JsonEventHandlerForPojoTest.java index c58cb085d..e2149efa5 100644 --- a/services/services-engine/src/test/java/org/onap/policy/apex/service/engine/event/JsonEventHandlerForPojoTest.java +++ b/services/services-engine/src/test/java/org/onap/policy/apex/service/engine/event/JsonEventHandlerForPojoTest.java @@ -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 diff --git a/services/services-engine/src/test/java/org/onap/policy/apex/service/engine/runtime/impl/EngineServiceImplTest.java b/services/services-engine/src/test/java/org/onap/policy/apex/service/engine/runtime/impl/EngineServiceImplTest.java index 0095c9630..a903a885e 100644 --- a/services/services-engine/src/test/java/org/onap/policy/apex/service/engine/runtime/impl/EngineServiceImplTest.java +++ b/services/services-engine/src/test/java/org/onap/policy/apex/service/engine/runtime/impl/EngineServiceImplTest.java @@ -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 +} diff --git a/services/services-engine/src/test/java/org/onap/policy/apex/service/engine/runtime/impl/EngineWorkerTest.java b/services/services-engine/src/test/java/org/onap/policy/apex/service/engine/runtime/impl/EngineWorkerTest.java index c95b465cf..b904fb1d4 100644 --- a/services/services-engine/src/test/java/org/onap/policy/apex/service/engine/runtime/impl/EngineWorkerTest.java +++ b/services/services-engine/src/test/java/org/onap/policy/apex/service/engine/runtime/impl/EngineWorkerTest.java @@ -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 +} diff --git a/services/services-engine/src/test/resources/policymodels/PojoEventModel.json b/services/services-engine/src/test/resources/policymodels/PojoEventModel.json index 59ff76ebb..5a7490f75 100644 --- a/services/services-engine/src/test/resources/policymodels/PojoEventModel.json +++ b/services/services-engine/src/test/resources/policymodels/PojoEventModel.json @@ -1,365 +1,392 @@ { - "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" + } + } + ] + } + } } diff --git a/services/services-engine/src/test/resources/policymodels/SmallModel.json b/services/services-engine/src/test/resources/policymodels/SmallModel.json index 5c0628809..12c402d9a 100644 --- a/services/services-engine/src/test/resources/policymodels/SmallModel.json +++ b/services/services-engine/src/test/resources/policymodels/SmallModel.json @@ -1,416 +1,453 @@ { - "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" + } + } + ] + } + } } diff --git a/services/services-engine/src/test/resources/policymodels/SmallModelDifferent.json b/services/services-engine/src/test/resources/policymodels/SmallModelDifferent.json index bbee7daa3..21ee7e3da 100644 --- a/services/services-engine/src/test/resources/policymodels/SmallModelDifferent.json +++ b/services/services-engine/src/test/resources/policymodels/SmallModelDifferent.json @@ -1,416 +1,453 @@ { - "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" + } + } + ] + } + } } diff --git a/testsuites/integration/integration-common/src/main/java/org/onap/policy/apex/testsuites/integration/common/model/SampleDomainModelSaver.java b/testsuites/integration/integration-common/src/main/java/org/onap/policy/apex/testsuites/integration/common/model/SampleDomainModelSaver.java index 362ccf923..324ae6cdf 100644 --- a/testsuites/integration/integration-common/src/main/java/org/onap/policy/apex/testsuites/integration/common/model/SampleDomainModelSaver.java +++ b/testsuites/integration/integration-common/src/main/java/org/onap/policy/apex/testsuites/integration/common/model/SampleDomainModelSaver.java @@ -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(); } - } diff --git a/testsuites/integration/integration-common/src/main/resources/examples/models/JMS/JMSTestModel.json b/testsuites/integration/integration-common/src/main/resources/examples/models/JMS/JMSTestModel.json index 67fdcbfe5..f2ada87c5 100644 --- a/testsuites/integration/integration-common/src/main/resources/examples/models/JMS/JMSTestModel.json +++ b/testsuites/integration/integration-common/src/main/resources/examples/models/JMS/JMSTestModel.json @@ -1,456 +1,454 @@ { - "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" + } } + ] } + } } diff --git a/testsuites/integration/integration-common/src/test/java/org/onap/policy/apex/testsuites/integration/common/model/SampleDomainModelSaverTest.java b/testsuites/integration/integration-common/src/test/java/org/onap/policy/apex/testsuites/integration/common/model/SampleDomainModelSaverTest.java index c7ab1d9a0..eaf223373 100644 --- a/testsuites/integration/integration-common/src/test/java/org/onap/policy/apex/testsuites/integration/common/model/SampleDomainModelSaverTest.java +++ b/testsuites/integration/integration-common/src/test/java/org/onap/policy/apex/testsuites/integration/common/model/SampleDomainModelSaverTest.java @@ -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); } diff --git a/testsuites/integration/integration-context-test/src/test/java/org/onap/policy/apex/testsuites/integration/context/distribution/ContextUpdate.java b/testsuites/integration/integration-context-test/src/test/java/org/onap/policy/apex/testsuites/integration/context/distribution/ContextUpdate.java index b0370c5d9..8d5b702b0 100644 --- a/testsuites/integration/integration-context-test/src/test/java/org/onap/policy/apex/testsuites/integration/context/distribution/ContextUpdate.java +++ b/testsuites/integration/integration-context-test/src/test/java/org/onap/policy/apex/testsuites/integration/context/distribution/ContextUpdate.java @@ -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"); @@ -26,7 +26,6 @@ import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.assertThatThrownBy; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; -import static org.junit.Assert.assertTrue; import static org.onap.policy.apex.testsuites.integration.context.utils.Constants.APEX_DISTRIBUTOR; import static org.onap.policy.apex.testsuites.integration.context.utils.Constants.DATE_CONTEXT_ALBUM; import static org.onap.policy.apex.testsuites.integration.context.utils.Constants.LONG_CONTEXT_ALBUM; diff --git a/testsuites/integration/integration-context-test/src/test/java/org/onap/policy/apex/testsuites/integration/context/entities/ArtifactKeyTestEntity.java b/testsuites/integration/integration-context-test/src/test/java/org/onap/policy/apex/testsuites/integration/context/entities/ArtifactKeyTestEntity.java index 500405422..ca3c05744 100644 --- a/testsuites/integration/integration-context-test/src/test/java/org/onap/policy/apex/testsuites/integration/context/entities/ArtifactKeyTestEntity.java +++ b/testsuites/integration/integration-context-test/src/test/java/org/onap/policy/apex/testsuites/integration/context/entities/ArtifactKeyTestEntity.java @@ -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,9 +24,6 @@ package org.onap.policy.apex.testsuites.integration.context.entities; import java.util.Arrays; import java.util.List; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.Table; import javax.xml.bind.annotation.XmlElement; import lombok.AllArgsConstructor; import lombok.EqualsAndHashCode; @@ -42,8 +39,6 @@ import org.onap.policy.apex.model.basicmodel.concepts.AxValidationResult; /** * The Class ArtifactKeyTestEntity is an entity for testing artifact keys. */ -@Entity -@Table(name = "ArtifactKeyTestEntity") @Getter @Setter @ToString @@ -52,7 +47,6 @@ import org.onap.policy.apex.model.basicmodel.concepts.AxValidationResult; public class ArtifactKeyTestEntity extends AxConcept { private static final long serialVersionUID = -2962570563281067896L; - @EmbeddedId() @XmlElement(name = "key", required = true) protected AxArtifactKey key; diff --git a/testsuites/integration/integration-context-test/src/test/java/org/onap/policy/apex/testsuites/integration/context/entities/ReferenceKeyTestEntity.java b/testsuites/integration/integration-context-test/src/test/java/org/onap/policy/apex/testsuites/integration/context/entities/ReferenceKeyTestEntity.java index a8b90d17a..8492ca898 100644 --- a/testsuites/integration/integration-context-test/src/test/java/org/onap/policy/apex/testsuites/integration/context/entities/ReferenceKeyTestEntity.java +++ b/testsuites/integration/integration-context-test/src/test/java/org/onap/policy/apex/testsuites/integration/context/entities/ReferenceKeyTestEntity.java @@ -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,9 +24,6 @@ package org.onap.policy.apex.testsuites.integration.context.entities; import java.util.Arrays; import java.util.List; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.Table; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; import lombok.AllArgsConstructor; @@ -44,8 +41,6 @@ import org.onap.policy.apex.model.basicmodel.xml.AxReferenceKeyAdapter; /** * The Class ReferenceKeyTestEntity provides a reference key test concept. */ -@Entity -@Table(name = "ReferenceKeyTestEntity") @Getter @Setter @ToString @@ -54,7 +49,6 @@ import org.onap.policy.apex.model.basicmodel.xml.AxReferenceKeyAdapter; public class ReferenceKeyTestEntity extends AxConcept { private static final long serialVersionUID = -2962570563281067895L; - @EmbeddedId() @XmlElement(name = "key", required = true) @XmlJavaTypeAdapter(AxReferenceKeyAdapter.class) protected AxReferenceKey key; diff --git a/testsuites/integration/integration-context-test/src/test/resources/META-INF/persistence.xml b/testsuites/integration/integration-context-test/src/test/resources/META-INF/persistence.xml deleted file mode 100644 index 341c33e89..000000000 --- a/testsuites/integration/integration-context-test/src/test/resources/META-INF/persistence.xml +++ /dev/null @@ -1,51 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - ============LICENSE_START======================================================= - Copyright (C) 2016-2018 Ericsson. All rights reserved. - Modifications Copyright (C) 2019-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========================================================= ---> - -<persistence xmlns="http://java.sun.com/xml/ns/persistence" version="2.0"> - <persistence-unit name="DAOTest" transaction-type="RESOURCE_LOCAL"> - <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider> - - <class>org.onap.policy.apex.model.basicmodel.dao.converters.CDataConditioner</class> - <class>org.onap.policy.apex.model.basicmodel.dao.converters.Uuid2String</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxConcept</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxKeyInfo</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxKeyInformation</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxModel</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.TestEntity</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextSchema</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextSchemas</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextAlbum</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextAlbums</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextModel</class> - - <properties> - <property name="javax.persistence.jdbc.url" value="jdbc:derby:memory:apex_test" /> - <property name="eclipselink.target-database" value="Derby" /> - <property name="javax.persistence.jdbc.driver" value="org.apache.derby.jdbc.EmbeddedDriver" /> - - <property name="eclipselink.ddl-generation" value="drop-and-create-tables" /> - <property name="eclipselink.ddl-generation.output-mode" value="database" /> - <property name="eclipselink.logging.level" value="INFO" /> - </properties> - </persistence-unit> -</persistence> diff --git a/testsuites/integration/integration-executor-test/src/test/java/org/onap/policy/apex/testsuites/integration/executor/handling/TestApexSamplePolicyCreateModelFiles.java b/testsuites/integration/integration-executor-test/src/test/java/org/onap/policy/apex/testsuites/integration/executor/handling/TestApexSamplePolicyCreateModelFiles.java index 956691797..2cc7a791f 100644 --- a/testsuites/integration/integration-executor-test/src/test/java/org/onap/policy/apex/testsuites/integration/executor/handling/TestApexSamplePolicyCreateModelFiles.java +++ b/testsuites/integration/integration-executor-test/src/test/java/org/onap/policy/apex/testsuites/integration/executor/handling/TestApexSamplePolicyCreateModelFiles.java @@ -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(); } } diff --git a/testsuites/integration/integration-executor-test/src/test/java/org/onap/policy/apex/testsuites/integration/executor/handling/TestApexSamplePolicyDbWrite.java b/testsuites/integration/integration-executor-test/src/test/java/org/onap/policy/apex/testsuites/integration/executor/handling/TestApexSamplePolicyDbWrite.java deleted file mode 100644 index 413b57880..000000000 --- a/testsuites/integration/integration-executor-test/src/test/java/org/onap/policy/apex/testsuites/integration/executor/handling/TestApexSamplePolicyDbWrite.java +++ /dev/null @@ -1,64 +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.testsuites.integration.executor.handling; - -import java.sql.Connection; -import java.sql.DriverManager; -import org.junit.Before; -import org.junit.Test; -import org.onap.policy.apex.model.basicmodel.dao.DaoParameters; -import org.onap.policy.apex.model.basicmodel.dao.impl.DefaultApexDao; -import org.onap.policy.apex.model.basicmodel.test.TestApexModel; -import org.onap.policy.apex.model.policymodel.concepts.AxPolicyModel; - -/** - * The Class TestApexSamplePolicyDbWrite. - */ -public class TestApexSamplePolicyDbWrite { - TestApexModel<AxPolicyModel> testApexModel; - - /** - * Setup. - * - * @throws Exception the exception - */ - @Before - public void setup() throws Exception { - final TestApexSamplePolicyModelCreator apexPolicyModelCreator = new TestApexSamplePolicyModelCreator("MVEL"); - testApexModel = new TestApexModel<AxPolicyModel>(AxPolicyModel.class, apexPolicyModelCreator); - } - - /** - * Test model write read jpa. - * - * @throws Exception the exception - */ - @Test - public void testModelWriteReadJpa() throws Exception { - final DaoParameters DaoParameters = new DaoParameters(); - DaoParameters.setPluginClass(DefaultApexDao.class.getName()); - DaoParameters.setPersistenceUnit("SampleModelTest"); - - Connection connection = DriverManager.getConnection("jdbc:h2:mem:testdb"); - testApexModel.testApexModelWriteReadJpa(DaoParameters); - connection.close(); - } -} diff --git a/testsuites/integration/integration-executor-test/src/test/java/org/onap/policy/apex/testsuites/integration/executor/handling/TestApexSamplePolicyModel.java b/testsuites/integration/integration-executor-test/src/test/java/org/onap/policy/apex/testsuites/integration/executor/handling/TestApexSamplePolicyModel.java index 0561162c8..3cb7369fb 100644 --- a/testsuites/integration/integration-executor-test/src/test/java/org/onap/policy/apex/testsuites/integration/executor/handling/TestApexSamplePolicyModel.java +++ b/testsuites/integration/integration-executor-test/src/test/java/org/onap/policy/apex/testsuites/integration/executor/handling/TestApexSamplePolicyModel.java @@ -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. @@ -23,13 +23,9 @@ package org.onap.policy.apex.testsuites.integration.executor.handling; import static org.junit.Assert.assertEquals; -import java.sql.Connection; -import java.sql.DriverManager; import org.junit.Before; import org.junit.Test; import org.onap.policy.apex.model.basicmodel.concepts.AxValidationResult; -import org.onap.policy.apex.model.basicmodel.dao.DaoParameters; -import org.onap.policy.apex.model.basicmodel.dao.impl.DefaultApexDao; import org.onap.policy.apex.model.basicmodel.test.TestApexModel; import org.onap.policy.apex.model.policymodel.concepts.AxPolicyModel; @@ -63,16 +59,6 @@ public class TestApexSamplePolicyModel { } /** - * Test model write read xml. - * - * @throws Exception the exception - */ - @Test - public void testModelWriteReadXml() throws Exception { - testApexModel.testApexModelWriteReadXml(); - } - - /** * Test model write read json. * * @throws Exception the exception @@ -81,22 +67,4 @@ public class TestApexSamplePolicyModel { public void testModelWriteReadJson() throws Exception { testApexModel.testApexModelWriteReadJson(); } - - /** - * Test model write read jpa. - * - * @throws Exception the exception - */ - @Test - public void testModelWriteReadJpa() throws Exception { - final DaoParameters DaoParameters = new DaoParameters(); - DaoParameters.setPluginClass(DefaultApexDao.class.getName()); - DaoParameters.setPersistenceUnit("SampleModelTest"); - - Connection connection = DriverManager.getConnection("jdbc:h2:mem:testdb"); - testApexModel.testApexModelWriteReadJpa(DaoParameters); - connection.close(); - } - - } diff --git a/testsuites/integration/integration-executor-test/src/test/resources/META-INF/persistence.xml b/testsuites/integration/integration-executor-test/src/test/resources/META-INF/persistence.xml deleted file mode 100644 index b2d6a96ed..000000000 --- a/testsuites/integration/integration-executor-test/src/test/resources/META-INF/persistence.xml +++ /dev/null @@ -1,67 +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========================================================= ---> - -<persistence xmlns="http://java.sun.com/xml/ns/persistence" version="2.0"> - <persistence-unit name="SampleModelTest" transaction-type="RESOURCE_LOCAL"> - <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider> - - <class>org.onap.policy.apex.model.basicmodel.dao.converters.CDataConditioner</class> - <class>org.onap.policy.apex.model.basicmodel.dao.converters.Uuid2String</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxConcept</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxKeyInfo</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxKeyInformation</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.AxModel</class> - <class>org.onap.policy.apex.model.basicmodel.concepts.TestEntity</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextSchema</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextSchemas</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextAlbum</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextAlbums</class> - <class>org.onap.policy.apex.model.contextmodel.concepts.AxContextModel</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxField</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxInputField</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxOutputField</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxEvent</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxEvents</class> - <class>org.onap.policy.apex.model.eventmodel.concepts.AxEventModel</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxLogic</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTaskParameter</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTaskLogic</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTask</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTasks</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxTaskSelectionLogic</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxStateFinalizerLogic</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxStateOutput</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxStateTaskReference</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxState</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxPolicy</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxPolicies</class> - <class>org.onap.policy.apex.model.policymodel.concepts.AxPolicyModel</class> - - <properties> - <property name="javax.persistence.jdbc.url" value="jdbc:h2:mem:testdb" /> - <property name="javax.persistence.jdbc.driver" value="org.h2.Driver" /> - <property name="eclipselink.ddl-generation" value="drop-and-create-tables" /> - <property name="eclipselink.ddl-generation.output-mode" value="database" /> - <property name="eclipselink.logging.level" value="INFO" /> - </properties> - </persistence-unit> -</persistence> diff --git a/tools/model-generator/src/main/java/org/onap/policy/apex/tools/model/generator/model2cli/Model2Cli.java b/tools/model-generator/src/main/java/org/onap/policy/apex/tools/model/generator/model2cli/Model2Cli.java index bd5b83518..d43e7cdbb 100644 --- a/tools/model-generator/src/main/java/org/onap/policy/apex/tools/model/generator/model2cli/Model2Cli.java +++ b/tools/model-generator/src/main/java/org/onap/policy/apex/tools/model/generator/model2cli/Model2Cli.java @@ -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()) { diff --git a/tools/model-generator/src/main/java/org/onap/policy/apex/tools/model/generator/model2event/Model2JsonEventSchema.java b/tools/model-generator/src/main/java/org/onap/policy/apex/tools/model/generator/model2event/Model2JsonEventSchema.java index ad0f3b613..d9daee5ca 100644 --- a/tools/model-generator/src/main/java/org/onap/policy/apex/tools/model/generator/model2event/Model2JsonEventSchema.java +++ b/tools/model-generator/src/main/java/org/onap/policy/apex/tools/model/generator/model2event/Model2JsonEventSchema.java @@ -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()) { diff --git a/tools/model-generator/src/test/java/org/onap/policy/apex/tools/model/generator/model2cli/Model2CliTest.java b/tools/model-generator/src/test/java/org/onap/policy/apex/tools/model/generator/model2cli/Model2CliTest.java index 56c4197ea..82c7a24f8 100644 --- a/tools/model-generator/src/test/java/org/onap/policy/apex/tools/model/generator/model2cli/Model2CliTest.java +++ b/tools/model-generator/src/test/java/org/onap/policy/apex/tools/model/generator/model2cli/Model2CliTest.java @@ -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); - } } diff --git a/tools/model-generator/src/test/resources/ExecutionPropertiesRestTestPolicyModel.json b/tools/model-generator/src/test/resources/ExecutionPropertiesRestTestPolicyModel.json index 14a6234e3..998488bfa 100644 --- a/tools/model-generator/src/test/resources/ExecutionPropertiesRestTestPolicyModel.json +++ b/tools/model-generator/src/test/resources/ExecutionPropertiesRestTestPolicyModel.json @@ -1,530 +1,574 @@ { - "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" + } + } + ] + } + } } diff --git a/tools/model-generator/src/test/resources/SmallModel.json b/tools/model-generator/src/test/resources/SmallModel.json index 5c0628809..12c402d9a 100644 --- a/tools/model-generator/src/test/resources/SmallModel.json +++ b/tools/model-generator/src/test/resources/SmallModel.json @@ -1,416 +1,453 @@ { - "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" + } + } + ] + } + } } |