diff options
author | arkadiusz.adamski <aadamski@est.tech> | 2021-04-09 15:23:46 +0100 |
---|---|---|
committer | Jorge Hernandez <jorge.hernandez-herrero@att.com> | 2021-04-19 13:36:59 +0000 |
commit | af41a79aa9554919b83b5120f18e1f130ecb59b4 (patch) | |
tree | 2df0f2ef89e60ef6ab40886cfd99c931ec243292 /testsuites/performance/performance-benchmark-test | |
parent | 3f9538b3067251d5e5182f257e0a8b5269f4784d (diff) |
Update jMeter test files
- Update performance test file
- Update stability test file
Issue-ID: POLICY-3109
Signed-off-by: arkadiusz.adamski <aadamski@est.tech>
Change-Id: Ibcab9cd012ed9ea50cb389f45ae7d8149b850a2d
(cherry picked from commit 4daab4def85bf5de00fb3d4cd01ebb38b61760be)
Diffstat (limited to 'testsuites/performance/performance-benchmark-test')
-rw-r--r-- | testsuites/performance/performance-benchmark-test/src/main/resources/apexPdpPerformanceTestPlan.jmx | 2928 |
1 files changed, 2928 insertions, 0 deletions
diff --git a/testsuites/performance/performance-benchmark-test/src/main/resources/apexPdpPerformanceTestPlan.jmx b/testsuites/performance/performance-benchmark-test/src/main/resources/apexPdpPerformanceTestPlan.jmx new file mode 100644 index 000000000..5d6533e29 --- /dev/null +++ b/testsuites/performance/performance-benchmark-test/src/main/resources/apexPdpPerformanceTestPlan.jmx @@ -0,0 +1,2928 @@ +<?xml version="1.0" encoding="UTF-8"?> +<jmeterTestPlan version="1.2" properties="5.0" jmeter="5.4.1"> + <hashTree> + <TestPlan guiclass="TestPlanGui" testclass="TestPlan" testname="APEX PDP STABILITY TEST PLAN" enabled="true"> + <stringProp name="TestPlan.comments"></stringProp> + <boolProp name="TestPlan.functional_mode">false</boolProp> + <boolProp name="TestPlan.tearDown_on_shutdown">true</boolProp> + <boolProp name="TestPlan.serialize_threadgroups">true</boolProp> + <elementProp name="TestPlan.user_defined_variables" elementType="Arguments" guiclass="ArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true"> + <collectionProp name="Arguments.arguments"/> + </elementProp> + <stringProp name="TestPlan.user_define_classpath"></stringProp> + </TestPlan> + <hashTree> + <HeaderManager guiclass="HeaderPanel" testclass="HeaderManager" testname="HTTP Header Manager" enabled="true"> + <collectionProp name="HeaderManager.headers"> + <elementProp name="" elementType="Header"> + <stringProp name="Header.name">Content-Type</stringProp> + <stringProp name="Header.value">application/json</stringProp> + </elementProp> + <elementProp name="" elementType="Header"> + <stringProp name="Header.name">Accept</stringProp> + <stringProp name="Header.value">application/json</stringProp> + </elementProp> + </collectionProp> + </HeaderManager> + <hashTree/> + <ConfigTestElement guiclass="HttpDefaultsGui" testclass="ConfigTestElement" testname="HTTP Request Defaults" enabled="false"> + <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true"> + <collectionProp name="Arguments.arguments"/> + </elementProp> + <stringProp name="HTTPSampler.domain"></stringProp> + <stringProp name="HTTPSampler.port">23324</stringProp> + <stringProp name="HTTPSampler.protocol">http</stringProp> + <stringProp name="HTTPSampler.contentEncoding"></stringProp> + <stringProp name="HTTPSampler.path"></stringProp> + <stringProp name="HTTPSampler.concurrentPool">6</stringProp> + <stringProp name="HTTPSampler.connect_timeout"></stringProp> + <stringProp name="HTTPSampler.response_timeout"></stringProp> + </ConfigTestElement> + <hashTree/> + <Arguments guiclass="ArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true"> + <collectionProp name="Arguments.arguments"> + <elementProp name="threads" elementType="Argument"> + <stringProp name="Argument.name">threads</stringProp> + <stringProp name="Argument.value">${__P(threads,20)}</stringProp> + <stringProp name="Argument.metadata">=</stringProp> + </elementProp> + <elementProp name="threadsTimeOutInMs" elementType="Argument"> + <stringProp name="Argument.name">threadsTimeOutInMs</stringProp> + <stringProp name="Argument.value">${__P(threadsTimeOutInMs,5000)}</stringProp> + <stringProp name="Argument.metadata">=</stringProp> + </elementProp> + <elementProp name="wait" elementType="Argument"> + <stringProp name="Argument.name">wait</stringProp> + <stringProp name="Argument.value">${__P(wait,10000)}</stringProp> + <stringProp name="Argument.desc">Wait time between requests to apex-pdp</stringProp> + <stringProp name="Argument.metadata">=</stringProp> + </elementProp> + <elementProp name="PAP_PORT" elementType="Argument"> + <stringProp name="Argument.name">PAP_PORT</stringProp> + <stringProp name="Argument.value">${__P(PAP_PORT,30211)}</stringProp> + <stringProp name="Argument.metadata">=</stringProp> + </elementProp> + <elementProp name="API_PORT" elementType="Argument"> + <stringProp name="Argument.name">API_PORT</stringProp> + <stringProp name="Argument.value">${__P(API_PORT,30785)}</stringProp> + <stringProp name="Argument.metadata">=</stringProp> + </elementProp> + <elementProp name="APEX_PORT" elementType="Argument"> + <stringProp name="Argument.name">APEX_PORT</stringProp> + <stringProp name="Argument.value">${__P(APEX_PORT,30687)}</stringProp> + <stringProp name="Argument.metadata">=</stringProp> + </elementProp> + <elementProp name="DMAAP_PORT" elementType="Argument"> + <stringProp name="Argument.name">DMAAP_PORT</stringProp> + <stringProp name="Argument.value">${__P(DMAAP_PORT,31345)}</stringProp> + <stringProp name="Argument.metadata">=</stringProp> + </elementProp> + <elementProp name="HOSTNAME" elementType="Argument"> + <stringProp name="Argument.name">HOSTNAME</stringProp> + <stringProp name="Argument.value">${__P(HOSTNAME,10.2.0.120)}</stringProp> + <stringProp name="Argument.metadata">=</stringProp> + </elementProp> + <elementProp name="LOG_PATH" elementType="Argument"> + <stringProp name="Argument.name">LOG_PATH</stringProp> + <stringProp name="Argument.value">${__P(LOG_PATH,/home/arkadiusza/apex_stability)}</stringProp> + <stringProp name="Argument.metadata">=</stringProp> + </elementProp> + </collectionProp> + </Arguments> + <hashTree/> + <AuthManager guiclass="AuthPanel" testclass="AuthManager" testname="HTTP Authorization Manager" enabled="true"> + <collectionProp name="AuthManager.auth_list"> + <elementProp name="" elementType="Authorization"> + <stringProp name="Authorization.url">https://${HOSTNAME}:${API_PORT}</stringProp> + <stringProp name="Authorization.username">healthcheck</stringProp> + <stringProp name="Authorization.password">zb!XztG34</stringProp> + <stringProp name="Authorization.domain"></stringProp> + <stringProp name="Authorization.realm"></stringProp> + </elementProp> + <elementProp name="" elementType="Authorization"> + <stringProp name="Authorization.url">https://${HOSTNAME}:${PAP_PORT}</stringProp> + <stringProp name="Authorization.username">healthcheck</stringProp> + <stringProp name="Authorization.password">zb!XztG34</stringProp> + <stringProp name="Authorization.domain"></stringProp> + <stringProp name="Authorization.realm"></stringProp> + </elementProp> + <elementProp name="" elementType="Authorization"> + <stringProp name="Authorization.url">https://${HOSTNAME}:${APEX_PORT}</stringProp> + <stringProp name="Authorization.username">healthcheck</stringProp> + <stringProp name="Authorization.password">zb!XztG34</stringProp> + <stringProp name="Authorization.domain"></stringProp> + <stringProp name="Authorization.realm"></stringProp> + </elementProp> + </collectionProp> + <boolProp name="AuthManager.controlledByThreadGroup">false</boolProp> + </AuthManager> + <hashTree/> + <SetupThreadGroup guiclass="SetupThreadGroupGui" testclass="SetupThreadGroup" testname="setUp Thread Group" enabled="true"> + <stringProp name="ThreadGroup.on_sample_error">continue</stringProp> + <elementProp name="ThreadGroup.main_controller" elementType="LoopController" guiclass="LoopControlPanel" testclass="LoopController" testname="Loop Controller" enabled="true"> + <boolProp name="LoopController.continue_forever">false</boolProp> + <stringProp name="LoopController.loops">1</stringProp> + </elementProp> + <stringProp name="ThreadGroup.num_threads">1</stringProp> + <stringProp name="ThreadGroup.ramp_time">1</stringProp> + <boolProp name="ThreadGroup.scheduler">false</boolProp> + <stringProp name="ThreadGroup.duration"></stringProp> + <stringProp name="ThreadGroup.delay"></stringProp> + <boolProp name="ThreadGroup.same_user_on_next_iteration">true</boolProp> + </SetupThreadGroup> + <hashTree> + <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Create Policy" enabled="true"> + <boolProp name="HTTPSampler.postBodyRaw">true</boolProp> + <elementProp name="HTTPsampler.Arguments" elementType="Arguments"> + <collectionProp name="Arguments.arguments"> + <elementProp name="" elementType="HTTPArgument"> + <boolProp name="HTTPArgument.always_encode">false</boolProp> + <stringProp name="Argument.value">{
 + "tosca_definitions_version": "tosca_simple_yaml_1_1_0",
 + "topology_template": {
 + "policies": [
 + {
 + "operational.apex.stabilityTestDefaultDomain": {
 + "type": "onap.policies.native.Apex",
 + "type_version": "1.0.0",
 + "properties": {
 + "engineServiceParameters": {
 + "name": "MyApexEngine",
 + "version": "0.0.1",
 + "id": 45,
 + "instanceCount": 4,
 + "deploymentPort": 12561,
 + "engineParameters": {
 + "executorParameters": {
 + "JAVASCRIPT": {
 + "parameterClassName": "org.onap.policy.apex.plugins.executor.javascript.JavascriptExecutorParameters"
 + }
 + },
 + "contextParameters": {
 + "parameterClassName": "org.onap.policy.apex.context.parameters.ContextParameters",
 + "schemaParameters": {
 + "Avro": {
 + "parameterClassName": "org.onap.policy.apex.plugins.context.schema.avro.AvroSchemaHelperParameters"
 + }
 + }
 + }
 + },
 + "policy_type_impl": {
 + "apexPolicyModel": {
 + "key": {
 + "name": "APEXgRPCPolicy",
 + "version": "0.0.1"
 + },
 + "keyInformation": {
 + "key": {
 + "name": "APEXgRPCPolicy_KeyInfo",
 + "version": "0.0.1"
 + },
 + "keyInfoMap": {
 + "entry": [
 + {
 + "key": {
 + "name": "APEXgRPCPolicy",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "APEXgRPCPolicy",
 + "version": "0.0.1"
 + },
 + "UUID": "b8424cdb-29fb-3566-b77a-f4f847d81cc9",
 + "description": "Generated description for concept referred to by key \"APEXgRPCPolicy:0.0.1\""
 + }
 + },
 + {
 + "key": {
 + "name": "APEXgRPCPolicy_Albums",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "APEXgRPCPolicy_Albums",
 + "version": "0.0.1"
 + },
 + "UUID": "9922906c-ccaa-34f7-95e2-bcc36e77821b",
 + "description": "Generated description for concept referred to by key \"APEXgRPCPolicy_Albums:0.0.1\""
 + }
 + },
 + {
 + "key": {
 + "name": "APEXgRPCPolicy_Events",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "APEXgRPCPolicy_Events",
 + "version": "0.0.1"
 + },
 + "UUID": "5bf28afd-787c-3138-a3e1-b33ad94a038a",
 + "description": "Generated description for concept referred to by key \"APEXgRPCPolicy_Events:0.0.1\""
 + }
 + },
 + {
 + "key": {
 + "name": "APEXgRPCPolicy_KeyInfo",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "APEXgRPCPolicy_KeyInfo",
 + "version": "0.0.1"
 + },
 + "UUID": "68abaa6f-8d03-3a53-9590-007115817d5c",
 + "description": "Generated description for concept referred to by key \"APEXgRPCPolicy_KeyInfo:0.0.1\""
 + }
 + },
 + {
 + "key": {
 + "name": "APEXgRPCPolicy_Policies",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "APEXgRPCPolicy_Policies",
 + "version": "0.0.1"
 + },
 + "UUID": "819d06c3-33c2-3031-aa78-96281aa4270a",
 + "description": "Generated description for concept referred to by key \"APEXgRPCPolicy_Policies:0.0.1\""
 + }
 + },
 + {
 + "key": {
 + "name": "APEXgRPCPolicy_Schemas",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "APEXgRPCPolicy_Schemas",
 + "version": "0.0.1"
 + },
 + "UUID": "8e67d466-f990-3a39-9fd7-4490cac342dc",
 + "description": "Generated description for concept referred to by key \"APEXgRPCPolicy_Schemas:0.0.1\""
 + }
 + },
 + {
 + "key": {
 + "name": "APEXgRPCPolicy_Tasks",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "APEXgRPCPolicy_Tasks",
 + "version": "0.0.1"
 + },
 + "UUID": "4668db3d-6fe2-3885-8e47-f30cd0102f0a",
 + "description": "Generated description for concept referred to by key \"APEXgRPCPolicy_Tasks:0.0.1\""
 + }
 + },
 + {
 + "key": {
 + "name": "CDSActionIdentifiersType",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "CDSActionIdentifiersType",
 + "version": "0.0.1"
 + },
 + "UUID": "6e5fa19b-14df-37e3-a4ae-8c537e861a82",
 + "description": "Generated description for concept referred to by key \"CDSActionIdentifiersType:0.0.1\""
 + }
 + },
 + {
 + "key": {
 + "name": "CDSCreateSubscriptionPayloadType",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "CDSCreateSubscriptionPayloadType",
 + "version": "0.0.1"
 + },
 + "UUID": "8350ac5e-c157-38b9-9614-a0f93a830e60",
 + "description": "Generated description for concept referred to by key \"CDSCreateSubscriptionPayloadType:0.0.1\""
 + }
 + },
 + {
 + "key": {
 + "name": "CDSDeleteSubscriptionPayloadType",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "CDSDeleteSubscriptionPayloadType",
 + "version": "0.0.1"
 + },
 + "UUID": "12658406-9147-3c9d-a38c-5ad5e30b092b",
 + "description": "Generated description for concept referred to by key \"CDSDeleteSubscriptionPayloadType:0.0.1\""
 + }
 + },
 + {
 + "key": {
 + "name": "CDSRequestCommonHeaderType",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "CDSRequestCommonHeaderType",
 + "version": "0.0.1"
 + },
 + "UUID": "35590ac0-062c-39f1-8786-b4ff716e30b1",
 + "description": "Generated description for concept referred to by key \"CDSRequestCommonHeaderType:0.0.1\""
 + }
 + },
 + {
 + "key": {
 + "name": "CDSResponseCommonHeaderType",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "CDSResponseCommonHeaderType",
 + "version": "0.0.1"
 + },
 + "UUID": "dd7e1805-885a-350b-aaf9-ed541321ae3c",
 + "description": "Generated description for concept referred to by key \"CDSResponseCommonHeaderType:0.0.1\""
 + }
 + },
 + {
 + "key": {
 + "name": "CDSResponseEvent",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "CDSResponseEvent",
 + "version": "0.0.1"
 + },
 + "UUID": "15161037-9ac8-3223-820f-4e743562a345",
 + "description": "Generated description for concept referred to by key \"CDSResponseEvent:0.0.1\""
 + }
 + },
 + {
 + "key": {
 + "name": "CDSResponsePayloadType",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "CDSResponsePayloadType",
 + "version": "0.0.1"
 + },
 + "UUID": "97dc5f58-25bb-3c20-8d53-fdb70d7ca256",
 + "description": "Generated description for concept referred to by key \"CDSResponsePayloadType:0.0.1\""
 + }
 + },
 + {
 + "key": {
 + "name": "CDSResponsePolicy",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "CDSResponsePolicy",
 + "version": "0.0.1"
 + },
 + "UUID": "c28b05a8-7436-3ac0-82ca-6d5fc18c9584",
 + "description": "Generated description for concept referred to by key \"CDSResponsePolicy:0.0.1\""
 + }
 + },
 + {
 + "key": {
 + "name": "CDSResponseStatusEvent",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "CDSResponseStatusEvent",
 + "version": "0.0.1"
 + },
 + "UUID": "7986e21b-32f7-302e-9554-31f21b673493",
 + "description": "Generated description for concept referred to by key \"CDSResponseStatusEvent:0.0.1\""
 + }
 + },
 + {
 + "key": {
 + "name": "CDSResponseStatusType",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "CDSResponseStatusType",
 + "version": "0.0.1"
 + },
 + "UUID": "92b8a2cf-344e-3ce1-8cc0-2b7d3cb695fa",
 + "description": "Generated description for concept referred to by key \"CDSResponseStatusType:0.0.1\""
 + }
 + },
 + {
 + "key": {
 + "name": "CDSResponseTask",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "CDSResponseTask",
 + "version": "0.0.1"
 + },
 + "UUID": "d22c78a5-272c-391d-8083-28588280caf9",
 + "description": "Generated description for concept referred to by key \"CDSResponseTask:0.0.1\""
 + }
 + },
 + {
 + "key": {
 + "name": "CreateSubscriptionPayloadEvent",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "CreateSubscriptionPayloadEvent",
 + "version": "0.0.1"
 + },
 + "UUID": "92162397-1a8e-3a3f-a469-d2af7700af4a",
 + "description": "Generated description for concept referred to by key \"CreateSubscriptionPayloadEvent:0.0.1\""
 + }
 + },
 + {
 + "key": {
 + "name": "CreateSubscriptionPayloadTask",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "CreateSubscriptionPayloadTask",
 + "version": "0.0.1"
 + },
 + "UUID": "bc0c69f0-52ed-38ea-b468-ae4a6fd1730d",
 + "description": "Generated description for concept referred to by key \"CreateSubscriptionPayloadTask:0.0.1\""
 + }
 + },
 + {
 + "key": {
 + "name": "CreateSubscriptionRequestEvent",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "CreateSubscriptionRequestEvent",
 + "version": "0.0.1"
 + },
 + "UUID": "7cfcf843-337e-3f41-b755-5043cb0a08fc",
 + "description": "Generated description for concept referred to by key \"CreateSubscriptionRequestEvent:0.0.1\""
 + }
 + },
 + {
 + "key": {
 + "name": "CreateSubscriptionRequestTask",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "CreateSubscriptionRequestTask",
 + "version": "0.0.1"
 + },
 + "UUID": "89cb75e9-f06c-30d3-b4ff-698d45f63869",
 + "description": "Generated description for concept referred to by key \"CreateSubscriptionRequestTask:0.0.1\""
 + }
 + },
 + {
 + "key": {
 + "name": "DeleteSubscriptionPayloadEvent",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "DeleteSubscriptionPayloadEvent",
 + "version": "0.0.1"
 + },
 + "UUID": "994fa441-04ab-33bb-832d-1cd12ab5d074",
 + "description": "Generated description for concept referred to by key \"DeleteSubscriptionPayloadEvent:0.0.1\""
 + }
 + },
 + {
 + "key": {
 + "name": "DeleteSubscriptionPayloadTask",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "DeleteSubscriptionPayloadTask",
 + "version": "0.0.1"
 + },
 + "UUID": "0f519117-5fea-3e4b-941f-8f778100465f",
 + "description": "Generated description for concept referred to by key \"DeleteSubscriptionPayloadTask:0.0.1\""
 + }
 + },
 + {
 + "key": {
 + "name": "DeleteSubscriptionRequestEvent",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "DeleteSubscriptionRequestEvent",
 + "version": "0.0.1"
 + },
 + "UUID": "15d618d8-1689-3a05-89a5-05efa9388f65",
 + "description": "Generated description for concept referred to by key \"DeleteSubscriptionRequestEvent:0.0.1\""
 + }
 + },
 + {
 + "key": {
 + "name": "DeleteSubscriptionRequestTask",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "DeleteSubscriptionRequestTask",
 + "version": "0.0.1"
 + },
 + "UUID": "acb772fe-d442-39e3-98f9-b1080caf4150",
 + "description": "Generated description for concept referred to by key \"DeleteSubscriptionRequestTask:0.0.1\""
 + }
 + },
 + {
 + "key": {
 + "name": "PMSubscriptionAlbum",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "PMSubscriptionAlbum",
 + "version": "0.0.1"
 + },
 + "UUID": "c2bd6f0d-6854-317a-9be2-97c08338428c",
 + "description": "Generated description for concept referred to by key \"PMSubscriptionAlbum:0.0.1\""
 + }
 + },
 + {
 + "key": {
 + "name": "PMSubscriptionOutputEvent",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "PMSubscriptionOutputEvent",
 + "version": "0.0.1"
 + },
 + "UUID": "992b7819-9f69-3aa0-bb0f-6e45ea15ce05",
 + "description": "Generated description for concept referred to by key \"PMSubscriptionOutputEvent:0.0.1\""
 + }
 + },
 + {
 + "key": {
 + "name": "PMSubscriptionType",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "PMSubscriptionType",
 + "version": "0.0.1"
 + },
 + "UUID": "73c1c397-4fc3-357f-93b6-a8ad707fbaae",
 + "description": "Generated description for concept referred to by key \"PMSubscriptionType: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": "ReceivePMSubscriptionTask",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "ReceivePMSubscriptionTask",
 + "version": "0.0.1"
 + },
 + "UUID": "6c1c6c45-26e0-3591-94bf-679d20e283f4",
 + "description": "Generated description for concept referred to by key \"ReceivePMSubscriptionTask:0.0.1\""
 + }
 + },
 + {
 + "key": {
 + "name": "SimpleIntType",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "SimpleIntType",
 + "version": "0.0.1"
 + },
 + "UUID": "153791fd-ae0a-36a7-88a5-309a7936415d",
 + "description": "Generated description for concept referred to by key \"SimpleIntType: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": "SubscriptionStatusType",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "SubscriptionStatusType",
 + "version": "0.0.1"
 + },
 + "UUID": "597643b1-9db1-31ce-85d0-e1c63c43b30b",
 + "description": "Generated description for concept referred to by key \"SubscriptionStatusType:0.0.1\""
 + }
 + },
 + {
 + "key": {
 + "name": "SubscriptionType",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "SubscriptionType",
 + "version": "0.0.1"
 + },
 + "UUID": "184547bb-7d64-3cb2-a273-d7185102c5ce",
 + "description": "Generated description for concept referred to by key \"SubscriptionType: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": "testPolicyB",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "testPolicyB",
 + "version": "0.0.1"
 + },
 + "UUID": "ead590a3-ba2e-3a01-b6e9-9329f5c8fee1",
 + "description": "Generated description for concept referred to by key \"testPolicyB:0.0.1\""
 + }
 + }
 + ]
 + }
 + },
 + "policies": {
 + "key": {
 + "name": "APEXgRPCPolicy_Policies",
 + "version": "0.0.1"
 + },
 + "policyMap": {
 + "entry": [
 + {
 + "key": {
 + "name": "CDSResponsePolicy",
 + "version": "0.0.1"
 + },
 + "value": {
 + "policyKey": {
 + "name": "CDSResponsePolicy",
 + "version": "0.0.1"
 + },
 + "template": "Freestyle",
 + "state": {
 + "entry": [
 + {
 + "key": "CDSResponseState",
 + "value": {
 + "stateKey": {
 + "parentKeyName": "CDSResponsePolicy",
 + "parentKeyVersion": "0.0.1",
 + "parentLocalName": "NULL",
 + "localName": "CDSResponseState"
 + },
 + "trigger": {
 + "name": "CDSResponseEvent",
 + "version": "0.0.1"
 + },
 + "stateOutputs": {
 + "entry": [
 + {
 + "key": "ResponseOutput",
 + "value": {
 + "key": {
 + "parentKeyName": "CDSResponsePolicy",
 + "parentKeyVersion": "0.0.1",
 + "parentLocalName": "CDSResponseState",
 + "localName": "ResponseOutput"
 + },
 + "outgoingEvent": {
 + "name": "CDSResponseStatusEvent",
 + "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": "CDSResponseTask",
 + "version": "0.0.1"
 + },
 + "taskReferences": {
 + "entry": [
 + {
 + "key": {
 + "name": "CDSResponseTask",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "parentKeyName": "CDSResponsePolicy",
 + "parentKeyVersion": "0.0.1",
 + "parentLocalName": "CDSResponseState",
 + "localName": "CDSResponsePolicy"
 + },
 + "outputType": "DIRECT",
 + "output": {
 + "parentKeyName": "CDSResponsePolicy",
 + "parentKeyVersion": "0.0.1",
 + "parentLocalName": "CDSResponseState",
 + "localName": "ResponseOutput"
 + }
 + }
 + }
 + ]
 + }
 + }
 + }
 + ]
 + },
 + "firstState": "CDSResponseState"
 + }
 + },
 + {
 + "key": {
 + "name": "ReceiveEventPolicy",
 + "version": "0.0.1"
 + },
 + "value": {
 + "policyKey": {
 + "name": "ReceiveEventPolicy",
 + "version": "0.0.1"
 + },
 + "template": "Freestyle",
 + "state": {
 + "entry": [
 + {
 + "key": "CreateOrDeleteState",
 + "value": {
 + "stateKey": {
 + "parentKeyName": "ReceiveEventPolicy",
 + "parentKeyVersion": "0.0.1",
 + "parentLocalName": "NULL",
 + "localName": "CreateOrDeleteState"
 + },
 + "trigger": {
 + "name": "PMSubscriptionOutputEvent",
 + "version": "0.0.1"
 + },
 + "stateOutputs": {
 + "entry": [
 + {
 + "key": "CreateSubscriptionPayload",
 + "value": {
 + "key": {
 + "parentKeyName": "ReceiveEventPolicy",
 + "parentKeyVersion": "0.0.1",
 + "parentLocalName": "CreateOrDeleteState",
 + "localName": "CreateSubscriptionPayload"
 + },
 + "outgoingEvent": {
 + "name": "CreateSubscriptionPayloadEvent",
 + "version": "0.0.1"
 + },
 + "nextState": {
 + "parentKeyName": "ReceiveEventPolicy",
 + "parentKeyVersion": "0.0.1",
 + "parentLocalName": "NULL",
 + "localName": "CreateSubscription"
 + }
 + }
 + },
 + {
 + "key": "DeleteSubscriptionPayload",
 + "value": {
 + "key": {
 + "parentKeyName": "ReceiveEventPolicy",
 + "parentKeyVersion": "0.0.1",
 + "parentLocalName": "CreateOrDeleteState",
 + "localName": "DeleteSubscriptionPayload"
 + },
 + "outgoingEvent": {
 + "name": "DeleteSubscriptionPayloadEvent",
 + "version": "0.0.1"
 + },
 + "nextState": {
 + "parentKeyName": "ReceiveEventPolicy",
 + "parentKeyVersion": "0.0.1",
 + "parentLocalName": "NULL",
 + "localName": "DeleteSubscription"
 + }
 + }
 + }
 + ]
 + },
 + "contextAlbumReference": [
 + {
 + "name": "PMSubscriptionAlbum",
 + "version": "0.0.1"
 + }
 + ],
 + "taskSelectionLogic": {
 + "key": "TaskSelectionLogic",
 + "logicFlavour": "JAVASCRIPT",
 + "logic": "/*\n * ============LICENSE_START=======================================================\n * 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);\n\nvar pmSubscriptionInfo = executor.getContextAlbum(\"PMSubscriptionAlbum\").get(executor.inFields.get(\"albumID\").toString())\nvar changeType = pmSubscriptionInfo.get(\"changeType\").toString()\n\nif (\"CREATE\".equals(changeType)) {\n executor.subject.getTaskKey(\"CreateSubscriptionPayloadTask\").copyTo(executor.selectedTask);\n}\nelse if (\"DELETE\".equals(changeType)) {\n executor.subject.getTaskKey(\"DeleteSubscriptionPayloadTask\").copyTo(executor.selectedTask);\n}\n\ntrue;"
 + },
 + "stateFinalizerLogicMap": {
 + "entry": []
 + },
 + "defaultTask": {
 + "name": "CreateSubscriptionPayloadTask",
 + "version": "0.0.1"
 + },
 + "taskReferences": {
 + "entry": [
 + {
 + "key": {
 + "name": "CreateSubscriptionPayloadTask",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "parentKeyName": "ReceiveEventPolicy",
 + "parentKeyVersion": "0.0.1",
 + "parentLocalName": "CreateOrDeleteState",
 + "localName": "ReceiveEventPolicy"
 + },
 + "outputType": "DIRECT",
 + "output": {
 + "parentKeyName": "ReceiveEventPolicy",
 + "parentKeyVersion": "0.0.1",
 + "parentLocalName": "CreateOrDeleteState",
 + "localName": "CreateSubscriptionPayload"
 + }
 + }
 + },
 + {
 + "key": {
 + "name": "DeleteSubscriptionPayloadTask",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "parentKeyName": "ReceiveEventPolicy",
 + "parentKeyVersion": "0.0.1",
 + "parentLocalName": "CreateOrDeleteState",
 + "localName": "ReceiveEventPolicy"
 + },
 + "outputType": "DIRECT",
 + "output": {
 + "parentKeyName": "ReceiveEventPolicy",
 + "parentKeyVersion": "0.0.1",
 + "parentLocalName": "CreateOrDeleteState",
 + "localName": "DeleteSubscriptionPayload"
 + }
 + }
 + }
 + ]
 + }
 + }
 + },
 + {
 + "key": "CreateSubscription",
 + "value": {
 + "stateKey": {
 + "parentKeyName": "ReceiveEventPolicy",
 + "parentKeyVersion": "0.0.1",
 + "parentLocalName": "NULL",
 + "localName": "CreateSubscription"
 + },
 + "trigger": {
 + "name": "CreateSubscriptionPayloadEvent",
 + "version": "0.0.1"
 + },
 + "stateOutputs": {
 + "entry": [
 + {
 + "key": "IssueCreateSubscriptionRequestOutput",
 + "value": {
 + "key": {
 + "parentKeyName": "ReceiveEventPolicy",
 + "parentKeyVersion": "0.0.1",
 + "parentLocalName": "CreateSubscription",
 + "localName": "IssueCreateSubscriptionRequestOutput"
 + },
 + "outgoingEvent": {
 + "name": "CreateSubscriptionRequestEvent",
 + "version": "0.0.1"
 + },
 + "nextState": {
 + "parentKeyName": "NULL",
 + "parentKeyVersion": "0.0.0",
 + "parentLocalName": "NULL",
 + "localName": "NULL"
 + }
 + }
 + }
 + ]
 + },
 + "contextAlbumReference": [
 + {
 + "name": "PMSubscriptionAlbum",
 + "version": "0.0.1"
 + }
 + ],
 + "taskSelectionLogic": {
 + "key": "NULL",
 + "logicFlavour": "UNDEFINED",
 + "logic": ""
 + },
 + "stateFinalizerLogicMap": {
 + "entry": []
 + },
 + "defaultTask": {
 + "name": "CreateSubscriptionRequestTask",
 + "version": "0.0.1"
 + },
 + "taskReferences": {
 + "entry": [
 + {
 + "key": {
 + "name": "CreateSubscriptionRequestTask",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "parentKeyName": "ReceiveEventPolicy",
 + "parentKeyVersion": "0.0.1",
 + "parentLocalName": "CreateSubscription",
 + "localName": "ReceiveEventPolicy"
 + },
 + "outputType": "DIRECT",
 + "output": {
 + "parentKeyName": "ReceiveEventPolicy",
 + "parentKeyVersion": "0.0.1",
 + "parentLocalName": "CreateSubscription",
 + "localName": "IssueCreateSubscriptionRequestOutput"
 + }
 + }
 + }
 + ]
 + }
 + }
 + },
 + {
 + "key": "DeleteSubscription",
 + "value": {
 + "stateKey": {
 + "parentKeyName": "ReceiveEventPolicy",
 + "parentKeyVersion": "0.0.1",
 + "parentLocalName": "NULL",
 + "localName": "DeleteSubscription"
 + },
 + "trigger": {
 + "name": "DeleteSubscriptionPayloadEvent",
 + "version": "0.0.1"
 + },
 + "stateOutputs": {
 + "entry": [
 + {
 + "key": "IssueDeleteSubscriptionRequestOutput",
 + "value": {
 + "key": {
 + "parentKeyName": "ReceiveEventPolicy",
 + "parentKeyVersion": "0.0.1",
 + "parentLocalName": "DeleteSubscription",
 + "localName": "IssueDeleteSubscriptionRequestOutput"
 + },
 + "outgoingEvent": {
 + "name": "DeleteSubscriptionRequestEvent",
 + "version": "0.0.1"
 + },
 + "nextState": {
 + "parentKeyName": "NULL",
 + "parentKeyVersion": "0.0.0",
 + "parentLocalName": "NULL",
 + "localName": "NULL"
 + }
 + }
 + }
 + ]
 + },
 + "contextAlbumReference": [
 + {
 + "name": "PMSubscriptionAlbum",
 + "version": "0.0.1"
 + }
 + ],
 + "taskSelectionLogic": {
 + "key": "NULL",
 + "logicFlavour": "UNDEFINED",
 + "logic": ""
 + },
 + "stateFinalizerLogicMap": {
 + "entry": []
 + },
 + "defaultTask": {
 + "name": "DeleteSubscriptionRequestTask",
 + "version": "0.0.1"
 + },
 + "taskReferences": {
 + "entry": [
 + {
 + "key": {
 + "name": "DeleteSubscriptionRequestTask",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "parentKeyName": "ReceiveEventPolicy",
 + "parentKeyVersion": "0.0.1",
 + "parentLocalName": "DeleteSubscription",
 + "localName": "ReceiveEventPolicy"
 + },
 + "outputType": "DIRECT",
 + "output": {
 + "parentKeyName": "ReceiveEventPolicy",
 + "parentKeyVersion": "0.0.1",
 + "parentLocalName": "DeleteSubscription",
 + "localName": "IssueDeleteSubscriptionRequestOutput"
 + }
 + }
 + }
 + ]
 + }
 + }
 + },
 + {
 + "key": "ReceiveSubscriptionState",
 + "value": {
 + "stateKey": {
 + "parentKeyName": "ReceiveEventPolicy",
 + "parentKeyVersion": "0.0.1",
 + "parentLocalName": "NULL",
 + "localName": "ReceiveSubscriptionState"
 + },
 + "trigger": {
 + "name": "testPolicyB",
 + "version": "0.0.1"
 + },
 + "stateOutputs": {
 + "entry": [
 + {
 + "key": "ReceivePMSubscriptionOutput",
 + "value": {
 + "key": {
 + "parentKeyName": "ReceiveEventPolicy",
 + "parentKeyVersion": "0.0.1",
 + "parentLocalName": "ReceiveSubscriptionState",
 + "localName": "ReceivePMSubscriptionOutput"
 + },
 + "outgoingEvent": {
 + "name": "PMSubscriptionOutputEvent",
 + "version": "0.0.1"
 + },
 + "nextState": {
 + "parentKeyName": "ReceiveEventPolicy",
 + "parentKeyVersion": "0.0.1",
 + "parentLocalName": "NULL",
 + "localName": "CreateOrDeleteState"
 + }
 + }
 + }
 + ]
 + },
 + "contextAlbumReference": [
 + {
 + "name": "PMSubscriptionAlbum",
 + "version": "0.0.1"
 + }
 + ],
 + "taskSelectionLogic": {
 + "key": "NULL",
 + "logicFlavour": "UNDEFINED",
 + "logic": ""
 + },
 + "stateFinalizerLogicMap": {
 + "entry": []
 + },
 + "defaultTask": {
 + "name": "ReceivePMSubscriptionTask",
 + "version": "0.0.1"
 + },
 + "taskReferences": {
 + "entry": [
 + {
 + "key": {
 + "name": "ReceivePMSubscriptionTask",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "parentKeyName": "ReceiveEventPolicy",
 + "parentKeyVersion": "0.0.1",
 + "parentLocalName": "ReceiveSubscriptionState",
 + "localName": "ReceiveEventPolicy"
 + },
 + "outputType": "DIRECT",
 + "output": {
 + "parentKeyName": "ReceiveEventPolicy",
 + "parentKeyVersion": "0.0.1",
 + "parentLocalName": "ReceiveSubscriptionState",
 + "localName": "ReceivePMSubscriptionOutput"
 + }
 + }
 + }
 + ]
 + }
 + }
 + }
 + ]
 + },
 + "firstState": "ReceiveSubscriptionState"
 + }
 + }
 + ]
 + }
 + },
 + "tasks": {
 + "key": {
 + "name": "APEXgRPCPolicy_Tasks",
 + "version": "0.0.1"
 + },
 + "taskMap": {
 + "entry": [
 + {
 + "key": {
 + "name": "CDSResponseTask",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "CDSResponseTask",
 + "version": "0.0.1"
 + },
 + "inputFields": {
 + "entry": [
 + {
 + "key": "actionIdentifiers",
 + "value": {
 + "key": "actionIdentifiers",
 + "fieldSchemaKey": {
 + "name": "CDSActionIdentifiersType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + },
 + {
 + "key": "commonHeader",
 + "value": {
 + "key": "commonHeader",
 + "fieldSchemaKey": {
 + "name": "CDSResponseCommonHeaderType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + },
 + {
 + "key": "payload",
 + "value": {
 + "key": "payload",
 + "fieldSchemaKey": {
 + "name": "CDSResponsePayloadType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + },
 + {
 + "key": "status",
 + "value": {
 + "key": "status",
 + "fieldSchemaKey": {
 + "name": "CDSResponseStatusType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + }
 + ]
 + },
 + "outputFields": {
 + "entry": [
 + {
 + "key": "status",
 + "value": {
 + "key": "status",
 + "fieldSchemaKey": {
 + "name": "SubscriptionStatusType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + }
 + ]
 + },
 + "taskParameters": {
 + "entry": []
 + },
 + "contextAlbumReference": [
 + {
 + "name": "PMSubscriptionAlbum",
 + "version": "0.0.1"
 + }
 + ],
 + "taskLogic": {
 + "key": "TaskLogic",
 + "logicFlavour": "JAVASCRIPT",
 + "logic": "/*\n * ============LICENSE_START=======================================================\n * Copyright (C) 2020 Nordix. 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\n\nvar uuidType = java.util.UUID;\n\nvar albumID = uuidType.fromString(\"d0050623-18e5-46c9-9298-9a567990cd7c\");\n\nvar pmSubscriptionInfo = executor.getContextAlbum(\"PMSubscriptionAlbum\").get(albumID.toString());\n\nvar responseStatus = executor.subject.getOutFieldSchemaHelper(\"status\").createNewInstance();\n\nresponseStatus.put(\"subscriptionName\", pmSubscriptionInfo.get(\"subscription\").get(\"subscriptionName\"))\nresponseStatus.put(\"nfName\", pmSubscriptionInfo.get(\"nfName\"))\nresponseStatus.put(\"changeType\", pmSubscriptionInfo.get(\"changeType\"))\n\nvar response = executor.inFields.get(\"payload\")\n\nif (\"failure\".equals(response.get(\"create_DasH_subscription_DasH_response\").get(\"odl_DasH_response\").get(\"status\"))) {\n responseStatus.put(\"message\", \"failed\")\n} else {\n responseStatus.put(\"message\", \"success\")\n}\n\nexecutor.outFields.put(\"status\", responseStatus)\n\ntrue;"
 + }
 + }
 + },
 + {
 + "key": {
 + "name": "CreateSubscriptionPayloadTask",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "CreateSubscriptionPayloadTask",
 + "version": "0.0.1"
 + },
 + "inputFields": {
 + "entry": [
 + {
 + "key": "albumID",
 + "value": {
 + "key": "albumID",
 + "fieldSchemaKey": {
 + "name": "UUIDType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + }
 + ]
 + },
 + "outputFields": {
 + "entry": [
 + {
 + "key": "albumID",
 + "value": {
 + "key": "albumID",
 + "fieldSchemaKey": {
 + "name": "UUIDType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + },
 + {
 + "key": "payload",
 + "value": {
 + "key": "payload",
 + "fieldSchemaKey": {
 + "name": "CDSCreateSubscriptionPayloadType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + }
 + ]
 + },
 + "taskParameters": {
 + "entry": []
 + },
 + "contextAlbumReference": [
 + {
 + "name": "PMSubscriptionAlbum",
 + "version": "0.0.1"
 + }
 + ],
 + "taskLogic": {
 + "key": "TaskLogic",
 + "logicFlavour": "JAVASCRIPT",
 + "logic": "/*\n * ============LICENSE_START=======================================================\n * Copyright (C) 2020 Nordix. 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.info(executor.subject.id);\n\nvar pmSubscriptionInfo = executor.getContextAlbum(\"PMSubscriptionAlbum\").get(executor.inFields.get(\"albumID\").toString())\n\nvar payloadProperties = executor.subject.getOutFieldSchemaHelper(\"payload\").createNewSubInstance(\"create_DasH_subscription_DasH_properties_record\");\n\npayloadProperties.put(\"nfName\", pmSubscriptionInfo.get(\"nfName\"))\npayloadProperties.put(\"subscriptionName\", pmSubscriptionInfo.get(\"subscription\").get(\"subscriptionName\"))\npayloadProperties.put(\"administrativeState\", pmSubscriptionInfo.get(\"subscription\").get(\"administrativeState\"))\npayloadProperties.put(\"fileBasedGP\", pmSubscriptionInfo.get(\"subscription\").get(\"fileBasedGP\").toString())\npayloadProperties.put(\"fileLocation\", pmSubscriptionInfo.get(\"subscription\").get(\"fileLocation\"))\npayloadProperties.put(\"measurementGroups\", pmSubscriptionInfo.get(\"subscription\").get(\"measurementGroups\"))\n\nvar payloadEntry = executor.subject.getOutFieldSchemaHelper(\"payload\").createNewSubInstance(\"CDSRequestPayloadEntry\");\npayloadEntry.put(\"create_DasH_subscription_DasH_properties\", payloadProperties)\n\nvar payload = executor.subject.getOutFieldSchemaHelper(\"payload\").createNewInstance();\npayload.put(\"create_DasH_subscription_DasH_request\", payloadEntry);\n\nexecutor.outFields.put(\"albumID\", executor.inFields.get(\"albumID\"))\nexecutor.outFields.put(\"payload\", payload);\n\nexecutor.logger.info(\"Sending Create Subscription Event to CDS\")\n\ntrue;"
 + }
 + }
 + },
 + {
 + "key": {
 + "name": "CreateSubscriptionRequestTask",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "CreateSubscriptionRequestTask",
 + "version": "0.0.1"
 + },
 + "inputFields": {
 + "entry": [
 + {
 + "key": "albumID",
 + "value": {
 + "key": "albumID",
 + "fieldSchemaKey": {
 + "name": "UUIDType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + },
 + {
 + "key": "payload",
 + "value": {
 + "key": "payload",
 + "fieldSchemaKey": {
 + "name": "CDSCreateSubscriptionPayloadType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + }
 + ]
 + },
 + "outputFields": {
 + "entry": [
 + {
 + "key": "actionIdentifiers",
 + "value": {
 + "key": "actionIdentifiers",
 + "fieldSchemaKey": {
 + "name": "CDSActionIdentifiersType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + },
 + {
 + "key": "commonHeader",
 + "value": {
 + "key": "commonHeader",
 + "fieldSchemaKey": {
 + "name": "CDSRequestCommonHeaderType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + },
 + {
 + "key": "payload",
 + "value": {
 + "key": "payload",
 + "fieldSchemaKey": {
 + "name": "CDSCreateSubscriptionPayloadType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + }
 + ]
 + },
 + "taskParameters": {
 + "entry": []
 + },
 + "contextAlbumReference": [
 + {
 + "name": "PMSubscriptionAlbum",
 + "version": "0.0.1"
 + }
 + ],
 + "taskLogic": {
 + "key": "TaskLogic",
 + "logicFlavour": "JAVASCRIPT",
 + "logic": "/*\n * ============LICENSE_START=======================================================\n * Copyright (C) 2020 Nordix. 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.info(executor.subject.id);\n\nvar pmSubscriptionInfo = executor.getContextAlbum(\"PMSubscriptionAlbum\").get(executor.inFields.get(\"albumID\").toString())\nvar payload = executor.inFields.get(\"payload\")\nvar actionName = \"create-subscription\"\n\nvar commonHeader = executor.subject.getOutFieldSchemaHelper(\"commonHeader\").createNewInstance();\ncommonHeader.put(\"originatorId\", \"sdnc\");\ncommonHeader.put(\"requestId\", \"123456-1000\");\ncommonHeader.put(\"subRequestId\", \"sub-123456-1000\");\n\nvar actionIdentifiers = executor.subject.getOutFieldSchemaHelper(\"actionIdentifiers\").createNewInstance();\nactionIdentifiers.put(\"actionName\", actionName);\nactionIdentifiers.put(\"blueprintName\", \"pm_control\");\nactionIdentifiers.put(\"blueprintVersion\", \"1.0.0\");\nactionIdentifiers.put(\"mode\", \"sync\");\n\nexecutor.outFields.put(\"commonHeader\", commonHeader);\nexecutor.outFields.put(\"actionIdentifiers\", actionIdentifiers);\nexecutor.outFields.put(\"payload\", payload);\n\nexecutor.logger.info(\"Sending Activate Subscription Event to CDS\")\n\ntrue;"
 + }
 + }
 + },
 + {
 + "key": {
 + "name": "DeleteSubscriptionPayloadTask",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "DeleteSubscriptionPayloadTask",
 + "version": "0.0.1"
 + },
 + "inputFields": {
 + "entry": [
 + {
 + "key": "albumID",
 + "value": {
 + "key": "albumID",
 + "fieldSchemaKey": {
 + "name": "UUIDType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + }
 + ]
 + },
 + "outputFields": {
 + "entry": [
 + {
 + "key": "albumID",
 + "value": {
 + "key": "albumID",
 + "fieldSchemaKey": {
 + "name": "UUIDType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + },
 + {
 + "key": "payload",
 + "value": {
 + "key": "payload",
 + "fieldSchemaKey": {
 + "name": "CDSDeleteSubscriptionPayloadType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + }
 + ]
 + },
 + "taskParameters": {
 + "entry": []
 + },
 + "contextAlbumReference": [
 + {
 + "name": "PMSubscriptionAlbum",
 + "version": "0.0.1"
 + }
 + ],
 + "taskLogic": {
 + "key": "TaskLogic",
 + "logicFlavour": "JAVASCRIPT",
 + "logic": "/*\n * ============LICENSE_START=======================================================\n * Copyright (C) 2020 Nordix. 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.info(executor.subject.id);\n\nvar pmSubscriptionInfo = executor.getContextAlbum(\"PMSubscriptionAlbum\").get(executor.inFields.get(\"albumID\").toString())\n\nvar payloadProperties = executor.subject.getOutFieldSchemaHelper(\"payload\").createNewSubInstance(\"delete_DasH_subscription_DasH_properties_record\");\n\npayloadProperties.put(\"nfName\", pmSubscriptionInfo.get(\"nfName\"))\npayloadProperties.put(\"subscriptionName\", pmSubscriptionInfo.get(\"subscription\").get(\"subscriptionName\"))\npayloadProperties.put(\"administrativeState\", pmSubscriptionInfo.get(\"subscription\").get(\"administrativeState\"))\npayloadProperties.put(\"fileBasedGP\", pmSubscriptionInfo.get(\"subscription\").get(\"fileBasedGP\").toString())\npayloadProperties.put(\"fileLocation\", pmSubscriptionInfo.get(\"subscription\").get(\"fileLocation\"))\npayloadProperties.put(\"measurementGroups\", pmSubscriptionInfo.get(\"subscription\").get(\"measurementGroups\"))\n\nvar payloadEntry = executor.subject.getOutFieldSchemaHelper(\"payload\").createNewSubInstance(\"CDSRequestPayloadEntry\");\npayloadEntry.put(\"delete_DasH_subscription_DasH_properties\", payloadProperties)\n\nvar payload = executor.subject.getOutFieldSchemaHelper(\"payload\").createNewInstance();\npayload.put(\"delete_DasH_subscription_DasH_request\", payloadEntry);\n\nexecutor.outFields.put(\"albumID\", executor.inFields.get(\"albumID\"))\nexecutor.outFields.put(\"payload\", payload);\n\nexecutor.logger.info(\"Sending delete Subscription Event to CDS\")\n\ntrue;"
 + }
 + }
 + },
 + {
 + "key": {
 + "name": "DeleteSubscriptionRequestTask",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "DeleteSubscriptionRequestTask",
 + "version": "0.0.1"
 + },
 + "inputFields": {
 + "entry": [
 + {
 + "key": "albumID",
 + "value": {
 + "key": "albumID",
 + "fieldSchemaKey": {
 + "name": "UUIDType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + },
 + {
 + "key": "payload",
 + "value": {
 + "key": "payload",
 + "fieldSchemaKey": {
 + "name": "CDSDeleteSubscriptionPayloadType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + }
 + ]
 + },
 + "outputFields": {
 + "entry": [
 + {
 + "key": "actionIdentifiers",
 + "value": {
 + "key": "actionIdentifiers",
 + "fieldSchemaKey": {
 + "name": "CDSActionIdentifiersType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + },
 + {
 + "key": "commonHeader",
 + "value": {
 + "key": "commonHeader",
 + "fieldSchemaKey": {
 + "name": "CDSRequestCommonHeaderType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + },
 + {
 + "key": "payload",
 + "value": {
 + "key": "payload",
 + "fieldSchemaKey": {
 + "name": "CDSDeleteSubscriptionPayloadType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + }
 + ]
 + },
 + "taskParameters": {
 + "entry": []
 + },
 + "contextAlbumReference": [
 + {
 + "name": "PMSubscriptionAlbum",
 + "version": "0.0.1"
 + }
 + ],
 + "taskLogic": {
 + "key": "TaskLogic",
 + "logicFlavour": "JAVASCRIPT",
 + "logic": "/*\n * ============LICENSE_START=======================================================\n * Copyright (C) 2020 Nordix. 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.info(executor.subject.id);\n\nvar pmSubscriptionInfo = executor.getContextAlbum(\"PMSubscriptionAlbum\").get(executor.inFields.get(\"albumID\").toString())\nvar payload = executor.inFields.get(\"payload\")\nvar actionName = \"delete-subscription\"\n\nvar commonHeader = executor.subject.getOutFieldSchemaHelper(\"commonHeader\").createNewInstance();\ncommonHeader.put(\"originatorId\", \"sdnc\");\ncommonHeader.put(\"requestId\", \"123456-1000\");\ncommonHeader.put(\"subRequestId\", \"sub-123456-1000\");\n\nvar actionIdentifiers = executor.subject.getOutFieldSchemaHelper(\"actionIdentifiers\").createNewInstance();\nactionIdentifiers.put(\"actionName\", actionName);\nactionIdentifiers.put(\"blueprintName\", \"pm_control\");\nactionIdentifiers.put(\"blueprintVersion\", \"1.0.0\");\nactionIdentifiers.put(\"mode\", \"sync\");\n\nexecutor.outFields.put(\"commonHeader\", commonHeader);\nexecutor.outFields.put(\"actionIdentifiers\", actionIdentifiers);\nexecutor.outFields.put(\"payload\", payload);\n\nexecutor.logger.info(\"Sending Deactivate Subscription Event to CDS\")\n\ntrue;"
 + }
 + }
 + },
 + {
 + "key": {
 + "name": "ReceivePMSubscriptionTask",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "ReceivePMSubscriptionTask",
 + "version": "0.0.1"
 + },
 + "inputFields": {
 + "entry": [
 + {
 + "key": "changeType",
 + "value": {
 + "key": "changeType",
 + "fieldSchemaKey": {
 + "name": "SimpleStringType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + },
 + {
 + "key": "closedLoopControlName",
 + "value": {
 + "key": "closedLoopControlName",
 + "fieldSchemaKey": {
 + "name": "SimpleStringType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + },
 + {
 + "key": "nfName",
 + "value": {
 + "key": "nfName",
 + "fieldSchemaKey": {
 + "name": "SimpleStringType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + },
 + {
 + "key": "policyName",
 + "value": {
 + "key": "policyName",
 + "fieldSchemaKey": {
 + "name": "SimpleStringType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + },
 + {
 + "key": "subscription",
 + "value": {
 + "key": "subscription",
 + "fieldSchemaKey": {
 + "name": "SubscriptionType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + }
 + ]
 + },
 + "outputFields": {
 + "entry": [
 + {
 + "key": "albumID",
 + "value": {
 + "key": "albumID",
 + "fieldSchemaKey": {
 + "name": "UUIDType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + }
 + ]
 + },
 + "taskParameters": {
 + "entry": []
 + },
 + "contextAlbumReference": [
 + {
 + "name": "PMSubscriptionAlbum",
 + "version": "0.0.1"
 + }
 + ],
 + "taskLogic": {
 + "key": "TaskLogic",
 + "logicFlavour": "JAVASCRIPT",
 + "logic": "/*\n * ============LICENSE_START=======================================================\n * Copyright (C) 2020 Nordix. 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 */\nvar uuidType = java.util.UUID;\n\n\n//albumID will be used to fetch info from our album later\nvar albumID = uuidType.fromString(\"d0050623-18e5-46c9-9298-9a567990cd7c\");\nvar pmSubscriptionInfo = executor.getContextAlbum(\"PMSubscriptionAlbum\").getSchemaHelper().createNewInstance();\nvar returnValue = true;;\n\nif(executor.inFields.get(\"policyName\") != null) {\n var changeType = executor.inFields.get(\"changeType\")\n var nfName = executor.inFields.get(\"nfName\")\n var policyName = executor.inFields.get(\"policyName\")\n var closedLoopControlName = executor.inFields.get(\"closedLoopControlName\")\n var subscription = executor.inFields.get(\"subscription\")\n\n pmSubscriptionInfo.put(\"nfName\", executor.inFields.get(\"nfName\"));\n pmSubscriptionInfo.put(\"changeType\", executor.inFields.get(\"changeType\"))\n pmSubscriptionInfo.put(\"policyName\", executor.inFields.get(\"policyName\"))\n pmSubscriptionInfo.put(\"closedLoopControlName\", executor.inFields.get(\"closedLoopControlName\"))\n pmSubscriptionInfo.put(\"subscription\", subscription)\n\n executor.getContextAlbum(\"PMSubscriptionAlbum\").put(albumID.toString(), pmSubscriptionInfo);\n\n executor.outFields.put(\"albumID\", albumID)\n} else {\n executor.message = \"Received invalid event\"\n returnValue = false;\n}\nreturnValue;"
 + }
 + }
 + }
 + ]
 + }
 + },
 + "events": {
 + "key": {
 + "name": "APEXgRPCPolicy_Events",
 + "version": "0.0.1"
 + },
 + "eventMap": {
 + "entry": [
 + {
 + "key": {
 + "name": "CDSResponseEvent",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "CDSResponseEvent",
 + "version": "0.0.1"
 + },
 + "nameSpace": "org.onap.policy.apex.onap.pmcontrol",
 + "source": "CDS",
 + "target": "APEX",
 + "parameter": {
 + "entry": [
 + {
 + "key": "actionIdentifiers",
 + "value": {
 + "key": "actionIdentifiers",
 + "fieldSchemaKey": {
 + "name": "CDSActionIdentifiersType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + },
 + {
 + "key": "commonHeader",
 + "value": {
 + "key": "commonHeader",
 + "fieldSchemaKey": {
 + "name": "CDSResponseCommonHeaderType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + },
 + {
 + "key": "payload",
 + "value": {
 + "key": "payload",
 + "fieldSchemaKey": {
 + "name": "CDSResponsePayloadType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + },
 + {
 + "key": "status",
 + "value": {
 + "key": "status",
 + "fieldSchemaKey": {
 + "name": "CDSResponseStatusType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + }
 + ]
 + }
 + }
 + },
 + {
 + "key": {
 + "name": "CDSResponseStatusEvent",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "CDSResponseStatusEvent",
 + "version": "0.0.1"
 + },
 + "nameSpace": "org.onap.policy.apex.onap.pmcontrol",
 + "source": "APEX",
 + "target": "DCAE",
 + "parameter": {
 + "entry": [
 + {
 + "key": "status",
 + "value": {
 + "key": "status",
 + "fieldSchemaKey": {
 + "name": "SubscriptionStatusType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + }
 + ]
 + }
 + }
 + },
 + {
 + "key": {
 + "name": "CreateSubscriptionPayloadEvent",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "CreateSubscriptionPayloadEvent",
 + "version": "0.0.1"
 + },
 + "nameSpace": "org.onap.policy.apex.onap.pmcontrol",
 + "source": "APEX",
 + "target": "APEX",
 + "parameter": {
 + "entry": [
 + {
 + "key": "albumID",
 + "value": {
 + "key": "albumID",
 + "fieldSchemaKey": {
 + "name": "UUIDType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + },
 + {
 + "key": "payload",
 + "value": {
 + "key": "payload",
 + "fieldSchemaKey": {
 + "name": "CDSCreateSubscriptionPayloadType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + }
 + ]
 + }
 + }
 + },
 + {
 + "key": {
 + "name": "CreateSubscriptionRequestEvent",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "CreateSubscriptionRequestEvent",
 + "version": "0.0.1"
 + },
 + "nameSpace": "org.onap.policy.apex.onap.pmcontrol",
 + "source": "APEX",
 + "target": "APEX",
 + "parameter": {
 + "entry": [
 + {
 + "key": "actionIdentifiers",
 + "value": {
 + "key": "actionIdentifiers",
 + "fieldSchemaKey": {
 + "name": "CDSActionIdentifiersType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + },
 + {
 + "key": "commonHeader",
 + "value": {
 + "key": "commonHeader",
 + "fieldSchemaKey": {
 + "name": "CDSRequestCommonHeaderType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + },
 + {
 + "key": "payload",
 + "value": {
 + "key": "payload",
 + "fieldSchemaKey": {
 + "name": "CDSCreateSubscriptionPayloadType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + }
 + ]
 + }
 + }
 + },
 + {
 + "key": {
 + "name": "DeleteSubscriptionPayloadEvent",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "DeleteSubscriptionPayloadEvent",
 + "version": "0.0.1"
 + },
 + "nameSpace": "org.onap.policy.apex.onap.pmcontrol",
 + "source": "APEX",
 + "target": "APEX",
 + "parameter": {
 + "entry": [
 + {
 + "key": "albumID",
 + "value": {
 + "key": "albumID",
 + "fieldSchemaKey": {
 + "name": "UUIDType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + },
 + {
 + "key": "payload",
 + "value": {
 + "key": "payload",
 + "fieldSchemaKey": {
 + "name": "CDSDeleteSubscriptionPayloadType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + }
 + ]
 + }
 + }
 + },
 + {
 + "key": {
 + "name": "DeleteSubscriptionRequestEvent",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "DeleteSubscriptionRequestEvent",
 + "version": "0.0.1"
 + },
 + "nameSpace": "org.onap.policy.apex.onap.pmcontrol",
 + "source": "APEX",
 + "target": "APEX",
 + "parameter": {
 + "entry": [
 + {
 + "key": "actionIdentifiers",
 + "value": {
 + "key": "actionIdentifiers",
 + "fieldSchemaKey": {
 + "name": "CDSActionIdentifiersType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + },
 + {
 + "key": "commonHeader",
 + "value": {
 + "key": "commonHeader",
 + "fieldSchemaKey": {
 + "name": "CDSRequestCommonHeaderType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + },
 + {
 + "key": "payload",
 + "value": {
 + "key": "payload",
 + "fieldSchemaKey": {
 + "name": "CDSDeleteSubscriptionPayloadType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + }
 + ]
 + }
 + }
 + },
 + {
 + "key": {
 + "name": "PMSubscriptionOutputEvent",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "PMSubscriptionOutputEvent",
 + "version": "0.0.1"
 + },
 + "nameSpace": "org.onap.policy.apex.onap.pmcontrol",
 + "source": "APEX",
 + "target": "APEX",
 + "parameter": {
 + "entry": [
 + {
 + "key": "albumID",
 + "value": {
 + "key": "albumID",
 + "fieldSchemaKey": {
 + "name": "UUIDType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + }
 + ]
 + }
 + }
 + },
 + {
 + "key": {
 + "name": "testPolicyB",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "testPolicyB",
 + "version": "0.0.1"
 + },
 + "nameSpace": "org.onap.policy.apex.onap.pmcontrol",
 + "source": "DCAE",
 + "target": "APEX",
 + "parameter": {
 + "entry": [
 + {
 + "key": "changeType",
 + "value": {
 + "key": "changeType",
 + "fieldSchemaKey": {
 + "name": "SimpleStringType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + },
 + {
 + "key": "closedLoopControlName",
 + "value": {
 + "key": "closedLoopControlName",
 + "fieldSchemaKey": {
 + "name": "SimpleStringType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + },
 + {
 + "key": "nfName",
 + "value": {
 + "key": "nfName",
 + "fieldSchemaKey": {
 + "name": "SimpleStringType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + },
 + {
 + "key": "policyName",
 + "value": {
 + "key": "policyName",
 + "fieldSchemaKey": {
 + "name": "SimpleStringType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + },
 + {
 + "key": "subscription",
 + "value": {
 + "key": "subscription",
 + "fieldSchemaKey": {
 + "name": "SubscriptionType",
 + "version": "0.0.1"
 + },
 + "optional": false
 + }
 + }
 + ]
 + }
 + }
 + }
 + ]
 + }
 + },
 + "albums": {
 + "key": {
 + "name": "APEXgRPCPolicy_Albums",
 + "version": "0.0.1"
 + },
 + "albums": {
 + "entry": [
 + {
 + "key": {
 + "name": "PMSubscriptionAlbum",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "PMSubscriptionAlbum",
 + "version": "0.0.1"
 + },
 + "scope": "policy",
 + "isWritable": true,
 + "itemSchema": {
 + "name": "PMSubscriptionType",
 + "version": "0.0.1"
 + }
 + }
 + }
 + ]
 + }
 + },
 + "schemas": {
 + "key": {
 + "name": "APEXgRPCPolicy_Schemas",
 + "version": "0.0.1"
 + },
 + "schemas": {
 + "entry": [
 + {
 + "key": {
 + "name": "CDSActionIdentifiersType",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "CDSActionIdentifiersType",
 + "version": "0.0.1"
 + },
 + "schemaFlavour": "Avro",
 + "schemaDefinition": "{\n \"type\": \"record\",\n \"name\": \"CDSActionIdentifiers_Type\",\n \"namespace\": \"org.onap.policy.apex.onap.helloworld\",\n \"fields\": [\n {\n \"name\": \"actionName\",\n \"type\": \"string\"\n },\n {\n \"name\": \"blueprintName\",\n \"type\": \"string\"\n },\n {\n \"name\": \"blueprintVersion\",\n \"type\": \"string\"\n },\n {\n \"name\": \"mode\",\n \"type\": \"string\"\n }\n ]\n}"
 + }
 + },
 + {
 + "key": {
 + "name": "CDSCreateSubscriptionPayloadType",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "CDSCreateSubscriptionPayloadType",
 + "version": "0.0.1"
 + },
 + "schemaFlavour": "Avro",
 + "schemaDefinition": "{\n \"type\": \"map\",\n \"values\": {\n \"type\": \"record\",\n \"name\": \"CDSRequestPayloadEntry\",\n \"fields\": [\n {\n \"name\": \"create_DasH_subscription_DasH_properties\",\n \"type\": {\n \"name\": \"create_DasH_subscription_DasH_properties_record\",\n \"type\": \"record\",\n \"fields\": [\n {\n \"name\": \"nfName\",\n \"type\": \"string\"\n },\n {\n \"name\": \"subscriptionName\",\n \"type\": \"string\"\n },\n {\n \"name\": \"administrativeState\",\n \"type\": \"string\"\n },\n {\n \"name\": \"fileBasedGP\",\n \"type\": \"string\"\n },\n {\n \"name\": \"fileLocation\",\n \"type\": \"string\"\n },\n {\n \"name\": \"measurementGroups\",\n \"type\": {\n \"type\": \"array\",\n \"items\": {\n \"name\": \"measurementGroups_record\",\n \"type\": \"record\",\n \"fields\": [\n {\n \"name\": \"measurementGroup\",\n \"type\": {\n \"name\": \"measurementGroup\",\n \"type\": \"record\",\n \"fields\": [\n {\n \"name\": \"measurementTypes\",\n \"type\": {\n \"type\": \"array\",\n \"items\": {\n \"name\": \"measurementTypes_record\",\n \"type\": \"record\",\n \"fields\": [\n {\n \"name\": \"measurementType\",\n \"type\": \"string\"\n }\n ]\n }\n }\n },\n {\n \"name\": \"managedObjectDNsBasic\",\n \"type\": {\n \"type\": \"array\",\n \"items\": {\n \"name\": \"managedObjectDNsBasic_record\",\n \"type\": \"record\",\n \"fields\": [\n {\n \"name\": \"DN\",\n \"type\": \"string\"\n }\n ]\n }\n }\n }\n ]\n }\n }\n ]\n }\n }\n }\n ]\n }\n }\n ]\n }\n}"
 + }
 + },
 + {
 + "key": {
 + "name": "CDSDeleteSubscriptionPayloadType",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "CDSDeleteSubscriptionPayloadType",
 + "version": "0.0.1"
 + },
 + "schemaFlavour": "Avro",
 + "schemaDefinition": "{\n \"type\": \"map\",\n \"values\": {\n \"type\": \"record\",\n \"name\": \"CDSRequestPayloadEntry\",\n \"fields\": [\n {\n \"name\": \"delete_DasH_subscription_DasH_properties\",\n \"type\": {\n \"name\": \"delete_DasH_subscription_DasH_properties_record\",\n \"type\": \"record\",\n \"fields\": [\n {\n \"name\": \"nfName\",\n \"type\": \"string\"\n },\n {\n \"name\": \"subscriptionName\",\n \"type\": \"string\"\n },\n {\n \"name\": \"administrativeState\",\n \"type\": \"string\"\n },\n {\n \"name\": \"fileBasedGP\",\n \"type\": \"string\"\n },\n {\n \"name\": \"fileLocation\",\n \"type\": \"string\"\n },\n {\n \"name\": \"measurementGroups\",\n \"type\": {\n \"type\": \"array\",\n \"items\": {\n \"name\": \"measurementGroups_record\",\n \"type\": \"record\",\n \"fields\": [\n {\n \"name\": \"measurementGroup\",\n \"type\": {\n \"name\": \"measurementGroup\",\n \"type\": \"record\",\n \"fields\": [\n {\n \"name\": \"measurementTypes\",\n \"type\": {\n \"type\": \"array\",\n \"items\": {\n \"name\": \"measurementTypes_record\",\n \"type\": \"record\",\n \"fields\": [\n {\n \"name\": \"measurementType\",\n \"type\": \"string\"\n }\n ]\n }\n }\n },\n {\n \"name\": \"managedObjectDNsBasic\",\n \"type\": {\n \"type\": \"array\",\n \"items\": {\n \"name\": \"managedObjectDNsBasic_record\",\n \"type\": \"record\",\n \"fields\": [\n {\n \"name\": \"DN\",\n \"type\": \"string\"\n }\n ]\n }\n }\n }\n ]\n }\n }\n ]\n }\n }\n }\n ]\n }\n }\n ]\n }\n}"
 + }
 + },
 + {
 + "key": {
 + "name": "CDSRequestCommonHeaderType",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "CDSRequestCommonHeaderType",
 + "version": "0.0.1"
 + },
 + "schemaFlavour": "Avro",
 + "schemaDefinition": "{\n \"type\": \"record\",\n \"name\": \"CDSRequestCommonHeader_Type\",\n \"namespace\": \"org.onap.policy.apex.onap.helloworld\",\n \"fields\": [\n {\n \"name\": \"originatorId\",\n \"type\": \"string\"\n },\n {\n \"name\": \"requestId\",\n \"type\": \"string\"\n },\n {\n \"name\": \"subRequestId\",\n \"type\": \"string\"\n }\n ]\n}"
 + }
 + },
 + {
 + "key": {
 + "name": "CDSResponseCommonHeaderType",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "CDSResponseCommonHeaderType",
 + "version": "0.0.1"
 + },
 + "schemaFlavour": "Avro",
 + "schemaDefinition": "{\n \"type\": \"record\",\n \"name\": \"CDSResponseCommonHeader_Type\",\n \"namespace\": \"org.onap.policy.apex.onap.helloworld\",\n \"fields\": [\n {\n \"name\": \"originatorId\",\n \"type\": \"string\"\n },\n {\n \"name\": \"requestId\",\n \"type\": \"string\"\n },\n {\n \"name\": \"subRequestId\",\n \"type\": \"string\"\n },\n {\n \"name\": \"timestamp\",\n \"type\": \"string\"\n }\n ]\n}"
 + }
 + },
 + {
 + "key": {
 + "name": "CDSResponsePayloadType",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "CDSResponsePayloadType",
 + "version": "0.0.1"
 + },
 + "schemaFlavour": "Avro",
 + "schemaDefinition": "{\n \"name\": \"CDSResponsePayloadEntry\",\n \"type\": \"record\",\n \"namespace\": \"com.acme.avro\",\n \"fields\": [\n {\n \"name\": \"create_DasH_subscription_DasH_response\",\n \"type\": {\n \"name\": \"create_DasH_subscription_DasH_response\",\n \"type\": \"record\",\n \"fields\": [\n {\n \"name\": \"odl_DasH_response\",\n \"type\": {\n \"name\": \"odl_DasH_response\",\n \"type\": \"record\",\n \"fields\": [\n {\n \"name\": \"status\",\n \"type\": \"string\"\n }\n ]\n }\n }\n ]\n }\n }\n ]\n}"
 + }
 + },
 + {
 + "key": {
 + "name": "CDSResponseStatusType",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "CDSResponseStatusType",
 + "version": "0.0.1"
 + },
 + "schemaFlavour": "Avro",
 + "schemaDefinition": "{\n \"type\": \"record\",\n \"name\": \"CDSResponseStatus_Type\",\n \"namespace\": \"org.onap.policy.apex.onap.helloworld\",\n \"fields\": [\n {\n \"name\": \"code\",\n \"type\": \"int\"\n },\n {\n \"name\": \"eventType\",\n \"type\": \"string\"\n },\n {\n \"name\": \"timestamp\",\n \"type\": \"string\"\n },\n {\n \"name\": \"message\",\n \"type\": \"string\"\n }\n ]\n}"
 + }
 + },
 + {
 + "key": {
 + "name": "PMSubscriptionType",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "PMSubscriptionType",
 + "version": "0.0.1"
 + },
 + "schemaFlavour": "Avro",
 + "schemaDefinition": "{\n \"name\": \"PMSubscription\",\n \"type\": \"record\",\n \"namespace\": \"org.onap.policy.apex.onap.pmcontrol\",\n \"fields\": [\n {\n \"name\": \"nfName\",\n \"type\": \"string\"\n },\n {\n \"name\": \"changeType\",\n \"type\": \"string\"\n },\n {\n \"name\": \"closedLoopControlName\",\n \"type\": \"string\"\n },\n {\n \"name\": \"policyName\",\n \"type\": \"string\"\n },\n {\n \"name\": \"subscription\",\n \"type\": {\n \"name\": \"subscription\",\n \"type\": \"record\",\n \"fields\": [\n {\n \"name\": \"subscriptionName\",\n \"type\": \"string\"\n },\n {\n \"name\": \"administrativeState\",\n \"type\": \"string\"\n },\n {\n \"name\": \"fileBasedGP\",\n \"type\": \"int\"\n },\n {\n \"name\": \"fileLocation\",\n \"type\": \"string\"\n },\n {\n \"name\": \"measurementGroups\",\n \"type\": {\n \"type\": \"array\",\n \"items\": {\n \"name\": \"Measurement_Groups_Type\",\n \"type\": \"record\",\n \"fields\": [\n {\n \"name\": \"measurementGroup\",\n \"type\": {\n \"name\": \"Measurement_Group_Type\",\n \"type\": \"record\",\n \"fields\": [\n {\n \"name\": \"measurementTypes\",\n \"type\": {\n \"type\": \"array\",\n \"items\": {\n \"name\": \"Measurement_Types_Type\",\n \"type\": \"record\",\n \"fields\": [\n {\n \"name\": \"measurementType\",\n \"type\": \"string\"\n }\n ]\n }\n }\n },\n {\n \"name\": \"managedObjectDNsBasic\",\n \"type\": {\n \"type\": \"array\",\n \"items\": {\n \"name\": \"Managed_Object_Dns_Basic_Type\",\n \"type\": \"record\",\n \"fields\": [\n {\n \"name\": \"DN\",\n \"type\": \"string\"\n }\n ]\n }\n }\n }\n ]\n }\n }\n ]\n }\n }\n }\n ]\n }\n }\n ]\n}"
 + }
 + },
 + {
 + "key": {
 + "name": "SimpleIntType",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "SimpleIntType",
 + "version": "0.0.1"
 + },
 + "schemaFlavour": "Java",
 + "schemaDefinition": "java.lang.Integer"
 + }
 + },
 + {
 + "key": {
 + "name": "SimpleStringType",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "SimpleStringType",
 + "version": "0.0.1"
 + },
 + "schemaFlavour": "Java",
 + "schemaDefinition": "java.lang.String"
 + }
 + },
 + {
 + "key": {
 + "name": "SubscriptionStatusType",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "SubscriptionStatusType",
 + "version": "0.0.1"
 + },
 + "schemaFlavour": "Avro",
 + "schemaDefinition": "{\n \"type\": \"record\",\n \"name\": \"ActivateSubscriptionStatus_Type\",\n \"namespace\": \"org.onap.policy.apex.onap.helloworld\",\n \"fields\": [\n {\n \"name\": \"subscriptionName\",\n \"type\": \"string\"\n },\n {\n \"name\": \"nfName\",\n \"type\": \"string\"\n },\n {\n \"name\": \"changeType\",\n \"type\": \"string\"\n },\n {\n \"name\": \"message\",\n \"type\": \"string\"\n }\n ]\n}"
 + }
 + },
 + {
 + "key": {
 + "name": "SubscriptionType",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "SubscriptionType",
 + "version": "0.0.1"
 + },
 + "schemaFlavour": "Avro",
 + "schemaDefinition": "{\n \"name\": \"subscription\",\n \"type\": \"record\",\n \"fields\": [\n {\n \"name\": \"subscriptionName\",\n \"type\": \"string\"\n },\n {\n \"name\": \"administrativeState\",\n \"type\": \"string\"\n },\n {\n \"name\": \"fileBasedGP\",\n \"type\": \"int\"\n },\n {\n \"name\": \"fileLocation\",\n \"type\": \"string\"\n },\n {\n \"name\": \"measurementGroups\",\n \"type\": {\n \"type\": \"array\",\n \"items\": {\n \"name\": \"Measurement_Groups_Type\",\n \"type\": \"record\",\n \"fields\": [\n {\n \"name\": \"measurementGroup\",\n \"type\": {\n \"name\": \"Measurement_Group_Type\",\n \"type\": \"record\",\n \"fields\": [\n {\n \"name\": \"measurementTypes\",\n \"type\": {\n \"type\": \"array\",\n \"items\": {\n \"name\": \"Measurement_Types_Type\",\n \"type\": \"record\",\n \"fields\": [\n {\n \"name\": \"measurementType\",\n \"type\": \"string\"\n }\n ]\n }\n }\n },\n {\n \"name\": \"managedObjectDNsBasic\",\n \"type\": {\n \"type\": \"array\",\n \"items\": {\n \"name\": \"Managed_Object_Dns_Basic_Type\",\n \"type\": \"record\",\n \"fields\": [\n {\n \"name\": \"DN\",\n \"type\": \"string\"\n }\n ]\n }\n }\n }\n ]\n }\n }\n ]\n }\n }\n }\n ]\n}"
 + }
 + },
 + {
 + "key": {
 + "name": "UUIDType",
 + "version": "0.0.1"
 + },
 + "value": {
 + "key": {
 + "name": "UUIDType",
 + "version": "0.0.1"
 + },
 + "schemaFlavour": "Java",
 + "schemaDefinition": "java.util.UUID"
 + }
 + }
 + ]
 + }
 + }
 + }
 + }
 + },
 + "eventOutputParameters": {
 + "logOutputter": {
 + "carrierTechnologyParameters": {
 + "carrierTechnology": "FILE",
 + "parameters": {
 + "fileName": "outputevents.log"
 + }
 + },
 + "eventProtocolParameters": {
 + "eventProtocol": "JSON"
 + }
 + },
 + "CDSRequestProducer": {
 + "carrierTechnologyParameters": {
 + "carrierTechnology": "GRPC",
 + "parameterClassName": "org.onap.policy.apex.plugins.event.carrier.grpc.GrpcCarrierTechnologyParameters",
 + "parameters": {
 + "host": "10.2.0.122",
 + "port": 54322,
 + "username": "ccsdkapps",
 + "password": "ccsdkapps",
 + "timeout": 60
 + }
 + },
 + "eventProtocolParameters": {
 + "eventProtocol": "JSON"
 + },
 + "eventNameFilter": "(Create|Delete)SubscriptionRequestEvent",
 + "requestorMode": true,
 + "requestorPeer": "CDSRequestConsumer",
 + "requestorTimeout": 500
 + },
 + "CDSReplyProducer": {
 + "carrierTechnologyParameters": {
 + "carrierTechnology": "RESTCLIENT",
 + "parameterClassName": "org.onap.policy.apex.plugins.event.carrier.restclient.RestClientCarrierTechnologyParameters",
 + "parameters": {
 + "url": "http://message-router:3904/events/POLICY-CL-MGT"
 + }
 + },
 + "eventProtocolParameters": {
 + "eventProtocol": "JSON"
 + },
 + "eventNameFilter": "CDSResponseStatusEvent"
 + }
 + },
 + "eventInputParameters": {
 + "DCAEConsumer": {
 + "carrierTechnologyParameters": {
 + "carrierTechnology": "RESTCLIENT",
 + "parameterClassName": "org.onap.policy.apex.plugins.event.carrier.restclient.RestClientCarrierTechnologyParameters",
 + "parameters": {
 + "url": "http://message-router:3904/events/unauthenticated.DCAE_CL_OUTPUT/cg1/c1?timeout=30000"
 + }
 + },
 + "eventProtocolParameters": {
 + "eventProtocol": "JSON",
 + "parameters": {
 + "nameAlias": "testPolicyB"
 + }
 + },
 + "eventName": "testPolicyB",
 + "eventNameFilter": "testPolicyB"
 + },
 + "CDSRequestConsumer": {
 + "carrierTechnologyParameters": {
 + "carrierTechnology": "GRPC",
 + "parameterClassName": "org.onap.policy.apex.plugins.event.carrier.grpc.GrpcCarrierTechnologyParameters"
 + },
 + "eventProtocolParameters": {
 + "eventProtocol": "JSON"
 + },
 + "eventName": "CDSResponseEvent",
 + "eventNameFilter": "CDSResponseEvent",
 + "requestorMode": true,
 + "requestorPeer": "CDSRequestProducer",
 + "requestorTimeout": 500
 + }
 + }
 + },
 + "name": "operational.apex.stabilityTestDefaultDomain",
 + "version": "1.0.0",
 + "metadata": {
 + "policy-id": "operational.apex.stabilityTestDefaultDomain",
 + "policy-version": "1.0.0"
 + }
 + }
 + }
 + ]
 + },
 + "name": "ToscaServiceTemplateSimple",
 + "version": "1.0.0",
 + "metadata": {}
 +}</stringProp> + <stringProp name="Argument.metadata">=</stringProp> + </elementProp> + </collectionProp> + </elementProp> + <stringProp name="HTTPSampler.domain">${HOSTNAME}</stringProp> + <stringProp name="HTTPSampler.port">${API_PORT}</stringProp> + <stringProp name="HTTPSampler.protocol">https</stringProp> + <stringProp name="HTTPSampler.contentEncoding"></stringProp> + <stringProp name="HTTPSampler.path">/policy/api/v1/policies</stringProp> + <stringProp name="HTTPSampler.method">POST</stringProp> + <boolProp name="HTTPSampler.follow_redirects">true</boolProp> + <boolProp name="HTTPSampler.auto_redirects">false</boolProp> + <boolProp name="HTTPSampler.use_keepalive">true</boolProp> + <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp> + <stringProp name="HTTPSampler.embedded_url_re"></stringProp> + <stringProp name="HTTPSampler.connect_timeout"></stringProp> + <stringProp name="HTTPSampler.response_timeout"></stringProp> + </HTTPSamplerProxy> + <hashTree> + <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true"> + <collectionProp name="Asserion.test_strings"> + <stringProp name="49586">200</stringProp> + </collectionProp> + <stringProp name="Assertion.custom_message"></stringProp> + <stringProp name="Assertion.test_field">Assertion.response_code</stringProp> + <boolProp name="Assertion.assume_success">false</boolProp> + <intProp name="Assertion.test_type">1</intProp> + </ResponseAssertion> + <hashTree/> + </hashTree> + <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Deploy policy" enabled="true"> + <boolProp name="HTTPSampler.postBodyRaw">true</boolProp> + <elementProp name="HTTPsampler.Arguments" elementType="Arguments"> + <collectionProp name="Arguments.arguments"> + <elementProp name="" elementType="HTTPArgument"> + <boolProp name="HTTPArgument.always_encode">false</boolProp> + <stringProp name="Argument.value">{
 + "groups": [
 + {
 + "name": "defaultGroup",
 + "deploymentSubgroups": [
 + {
 + "pdpType": "apex",
 + "action": "POST",
 + "policies": [
 + {
 + "name": "operational.apex.stabilityTestDefaultDomain",
 + "version": "1.0.0"
 + }
 + ]
 + }
 + ]
 + }
 + ]
 +}</stringProp> + <stringProp name="Argument.metadata">=</stringProp> + </elementProp> + </collectionProp> + </elementProp> + <stringProp name="HTTPSampler.domain">${HOSTNAME}</stringProp> + <stringProp name="HTTPSampler.port">${PAP_PORT}</stringProp> + <stringProp name="HTTPSampler.protocol">https</stringProp> + <stringProp name="HTTPSampler.contentEncoding"></stringProp> + <stringProp name="HTTPSampler.path">/policy/pap/v1/pdps/deployments/batch</stringProp> + <stringProp name="HTTPSampler.method">POST</stringProp> + <boolProp name="HTTPSampler.follow_redirects">true</boolProp> + <boolProp name="HTTPSampler.auto_redirects">false</boolProp> + <boolProp name="HTTPSampler.use_keepalive">true</boolProp> + <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp> + <stringProp name="HTTPSampler.embedded_url_re"></stringProp> + <stringProp name="HTTPSampler.connect_timeout"></stringProp> + <stringProp name="HTTPSampler.response_timeout"></stringProp> + </HTTPSamplerProxy> + <hashTree> + <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true"> + <collectionProp name="Asserion.test_strings"> + <stringProp name="49588">202</stringProp> + </collectionProp> + <stringProp name="Assertion.custom_message"></stringProp> + <stringProp name="Assertion.test_field">Assertion.response_code</stringProp> + <boolProp name="Assertion.assume_success">false</boolProp> + <intProp name="Assertion.test_type">1</intProp> + </ResponseAssertion> + <hashTree/> + </hashTree> + </hashTree> + <ThreadGroup guiclass="ThreadGroupGui" testclass="ThreadGroup" testname="Thread Group" enabled="true"> + <stringProp name="ThreadGroup.on_sample_error">continue</stringProp> + <elementProp name="ThreadGroup.main_controller" elementType="LoopController" guiclass="LoopControlPanel" testclass="LoopController" testname="Loop Controller" enabled="true"> + <boolProp name="LoopController.continue_forever">false</boolProp> + <intProp name="LoopController.loops">-1</intProp> + </elementProp> + <stringProp name="ThreadGroup.num_threads">${threads}</stringProp> + <stringProp name="ThreadGroup.ramp_time">1</stringProp> + <boolProp name="ThreadGroup.scheduler">true</boolProp> + <stringProp name="ThreadGroup.duration">5400</stringProp> + <stringProp name="ThreadGroup.delay"></stringProp> + <boolProp name="ThreadGroup.same_user_on_next_iteration">true</boolProp> + </ThreadGroup> + <hashTree> + <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Health Check" enabled="true"> + <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true"> + <collectionProp name="Arguments.arguments"/> + </elementProp> + <stringProp name="HTTPSampler.domain">${HOSTNAME}</stringProp> + <stringProp name="HTTPSampler.port">${APEX_PORT}</stringProp> + <stringProp name="HTTPSampler.protocol">https</stringProp> + <stringProp name="HTTPSampler.contentEncoding"></stringProp> + <stringProp name="HTTPSampler.path">/policy/apex-pdp/v1/healthcheck</stringProp> + <stringProp name="HTTPSampler.method">GET</stringProp> + <boolProp name="HTTPSampler.follow_redirects">true</boolProp> + <boolProp name="HTTPSampler.auto_redirects">false</boolProp> + <boolProp name="HTTPSampler.use_keepalive">true</boolProp> + <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp> + <stringProp name="HTTPSampler.embedded_url_re"></stringProp> + <stringProp name="HTTPSampler.connect_timeout"></stringProp> + <stringProp name="HTTPSampler.response_timeout"></stringProp> + </HTTPSamplerProxy> + <hashTree> + <JSR223Assertion guiclass="TestBeanGUI" testclass="JSR223Assertion" testname="JSR223 Assertion" enabled="true"> + <stringProp name="cacheKey">true</stringProp> + <stringProp name="filename"></stringProp> + <stringProp name="parameters"></stringProp> + <stringProp name="script">import groovy.json.JsonSlurper; + +def res = []; +if (prev.getResponseCode() == '200') { + def jsonSlurper = new JsonSlurper(); + res = jsonSlurper.parseText(prev.getResponseDataAsString()); + + assert res instanceof Map; + assert res.healthy == true; + assert res.message == 'alive'; +} +</stringProp> + <stringProp name="scriptLanguage">groovy</stringProp> + </JSR223Assertion> + <hashTree/> + </hashTree> + <GenericController guiclass="LogicControllerGui" testclass="GenericController" testname="Test Controller" enabled="true"/> + <hashTree> + <SyncTimer guiclass="TestBeanGUI" testclass="SyncTimer" testname="Synchronizing Timer" enabled="false"> + <stringProp name="groupSize">${threads}</stringProp> + <stringProp name="timeoutInMs">${threadsTimeOutInMs}</stringProp> + </SyncTimer> + <hashTree/> + <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Send Input Event" enabled="true"> + <boolProp name="HTTPSampler.postBodyRaw">true</boolProp> + <elementProp name="HTTPsampler.Arguments" elementType="Arguments"> + <collectionProp name="Arguments.arguments"> + <elementProp name="" elementType="HTTPArgument"> + <boolProp name="HTTPArgument.always_encode">false</boolProp> + <stringProp name="Argument.value">{
 + "changeType": "CREATE",
 + "closedLoopControlName": "test",
 + "policyName": "test",
 + "nfName": "pnf300",
 + "subscription": {
 + "subscriptionName": "testPolicyB",
 + "administrativeState": "UNLOCKED",
 + "fileBasedGP": 15,
 + "fileLocation": "/pm/pm.xml",
 + "measurementGroups": [
 + {
 + "measurementGroup": {
 + "measurementTypes": [
 + {
 + "measurementType": "countera"
 + },
 + {
 + "measurementType": "counterb"
 + }
 + ],
 + "managedObjectDNsBasic": [
 + {
 + "DN": "dna"
 + },
 + {
 + "DN": "dnb"
 + }
 + ]
 + }
 + },
 + {
 + "measurementGroup": {
 + "measurementTypes": [
 + {
 + "measurementType": "counterc"
 + },
 + {
 + "measurementType": "counterd"
 + }
 + ],
 + "managedObjectDNsBasic": [
 + {
 + "DN": "dnc"
 + },
 + {
 + "DN": "dnd"
 + }
 + ]
 + }
 + }
 + ]
 + }
 +}</stringProp> + <stringProp name="Argument.metadata">=</stringProp> + </elementProp> + </collectionProp> + </elementProp> + <stringProp name="HTTPSampler.domain">${HOSTNAME}</stringProp> + <stringProp name="HTTPSampler.port">${DMAAP_PORT}</stringProp> + <stringProp name="HTTPSampler.protocol">http</stringProp> + <stringProp name="HTTPSampler.contentEncoding"></stringProp> + <stringProp name="HTTPSampler.path">/events/unauthenticated.DCAE_CL_OUTPUT</stringProp> + <stringProp name="HTTPSampler.method">POST</stringProp> + <boolProp name="HTTPSampler.follow_redirects">true</boolProp> + <boolProp name="HTTPSampler.auto_redirects">false</boolProp> + <boolProp name="HTTPSampler.use_keepalive">true</boolProp> + <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp> + <stringProp name="HTTPSampler.embedded_url_re"></stringProp> + <stringProp name="HTTPSampler.connect_timeout"></stringProp> + <stringProp name="HTTPSampler.response_timeout"></stringProp> + <stringProp name="TestPlan.comments">Send input event to apex-pdp</stringProp> + </HTTPSamplerProxy> + <hashTree> + <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Assert Response Code" enabled="true"> + <collectionProp name="Asserion.test_strings"> + <stringProp name="49586">200</stringProp> + </collectionProp> + <stringProp name="Assertion.custom_message"></stringProp> + <stringProp name="Assertion.test_field">Assertion.response_code</stringProp> + <boolProp name="Assertion.assume_success">false</boolProp> + <intProp name="Assertion.test_type">8</intProp> + <stringProp name="Scope.variable">Response code</stringProp> + <stringProp name="TestPlan.comments">Assert response code coming back from apex-pdp</stringProp> + </ResponseAssertion> + <hashTree/> + <ConstantTimer guiclass="ConstantTimerGui" testclass="ConstantTimer" testname="WAIT" enabled="true"> + <stringProp name="ConstantTimer.delay">${wait}</stringProp> + </ConstantTimer> + <hashTree/> + </hashTree> + <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Get the ouput event response" enabled="true"> + <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true"> + <collectionProp name="Arguments.arguments"/> + </elementProp> + <stringProp name="HTTPSampler.domain">${HOSTNAME}</stringProp> + <stringProp name="HTTPSampler.port">${DMAAP_PORT}</stringProp> + <stringProp name="HTTPSampler.protocol">http</stringProp> + <stringProp name="HTTPSampler.contentEncoding"></stringProp> + <stringProp name="HTTPSampler.path">/events/POLICY-CL-MGT/cg${__threadNum}/c1?timeout=30000</stringProp> + <stringProp name="HTTPSampler.method">GET</stringProp> + <boolProp name="HTTPSampler.follow_redirects">true</boolProp> + <boolProp name="HTTPSampler.auto_redirects">false</boolProp> + <boolProp name="HTTPSampler.use_keepalive">true</boolProp> + <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp> + <stringProp name="HTTPSampler.embedded_url_re"></stringProp> + <stringProp name="HTTPSampler.connect_timeout"></stringProp> + <stringProp name="HTTPSampler.response_timeout"></stringProp> + <stringProp name="TestPlan.comments">Check output event </stringProp> + </HTTPSamplerProxy> + <hashTree> + <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Assert Response Code" enabled="true"> + <collectionProp name="Asserion.test_strings"> + <stringProp name="49586">200</stringProp> + </collectionProp> + <stringProp name="Assertion.custom_message"></stringProp> + <stringProp name="Assertion.test_field">Assertion.response_code</stringProp> + <boolProp name="Assertion.assume_success">false</boolProp> + <intProp name="Assertion.test_type">8</intProp> + <stringProp name="Scope.variable">Response code</stringProp> + <stringProp name="TestPlan.comments">Assert response code coming back from apex-pdp</stringProp> + </ResponseAssertion> + <hashTree/> + <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Assert Response Message" enabled="true"> + <collectionProp name="Asserion.test_strings"> + <stringProp name="1608759622">org.onap.policy.apex.onap.pmcontrol</stringProp> + <stringProp name="1996002556">CREATE</stringProp> + </collectionProp> + <stringProp name="Assertion.custom_message"></stringProp> + <stringProp name="Assertion.test_field">Assertion.response_data</stringProp> + <boolProp name="Assertion.assume_success">false</boolProp> + <intProp name="Assertion.test_type">2</intProp> + <stringProp name="Scope.variable">Response code</stringProp> + <stringProp name="TestPlan.comments">Assert response message coming back from apex-pdp</stringProp> + </ResponseAssertion> + <hashTree/> + <ConstantTimer guiclass="ConstantTimerGui" testclass="ConstantTimer" testname="WAIT" enabled="false"> + <stringProp name="ConstantTimer.delay">${wait}</stringProp> + </ConstantTimer> + <hashTree/> + </hashTree> + </hashTree> + </hashTree> + <PostThreadGroup guiclass="PostThreadGroupGui" testclass="PostThreadGroup" testname="tearDown Thread Group" enabled="true"> + <stringProp name="ThreadGroup.on_sample_error">continue</stringProp> + <elementProp name="ThreadGroup.main_controller" elementType="LoopController" guiclass="LoopControlPanel" testclass="LoopController" testname="Loop Controller" enabled="true"> + <boolProp name="LoopController.continue_forever">false</boolProp> + <stringProp name="LoopController.loops">1</stringProp> + </elementProp> + <stringProp name="ThreadGroup.num_threads">1</stringProp> + <stringProp name="ThreadGroup.ramp_time">1</stringProp> + <boolProp name="ThreadGroup.scheduler">false</boolProp> + <stringProp name="ThreadGroup.duration"></stringProp> + <stringProp name="ThreadGroup.delay"></stringProp> + <boolProp name="ThreadGroup.same_user_on_next_iteration">true</boolProp> + </PostThreadGroup> + <hashTree> + <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Un deploy policy" enabled="true"> + <boolProp name="HTTPSampler.postBodyRaw">true</boolProp> + <elementProp name="HTTPsampler.Arguments" elementType="Arguments"> + <collectionProp name="Arguments.arguments"> + <elementProp name="" elementType="HTTPArgument"> + <boolProp name="HTTPArgument.always_encode">false</boolProp> + <stringProp name="Argument.value">{
 + "groups": [
 + {
 + "name": "defaultGroup",
 + "deploymentSubgroups": [
 + {
 + "pdpType": "apex",
 + "action": "DELETE",
 + "policies": [
 + {
 + "name": "operational.apex.stabilityTestDefaultDomain",
 + "version": "1.0.0"
 + }
 + ]
 + }
 + ]
 + }
 + ]
 +}</stringProp> + <stringProp name="Argument.metadata">=</stringProp> + </elementProp> + </collectionProp> + </elementProp> + <stringProp name="HTTPSampler.domain">${HOSTNAME}</stringProp> + <stringProp name="HTTPSampler.port">${PAP_PORT}</stringProp> + <stringProp name="HTTPSampler.protocol">https</stringProp> + <stringProp name="HTTPSampler.contentEncoding"></stringProp> + <stringProp name="HTTPSampler.path">/policy/pap/v1/pdps/deployments/batch</stringProp> + <stringProp name="HTTPSampler.method">POST</stringProp> + <boolProp name="HTTPSampler.follow_redirects">true</boolProp> + <boolProp name="HTTPSampler.auto_redirects">false</boolProp> + <boolProp name="HTTPSampler.use_keepalive">true</boolProp> + <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp> + <stringProp name="HTTPSampler.embedded_url_re"></stringProp> + <stringProp name="HTTPSampler.connect_timeout"></stringProp> + <stringProp name="HTTPSampler.response_timeout"></stringProp> + </HTTPSamplerProxy> + <hashTree> + <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true"> + <collectionProp name="Asserion.test_strings"> + <stringProp name="49588">202</stringProp> + </collectionProp> + <stringProp name="Assertion.custom_message"></stringProp> + <stringProp name="Assertion.test_field">Assertion.response_code</stringProp> + <boolProp name="Assertion.assume_success">false</boolProp> + <intProp name="Assertion.test_type">1</intProp> + </ResponseAssertion> + <hashTree/> + </hashTree> + <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Delete Policy" enabled="true"> + <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true"> + <collectionProp name="Arguments.arguments"/> + </elementProp> + <stringProp name="HTTPSampler.domain">${HOSTNAME}</stringProp> + <stringProp name="HTTPSampler.port">${API_PORT}</stringProp> + <stringProp name="HTTPSampler.protocol">https</stringProp> + <stringProp name="HTTPSampler.contentEncoding"></stringProp> + <stringProp name="HTTPSampler.path">/policy/api/v1/policytypes/onap.policies.native.Apex/versions/1.0.0/policies/operational.apex.stabilityTestDefaultDomain/versions/1.0.0</stringProp> + <stringProp name="HTTPSampler.method">DELETE</stringProp> + <boolProp name="HTTPSampler.follow_redirects">true</boolProp> + <boolProp name="HTTPSampler.auto_redirects">false</boolProp> + <boolProp name="HTTPSampler.use_keepalive">true</boolProp> + <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp> + <stringProp name="HTTPSampler.embedded_url_re"></stringProp> + <stringProp name="HTTPSampler.connect_timeout"></stringProp> + <stringProp name="HTTPSampler.response_timeout"></stringProp> + </HTTPSamplerProxy> + <hashTree> + <ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true"> + <collectionProp name="Asserion.test_strings"> + <stringProp name="49586">200</stringProp> + </collectionProp> + <stringProp name="Assertion.custom_message"></stringProp> + <stringProp name="Assertion.test_field">Assertion.response_code</stringProp> + <boolProp name="Assertion.assume_success">false</boolProp> + <intProp name="Assertion.test_type">1</intProp> + </ResponseAssertion> + <hashTree/> + </hashTree> + </hashTree> + <ResultCollector guiclass="SummaryReport" testclass="ResultCollector" testname="Summary Report" enabled="true"> + <boolProp name="ResultCollector.error_logging">false</boolProp> + <objProp> + <name>saveConfig</name> + <value class="SampleSaveConfiguration"> + <time>true</time> + <latency>true</latency> + <timestamp>true</timestamp> + <success>true</success> + <label>true</label> + <code>true</code> + <message>true</message> + <threadName>true</threadName> + <dataType>true</dataType> + <encoding>false</encoding> + <assertions>true</assertions> + <subresults>true</subresults> + <responseData>false</responseData> + <samplerData>false</samplerData> + <xml>false</xml> + <fieldNames>true</fieldNames> + <responseHeaders>false</responseHeaders> + <requestHeaders>false</requestHeaders> + <responseDataOnError>false</responseDataOnError> + <saveAssertionResultsFailureMessage>true</saveAssertionResultsFailureMessage> + <assertionsResultsToSave>0</assertionsResultsToSave> + <bytes>true</bytes> + <sentBytes>true</sentBytes> + <threadCounts>true</threadCounts> + <idleTime>true</idleTime> + <connectTime>true</connectTime> + </value> + </objProp> + <stringProp name="filename">/home/adityap/apex_stability/Stability.log</stringProp> + </ResultCollector> + <hashTree/> + <ResultCollector guiclass="ViewResultsFullVisualizer" testclass="ResultCollector" testname="View Results Tree" enabled="true"> + <boolProp name="ResultCollector.error_logging">false</boolProp> + <objProp> + <name>saveConfig</name> + <value class="SampleSaveConfiguration"> + <time>true</time> + <latency>true</latency> + <timestamp>true</timestamp> + <success>true</success> + <label>true</label> + <code>true</code> + <message>true</message> + <threadName>true</threadName> + <dataType>true</dataType> + <encoding>false</encoding> + <assertions>true</assertions> + <subresults>true</subresults> + <responseData>false</responseData> + <samplerData>false</samplerData> + <xml>false</xml> + <fieldNames>true</fieldNames> + <responseHeaders>false</responseHeaders> + <requestHeaders>false</requestHeaders> + <responseDataOnError>false</responseDataOnError> + <saveAssertionResultsFailureMessage>true</saveAssertionResultsFailureMessage> + <assertionsResultsToSave>0</assertionsResultsToSave> + <bytes>true</bytes> + <sentBytes>true</sentBytes> + <threadCounts>true</threadCounts> + <idleTime>true</idleTime> + <connectTime>true</connectTime> + </value> + </objProp> + <stringProp name="filename">/mnt/c/Users/arek/Desktop/s3p_results/performance/6/testresults_1.jtl</stringProp> + </ResultCollector> + <hashTree/> + <ResultCollector guiclass="TableVisualizer" testclass="ResultCollector" testname="View Results in Table" enabled="true"> + <boolProp name="ResultCollector.error_logging">false</boolProp> + <objProp> + <name>saveConfig</name> + <value class="SampleSaveConfiguration"> + <time>true</time> + <latency>true</latency> + <timestamp>true</timestamp> + <success>true</success> + <label>true</label> + <code>true</code> + <message>true</message> + <threadName>true</threadName> + <dataType>true</dataType> + <encoding>false</encoding> + <assertions>true</assertions> + <subresults>true</subresults> + <responseData>false</responseData> + <samplerData>false</samplerData> + <xml>false</xml> + <fieldNames>true</fieldNames> + <responseHeaders>false</responseHeaders> + <requestHeaders>false</requestHeaders> + <responseDataOnError>false</responseDataOnError> + <saveAssertionResultsFailureMessage>true</saveAssertionResultsFailureMessage> + <assertionsResultsToSave>0</assertionsResultsToSave> + <bytes>true</bytes> + <sentBytes>true</sentBytes> + <threadCounts>true</threadCounts> + <idleTime>true</idleTime> + <connectTime>true</connectTime> + </value> + </objProp> + <stringProp name="filename">/home/adityap/apex_stability/resultTable.log</stringProp> + </ResultCollector> + <hashTree/> + </hashTree> + </hashTree> +</jmeterTestPlan> |