From 9d6523c5d6a1ef50903dc5842dc9caf6b01ff03c Mon Sep 17 00:00:00 2001 From: "Determe, Sebastien (sd378r)" Date: Wed, 14 Feb 2018 14:39:29 +0100 Subject: Add an HTTP cache for SDC tests Add a python script with SDC cached file from a test lab Issue-ID: CLAMP-85 Change-Id: Ib932d5c80a399b85ae093dabb76c214e9f54ca63 Signed-off-by: Determe, Sebastien (sd378r) --- .../metadata/.file | 1 + .../metadata/.header | 1 + .../metadata/.file | 1 + .../metadata/.header | 1 + .../metadata/.file | 1 + .../metadata/.header | 1 + .../metadata/.file | 1 + .../metadata/.header | 1 + .../metadata/.file | 1 + .../metadata/.header | 1 + .../metadata/.file | 1 + .../metadata/.header | 1 + .../metadata/.file | 1 + .../metadata/.header | 1 + .../metadata/.file | 1 + .../metadata/.header | 1 + .../metadata/.file | 1 + .../metadata/.header | 1 + .../metadata/.file | 1 + .../metadata/.header | 1 + .../metadata/.file | 1 + .../metadata/.header | 1 + .../metadata/.file | 1 + .../metadata/.header | 1 + .../metadata/.file | 1 + .../metadata/.header | 1 + .../metadata/.file | 1 + .../metadata/.header | 1 + .../metadata/.file | 1 + .../metadata/.header | 1 + .../metadata/.file | 1 + .../metadata/.header | 1 + .../v1/catalog/resources?resourceType=CVFC/.file | 1 + .../v1/catalog/resources?resourceType=CVFC/.header | 1 + .../sdc/v1/catalog/resources?resourceType=VF/.file | 1 + .../v1/catalog/resources?resourceType=VF/.header | 1 + .../v1/catalog/resources?resourceType=VFC/.file | 1 + .../v1/catalog/resources?resourceType=VFC/.header | 1 + .../sdc-example/sdc/v1/catalog/services/.file | 1 + .../sdc-example/sdc/v1/catalog/services/.header | 1 + .../metadata/.file | 1 + .../metadata/.header | 1 + .../metadata/.file | 1 + .../metadata/.header | 1 + src/test/resources/http-cache/sdc_proxy.py | 124 +++++++++++++++++++++ src/test/resources/http-cache/start_http_cache.sh | 37 ++++++ 46 files changed, 205 insertions(+) create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/228aac11-6e48-4412-afbf-327c5c3b04fb/metadata/.file create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/228aac11-6e48-4412-afbf-327c5c3b04fb/metadata/.header create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/2bbcbcce-f9e2-4f5d-b975-1f1122d3226c/metadata/.file create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/2bbcbcce-f9e2-4f5d-b975-1f1122d3226c/metadata/.header create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/38b62ebd-276a-48e8-948b-de76c81d6686/metadata/.file create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/38b62ebd-276a-48e8-948b-de76c81d6686/metadata/.header create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/68bb176c-8d5f-4d27-8407-fd8d9e5910eb/metadata/.file create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/68bb176c-8d5f-4d27-8407-fd8d9e5910eb/metadata/.header create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/701bf7b7-ddf1-4658-af5f-66c815348fd3/metadata/.file create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/701bf7b7-ddf1-4658-af5f-66c815348fd3/metadata/.header create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/8fb4db8b-1d1f-4369-8611-0375d86f0051/metadata/.file create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/8fb4db8b-1d1f-4369-8611-0375d86f0051/metadata/.header create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/948da0c9-536e-4688-85eb-d906fe7324b3/metadata/.file create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/948da0c9-536e-4688-85eb-d906fe7324b3/metadata/.header create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/metadata/.file create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/metadata/.header create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/metadata/.file create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/metadata/.header create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/a01ebd00-4b64-4607-8422-c3733735800d/metadata/.file create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/a01ebd00-4b64-4607-8422-c3733735800d/metadata/.header create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/b339e576-e433-4be4-8a43-258f629c4e79/metadata/.file create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/b339e576-e433-4be4-8a43-258f629c4e79/metadata/.header create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/metadata/.file create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/metadata/.header create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/c8a01686-2762-483c-98ad-a66606b9947f/metadata/.file create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/c8a01686-2762-483c-98ad-a66606b9947f/metadata/.header create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/cca286e8-5ac0-451c-b874-8cc307181e10/metadata/.file create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/cca286e8-5ac0-451c-b874-8cc307181e10/metadata/.header create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/d6a5add1-162a-4966-80a6-8ba53d83b17f/metadata/.file create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/d6a5add1-162a-4966-80a6-8ba53d83b17f/metadata/.header create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d/metadata/.file create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d/metadata/.header create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=CVFC/.file create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=CVFC/.header create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VF/.file create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VF/.header create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VFC/.file create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VFC/.header create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/.file create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/.header create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/metadata/.file create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/metadata/.header create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/metadata/.file create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/metadata/.header create mode 100644 src/test/resources/http-cache/sdc_proxy.py create mode 100755 src/test/resources/http-cache/start_http_cache.sh (limited to 'src/test/resources/http-cache') diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/228aac11-6e48-4412-afbf-327c5c3b04fb/metadata/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/228aac11-6e48-4412-afbf-327c5c3b04fb/metadata/.file new file mode 100644 index 000000000..8b9114f19 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/228aac11-6e48-4412-afbf-327c5c3b04fb/metadata/.file @@ -0,0 +1 @@ +{"uuid":"228aac11-6e48-4412-afbf-327c5c3b04fb","invariantUUID":"ba4d4b5d-f861-4155-886b-b1cdba5e0957","name":"vLoadBalancer-nodes.vlbCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/228aac11-6e48-4412-afbf-327c5c3b04fb/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vloadbalancercvfc.abstract.nodes.vlb","resources":[{"resourceInstanceName":"vlb_vlb_private_2_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"},{"resourceInstanceName":"vlb_vlb_private_0_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"},{"resourceInstanceName":"vlb","resourceName":"Vloadbalancer.nodes.heat.vlb","resourceInvariantUUID":"3ff44c1d-0384-4501-8e33-dd3000799378","resourceVersion":"1.0","resoucreType":"VFC","resourceUUID":"f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d"},{"resourceInstanceName":"vlb_vlb_private_1_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"}],"description":"Complex node type that is used as nested type in VF"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/228aac11-6e48-4412-afbf-327c5c3b04fb/metadata/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/228aac11-6e48-4412-afbf-327c5c3b04fb/metadata/.header new file mode 100644 index 000000000..439efd9f0 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/228aac11-6e48-4412-afbf-327c5c3b04fb/metadata/.header @@ -0,0 +1 @@ +{"Content-Length": "1539", "Set-Cookie": "JSESSIONID=2hdxvh0c2nj012gw8yu63ffd1;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "1a2d5fef-de1c-478e-bf5c-7df1bc37870e"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/2bbcbcce-f9e2-4f5d-b975-1f1122d3226c/metadata/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/2bbcbcce-f9e2-4f5d-b975-1f1122d3226c/metadata/.file new file mode 100644 index 000000000..da4363f14 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/2bbcbcce-f9e2-4f5d-b975-1f1122d3226c/metadata/.file @@ -0,0 +1 @@ +{"uuid":"2bbcbcce-f9e2-4f5d-b975-1f1122d3226c","invariantUUID":"28142b9a-7925-4921-bc81-178c5bae4a9b","name":"vPacketGen-nodes.vpgCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/2bbcbcce-f9e2-4f5d-b975-1f1122d3226c/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vpacketgencvfc.abstract.nodes.vpg","resources":[{"resourceInstanceName":"vpg_vpg_private_0_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"},{"resourceInstanceName":"vpg","resourceName":"Vpacketgen.nodes.heat.vpg","resourceInvariantUUID":"86769df9-139b-489f-949d-05efb7f0ed6a","resourceVersion":"1.0","resoucreType":"VFC","resourceUUID":"c8a01686-2762-483c-98ad-a66606b9947f"},{"resourceInstanceName":"vpg_vpg_private_1_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"}],"description":"Complex node type that is used as nested type in VF"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/2bbcbcce-f9e2-4f5d-b975-1f1122d3226c/metadata/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/2bbcbcce-f9e2-4f5d-b975-1f1122d3226c/metadata/.header new file mode 100644 index 000000000..27e67e5ce --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/2bbcbcce-f9e2-4f5d-b975-1f1122d3226c/metadata/.header @@ -0,0 +1 @@ +{"Content-Length": "1290", "Set-Cookie": "JSESSIONID=1uooiet6i9dyt17t85aw0rkxkc;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "f50d8d8a-f63d-44cc-bc32-5c8b0e47305c"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/38b62ebd-276a-48e8-948b-de76c81d6686/metadata/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/38b62ebd-276a-48e8-948b-de76c81d6686/metadata/.file new file mode 100644 index 000000000..05f714755 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/38b62ebd-276a-48e8-948b-de76c81d6686/metadata/.file @@ -0,0 +1 @@ +{"uuid":"38b62ebd-276a-48e8-948b-de76c81d6686","invariantUUID":"2ef814e3-7c17-420c-bdba-e84e338cd991","name":"vLoadBalancer-nodes.vdns_1Cvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/38b62ebd-276a-48e8-948b-de76c81d6686/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vloadbalancercvfc.abstract.nodes.vdns_1","resources":[{"resourceInstanceName":"vdns_vdns_2_private_1_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"},{"resourceInstanceName":"vdns","resourceName":"Vloadbalancer.nodes.heat.vdns","resourceInvariantUUID":"b4ad5952-aa22-4645-ac57-72d55c8833be","resourceVersion":"1.0","resoucreType":"VFC","resourceUUID":"cca286e8-5ac0-451c-b874-8cc307181e10"},{"resourceInstanceName":"vdns_vdns_2_private_0_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"}],"description":"Complex node type that is used as nested type in VF"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/38b62ebd-276a-48e8-948b-de76c81d6686/metadata/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/38b62ebd-276a-48e8-948b-de76c81d6686/metadata/.header new file mode 100644 index 000000000..79b1c5243 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/38b62ebd-276a-48e8-948b-de76c81d6686/metadata/.header @@ -0,0 +1 @@ +{"Content-Length": "1315", "Set-Cookie": "JSESSIONID=1mwa65h39co1ljdehgclglgrt;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "e436e8fb-e11d-4e9b-a082-cb51c82be86f"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/68bb176c-8d5f-4d27-8407-fd8d9e5910eb/metadata/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/68bb176c-8d5f-4d27-8407-fd8d9e5910eb/metadata/.file new file mode 100644 index 000000000..9985a8be8 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/68bb176c-8d5f-4d27-8407-fd8d9e5910eb/metadata/.file @@ -0,0 +1 @@ +{"uuid":"68bb176c-8d5f-4d27-8407-fd8d9e5910eb","invariantUUID":"1a12347c-6166-4d21-9861-b2c432722a23","name":"Vfirewall.nodes.heat.vfw","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/68bb176c-8d5f-4d27-8407-fd8d9e5910eb/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vfirewall.abstract.nodes.heat.vfw","description":"Not reusable inner VFC"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/68bb176c-8d5f-4d27-8407-fd8d9e5910eb/metadata/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/68bb176c-8d5f-4d27-8407-fd8d9e5910eb/metadata/.header new file mode 100644 index 000000000..5d3981400 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/68bb176c-8d5f-4d27-8407-fd8d9e5910eb/metadata/.header @@ -0,0 +1 @@ +{"Content-Length": "530", "Set-Cookie": "JSESSIONID=1cybc5e92nwmc1bh0rv2faio02;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "132bca4c-b16b-4c78-b52f-4a33bd74b4ed"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/701bf7b7-ddf1-4658-af5f-66c815348fd3/metadata/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/701bf7b7-ddf1-4658-af5f-66c815348fd3/metadata/.file new file mode 100644 index 000000000..bbae2420e --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/701bf7b7-ddf1-4658-af5f-66c815348fd3/metadata/.file @@ -0,0 +1 @@ +{"uuid":"701bf7b7-ddf1-4658-af5f-66c815348fd3","invariantUUID":"53ebeed7-84db-4638-b1f3-8ed44c75985b","name":"vFirewall-nodes.vfwCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/701bf7b7-ddf1-4658-af5f-66c815348fd3/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vfirewallcvfc.abstract.nodes.vfw","resources":[{"resourceInstanceName":"vfw_vfw_private_0_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"},{"resourceInstanceName":"vfw_vfw_private_2_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"},{"resourceInstanceName":"vfw_vfw_private_1_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"},{"resourceInstanceName":"vfw","resourceName":"Vfirewall.nodes.heat.vfw","resourceInvariantUUID":"1a12347c-6166-4d21-9861-b2c432722a23","resourceVersion":"1.0","resoucreType":"VFC","resourceUUID":"68bb176c-8d5f-4d27-8407-fd8d9e5910eb"}],"description":"Complex node type that is used as nested type in VF"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/701bf7b7-ddf1-4658-af5f-66c815348fd3/metadata/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/701bf7b7-ddf1-4658-af5f-66c815348fd3/metadata/.header new file mode 100644 index 000000000..c4e7b6900 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/701bf7b7-ddf1-4658-af5f-66c815348fd3/metadata/.header @@ -0,0 +1 @@ +{"Content-Length": "1527", "Set-Cookie": "JSESSIONID=1x67gjk2bge1i5gw7e9i9efw;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "65089c4e-19a4-4616-b3ec-97d7f4c65725"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/8fb4db8b-1d1f-4369-8611-0375d86f0051/metadata/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/8fb4db8b-1d1f-4369-8611-0375d86f0051/metadata/.file new file mode 100644 index 000000000..940d0ecc4 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/8fb4db8b-1d1f-4369-8611-0375d86f0051/metadata/.file @@ -0,0 +1 @@ +{"uuid":"8fb4db8b-1d1f-4369-8611-0375d86f0051","invariantUUID":"05e3e25f-b671-433f-8ea6-835c198c15ae","name":"Vloadbalancer.nodes.heat.vpg","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/8fb4db8b-1d1f-4369-8611-0375d86f0051/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vloadbalancer.abstract.nodes.heat.vpg","description":"Not reusable inner VFC"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/8fb4db8b-1d1f-4369-8611-0375d86f0051/metadata/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/8fb4db8b-1d1f-4369-8611-0375d86f0051/metadata/.header new file mode 100644 index 000000000..45800a0af --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/8fb4db8b-1d1f-4369-8611-0375d86f0051/metadata/.header @@ -0,0 +1 @@ +{"Content-Length": "538", "Set-Cookie": "JSESSIONID=m8wbe2pvqc0ga1gf3ceig0tc;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "12c97091-9d7e-4463-9154-4249b378e4d7"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/948da0c9-536e-4688-85eb-d906fe7324b3/metadata/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/948da0c9-536e-4688-85eb-d906fe7324b3/metadata/.file new file mode 100644 index 000000000..53fa9e394 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/948da0c9-536e-4688-85eb-d906fe7324b3/metadata/.file @@ -0,0 +1 @@ +{"uuid":"948da0c9-536e-4688-85eb-d906fe7324b3","invariantUUID":"702cbc3d-5669-426d-aba6-6ddf4d4a702b","name":"vLoadBalancer-nodes.vpgCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/948da0c9-536e-4688-85eb-d906fe7324b3/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vloadbalancercvfc.abstract.nodes.vpg","resources":[{"resourceInstanceName":"vpg","resourceName":"Vloadbalancer.nodes.heat.vpg","resourceInvariantUUID":"05e3e25f-b671-433f-8ea6-835c198c15ae","resourceVersion":"1.0","resoucreType":"VFC","resourceUUID":"8fb4db8b-1d1f-4369-8611-0375d86f0051"},{"resourceInstanceName":"vpg_vpg_private_0_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"},{"resourceInstanceName":"vpg_vpg_private_1_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"}],"description":"Complex node type that is used as nested type in VF"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/948da0c9-536e-4688-85eb-d906fe7324b3/metadata/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/948da0c9-536e-4688-85eb-d906fe7324b3/metadata/.header new file mode 100644 index 000000000..86110d468 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/948da0c9-536e-4688-85eb-d906fe7324b3/metadata/.header @@ -0,0 +1 @@ +{"Content-Length": "1299", "Set-Cookie": "JSESSIONID=1hq9wsp841x1l7lxmnjnau49m;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "e890362a-2dc4-4278-bee6-7dca3802e9ce"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/metadata/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/metadata/.file new file mode 100644 index 000000000..2a272ee6f --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/metadata/.file @@ -0,0 +1 @@ +{"uuid":"98c27d0b-9395-4f8b-87ab-e076cd1f627e","invariantUUID":"07e266fc-49ab-4cd7-8378-ca4676f1b9ec","name":"vFirewall","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/toscaModel","category":"Application L4+","subCategory":"Firewall","resourceType":"VF","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jm0007","lastUpdaterFullName":"Joni Mitchell","toscaResourceName":"org.openecomp.resource.vf.Vfirewall","resources":[{"resourceInstanceName":"unprotected_private_network","resourceName":"NeutronNet","resourceInvariantUUID":"e83f8487-8ba2-479c-8d63-23217595dbb2","resourceVersion":"1.0","resoucreType":"VL","resourceUUID":"fc80335e-39cf-44a3-8860-995495fad829"},{"resourceInstanceName":"abstract_vfw","resourceName":"vFirewall-nodes.vfwCvfc","resourceInvariantUUID":"53ebeed7-84db-4638-b1f3-8ed44c75985b","resourceVersion":"1.0","resoucreType":"CVFC","resourceUUID":"701bf7b7-ddf1-4658-af5f-66c815348fd3"},{"resourceInstanceName":"protected_private_network","resourceName":"NeutronNet","resourceInvariantUUID":"e83f8487-8ba2-479c-8d63-23217595dbb2","resourceVersion":"1.0","resoucreType":"VL","resourceUUID":"fc80335e-39cf-44a3-8860-995495fad829"},{"resourceInstanceName":"abstract_vsn","resourceName":"vFirewall-nodes.vsnCvfc","resourceInvariantUUID":"74805001-19f5-4c2c-9928-03014161c32a","resourceVersion":"1.0","resoucreType":"CVFC","resourceUUID":"d6a5add1-162a-4966-80a6-8ba53d83b17f"}],"artifacts":[{"artifactName":"vf-license-model.xml","artifactType":"VF_LICENSE","artifactURL":"/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/artifacts/6e816af9-944d-46d0-826d-5ff7be063a01","artifactDescription":"VF license file","artifactChecksum":"Njg4NTI4ZWY2MTliMGQzOGZmNDA4ZjRiMjllZmJkMzM=","artifactUUID":"6e816af9-944d-46d0-826d-5ff7be063a01","artifactVersion":"1","artifactLabel":"vflicense","artifactGroupType":"DEPLOYMENT"},{"artifactName":"base_vfw.yaml","artifactType":"HEAT","artifactURL":"/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/artifacts/cbc75b18-86d1-4139-95f2-1d91f79a8b25","artifactDescription":"created from csar","artifactTimeout":60,"artifactChecksum":"M2I1YmVjNzZkY2MxMWJkYTM5NzA3NDVhMGQxMzY2MDA=","artifactUUID":"cbc75b18-86d1-4139-95f2-1d91f79a8b25","artifactVersion":"2","artifactLabel":"heat1","artifactGroupType":"DEPLOYMENT"},{"artifactName":"vendor-license-model.xml","artifactType":"VENDOR_LICENSE","artifactURL":"/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/artifacts/5b592087-76bf-4c43-a1e7-d4151ce51cdd","artifactDescription":" Vendor license file","artifactChecksum":"Mjc0NGViYzYyNWZkZTRmYWFkYmUzZjY1MmEwNzRjZDE=","artifactUUID":"5b592087-76bf-4c43-a1e7-d4151ce51cdd","artifactVersion":"1","artifactLabel":"vendorlicense","artifactGroupType":"DEPLOYMENT"}],"description":"vFW, vSink"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/metadata/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/metadata/.header new file mode 100644 index 000000000..56bc0de43 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/metadata/.header @@ -0,0 +1 @@ +{"Content-Length": "2820", "Set-Cookie": "JSESSIONID=1lzsottm5qzz6tqpilubfc84d;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "f9f2ebc4-5438-4b28-aaae-9671b78c30d1"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/metadata/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/metadata/.file new file mode 100644 index 000000000..ea376775e --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/metadata/.file @@ -0,0 +1 @@ +{"uuid":"a004b0d8-54bd-4ede-9311-c75dc608e9fd","invariantUUID":"023a3f0d-1161-45ff-b4cf-8918a8ccf3ad","name":"vPacketGen","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/toscaModel","category":"Application L4+","subCategory":"Web Server","resourceType":"VF","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jm0007","lastUpdaterFullName":"Joni Mitchell","toscaResourceName":"org.openecomp.resource.vf.Vpacketgen","resources":[{"resourceInstanceName":"abstract_vpg","resourceName":"vPacketGen-nodes.vpgCvfc","resourceInvariantUUID":"28142b9a-7925-4921-bc81-178c5bae4a9b","resourceVersion":"1.0","resoucreType":"CVFC","resourceUUID":"2bbcbcce-f9e2-4f5d-b975-1f1122d3226c"}],"artifacts":[{"artifactName":"vf-license-model.xml","artifactType":"VF_LICENSE","artifactURL":"/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/artifacts/0d837657-c5fe-4042-a105-b650361cc289","artifactDescription":"VF license file","artifactChecksum":"MGU5YWY1NzNmZmM3MTEwYmM0YTgzMmQ5NGUyMmUzODQ=","artifactUUID":"0d837657-c5fe-4042-a105-b650361cc289","artifactVersion":"1","artifactLabel":"vflicense","artifactGroupType":"DEPLOYMENT"},{"artifactName":"base_vpkg.yaml","artifactType":"HEAT","artifactURL":"/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/artifacts/010c5015-477d-4aba-a57a-540daa1b7af6","artifactDescription":"created from csar","artifactTimeout":60,"artifactChecksum":"NzI1ZTM5NDU3ZjBhMzQwNmFiNDYzNDBhOWM2NjNmOWU=","artifactUUID":"010c5015-477d-4aba-a57a-540daa1b7af6","artifactVersion":"2","artifactLabel":"heat1","artifactGroupType":"DEPLOYMENT"},{"artifactName":"vendor-license-model.xml","artifactType":"VENDOR_LICENSE","artifactURL":"/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/artifacts/054e473f-173b-48d5-a4ee-f5ef055c008d","artifactDescription":" Vendor license file","artifactChecksum":"Mjc0NGViYzYyNWZkZTRmYWFkYmUzZjY1MmEwNzRjZDE=","artifactUUID":"054e473f-173b-48d5-a4ee-f5ef055c008d","artifactVersion":"1","artifactLabel":"vendorlicense","artifactGroupType":"DEPLOYMENT"}],"description":"vPacketGen"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/metadata/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/metadata/.header new file mode 100644 index 000000000..31ab6c959 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/metadata/.header @@ -0,0 +1 @@ +{"Content-Length": "2096", "Set-Cookie": "JSESSIONID=89np5gtpq1dg1q6yy7aqkysk3;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "e02c1210-1cc8-4c4d-9763-2720e5f0a1ef"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/a01ebd00-4b64-4607-8422-c3733735800d/metadata/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/a01ebd00-4b64-4607-8422-c3733735800d/metadata/.file new file mode 100644 index 000000000..b2e0716c0 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/a01ebd00-4b64-4607-8422-c3733735800d/metadata/.file @@ -0,0 +1 @@ +{"uuid":"a01ebd00-4b64-4607-8422-c3733735800d","invariantUUID":"dd6edb9e-015e-45ae-9597-bac06687f9e3","name":"vLoadBalancer-nodes.vdnsCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/a01ebd00-4b64-4607-8422-c3733735800d/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vloadbalancercvfc.abstract.nodes.vdns","resources":[{"resourceInstanceName":"vdns","resourceName":"Vloadbalancer.nodes.heat.vdns","resourceInvariantUUID":"b4ad5952-aa22-4645-ac57-72d55c8833be","resourceVersion":"1.0","resoucreType":"VFC","resourceUUID":"cca286e8-5ac0-451c-b874-8cc307181e10"},{"resourceInstanceName":"vdns_vdns_private_1_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"},{"resourceInstanceName":"vdns_vdns_private_0_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"}],"description":"Complex node type that is used as nested type in VF"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/a01ebd00-4b64-4607-8422-c3733735800d/metadata/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/a01ebd00-4b64-4607-8422-c3733735800d/metadata/.header new file mode 100644 index 000000000..86df6fd4f --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/a01ebd00-4b64-4607-8422-c3733735800d/metadata/.header @@ -0,0 +1 @@ +{"Content-Length": "1307", "Set-Cookie": "JSESSIONID=s3ol5grms28iil8u7399i2ti;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "c5dafa60-41b8-46b1-9f02-a7cd6a9a92a5"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/b339e576-e433-4be4-8a43-258f629c4e79/metadata/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/b339e576-e433-4be4-8a43-258f629c4e79/metadata/.file new file mode 100644 index 000000000..24da339a5 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/b339e576-e433-4be4-8a43-258f629c4e79/metadata/.file @@ -0,0 +1 @@ +{"uuid":"b339e576-e433-4be4-8a43-258f629c4e79","invariantUUID":"d66c0bce-d7e1-41ad-bdaf-468d442d0543","name":"Vfirewall.nodes.heat.vsn","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/b339e576-e433-4be4-8a43-258f629c4e79/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vfirewall.abstract.nodes.heat.vsn","description":"Not reusable inner VFC"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/b339e576-e433-4be4-8a43-258f629c4e79/metadata/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/b339e576-e433-4be4-8a43-258f629c4e79/metadata/.header new file mode 100644 index 000000000..faa4d0bd7 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/b339e576-e433-4be4-8a43-258f629c4e79/metadata/.header @@ -0,0 +1 @@ +{"Content-Length": "530", "Set-Cookie": "JSESSIONID=1iw9dnwwle3ig19rx0pz7c5dqu;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "415de25b-5ad3-4de7-b188-e6dec8e01f35"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/metadata/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/metadata/.file new file mode 100644 index 000000000..4a23a0ec1 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/metadata/.file @@ -0,0 +1 @@ +{"uuid":"c041f64d-8d8f-4f89-906f-79dccc63e7f5","invariantUUID":"48504e0e-f3d3-411d-a52b-eda1b8fec073","name":"vLoadBalancer","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/toscaModel","category":"Application L4+","subCategory":"Load Balancer","resourceType":"VF","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jm0007","lastUpdaterFullName":"Joni Mitchell","toscaResourceName":"org.openecomp.resource.vf.Vloadbalancer","resources":[{"resourceInstanceName":"abstract_vdns","resourceName":"vLoadBalancer-nodes.vdnsCvfc","resourceInvariantUUID":"dd6edb9e-015e-45ae-9597-bac06687f9e3","resourceVersion":"1.0","resoucreType":"CVFC","resourceUUID":"a01ebd00-4b64-4607-8422-c3733735800d"},{"resourceInstanceName":"vlb_private_network","resourceName":"NeutronNet","resourceInvariantUUID":"e83f8487-8ba2-479c-8d63-23217595dbb2","resourceVersion":"1.0","resoucreType":"VL","resourceUUID":"fc80335e-39cf-44a3-8860-995495fad829"},{"resourceInstanceName":"abstract_vlb","resourceName":"vLoadBalancer-nodes.vlbCvfc","resourceInvariantUUID":"ba4d4b5d-f861-4155-886b-b1cdba5e0957","resourceVersion":"1.0","resoucreType":"CVFC","resourceUUID":"228aac11-6e48-4412-afbf-327c5c3b04fb"},{"resourceInstanceName":"abstract_vpg","resourceName":"vLoadBalancer-nodes.vpgCvfc","resourceInvariantUUID":"702cbc3d-5669-426d-aba6-6ddf4d4a702b","resourceVersion":"1.0","resoucreType":"CVFC","resourceUUID":"948da0c9-536e-4688-85eb-d906fe7324b3"},{"resourceInstanceName":"abstract_vdns_1","resourceName":"vLoadBalancer-nodes.vdns_1Cvfc","resourceInvariantUUID":"2ef814e3-7c17-420c-bdba-e84e338cd991","resourceVersion":"1.0","resoucreType":"CVFC","resourceUUID":"38b62ebd-276a-48e8-948b-de76c81d6686"},{"resourceInstanceName":"pktgen_private_network","resourceName":"NeutronNet","resourceInvariantUUID":"e83f8487-8ba2-479c-8d63-23217595dbb2","resourceVersion":"1.0","resoucreType":"VL","resourceUUID":"fc80335e-39cf-44a3-8860-995495fad829"}],"artifacts":[{"artifactName":"vf-license-model.xml","artifactType":"VF_LICENSE","artifactURL":"/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/artifacts/51af0540-4863-4900-b3be-0f81abd89194","artifactDescription":"VF license file","artifactChecksum":"ODk5M2NiYzE2ZDk1ZmNkZmRjZDcwMTE1NjExMzViNjA=","artifactUUID":"51af0540-4863-4900-b3be-0f81abd89194","artifactVersion":"1","artifactLabel":"vflicense","artifactGroupType":"DEPLOYMENT"},{"artifactName":"dnsscaling.yaml","artifactType":"HEAT","artifactURL":"/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/artifacts/f5aad388-38b2-4b53-9df7-d8a25595e5cb","artifactDescription":"created from csar","artifactTimeout":60,"artifactChecksum":"NmE1MmVmNThmZmFjZmZiZTA4NDY2NzA2OTM4ZmFlMGM=","artifactUUID":"f5aad388-38b2-4b53-9df7-d8a25595e5cb","artifactVersion":"2","artifactLabel":"heat1","artifactGroupType":"DEPLOYMENT"},{"artifactName":"base_vlb.yaml","artifactType":"HEAT","artifactURL":"/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/artifacts/3370c5c2-cdbc-45b9-ab76-1f0d45cda59e","artifactDescription":"created from csar","artifactTimeout":60,"artifactChecksum":"ZWZiMDg0M2UxMGZmMjlhYTIxODE5ZDBhNWVhZDk2NTU=","artifactUUID":"3370c5c2-cdbc-45b9-ab76-1f0d45cda59e","artifactVersion":"2","artifactLabel":"heat2","artifactGroupType":"DEPLOYMENT"},{"artifactName":"vendor-license-model.xml","artifactType":"VENDOR_LICENSE","artifactURL":"/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/artifacts/28a877c8-2005-43d7-802d-769b5f420608","artifactDescription":" Vendor license file","artifactChecksum":"Mjc0NGViYzYyNWZkZTRmYWFkYmUzZjY1MmEwNzRjZDE=","artifactUUID":"28a877c8-2005-43d7-802d-769b5f420608","artifactVersion":"1","artifactLabel":"vendorlicense","artifactGroupType":"DEPLOYMENT"}],"description":"vLB, vDNS, vPacketGen"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/metadata/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/metadata/.header new file mode 100644 index 000000000..84e699260 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/metadata/.header @@ -0,0 +1 @@ +{"Content-Length": "3790", "Set-Cookie": "JSESSIONID=1nqlf3cbvim6c1vmptrsdbq3ih;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "5b484e69-bb1c-4445-9da2-0eef460adf07"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/c8a01686-2762-483c-98ad-a66606b9947f/metadata/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/c8a01686-2762-483c-98ad-a66606b9947f/metadata/.file new file mode 100644 index 000000000..ecf6aa73a --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/c8a01686-2762-483c-98ad-a66606b9947f/metadata/.file @@ -0,0 +1 @@ +{"uuid":"c8a01686-2762-483c-98ad-a66606b9947f","invariantUUID":"86769df9-139b-489f-949d-05efb7f0ed6a","name":"Vpacketgen.nodes.heat.vpg","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/c8a01686-2762-483c-98ad-a66606b9947f/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vpacketgen.abstract.nodes.heat.vpg","description":"Not reusable inner VFC"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/c8a01686-2762-483c-98ad-a66606b9947f/metadata/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/c8a01686-2762-483c-98ad-a66606b9947f/metadata/.header new file mode 100644 index 000000000..650c2ad49 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/c8a01686-2762-483c-98ad-a66606b9947f/metadata/.header @@ -0,0 +1 @@ +{"Content-Length": "532", "Set-Cookie": "JSESSIONID=1cozsnghk53ca15awxbl6ni870;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "7ceea8dc-76d4-4dfb-a142-b0d220d61e14"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/cca286e8-5ac0-451c-b874-8cc307181e10/metadata/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/cca286e8-5ac0-451c-b874-8cc307181e10/metadata/.file new file mode 100644 index 000000000..58b5d3673 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/cca286e8-5ac0-451c-b874-8cc307181e10/metadata/.file @@ -0,0 +1 @@ +{"uuid":"cca286e8-5ac0-451c-b874-8cc307181e10","invariantUUID":"b4ad5952-aa22-4645-ac57-72d55c8833be","name":"Vloadbalancer.nodes.heat.vdns","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/cca286e8-5ac0-451c-b874-8cc307181e10/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vloadbalancer.abstract.nodes.heat.vdns","description":"Not reusable inner VFC"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/cca286e8-5ac0-451c-b874-8cc307181e10/metadata/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/cca286e8-5ac0-451c-b874-8cc307181e10/metadata/.header new file mode 100644 index 000000000..2ae908f02 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/cca286e8-5ac0-451c-b874-8cc307181e10/metadata/.header @@ -0,0 +1 @@ +{"Content-Length": "540", "Set-Cookie": "JSESSIONID=uf90ig0y06m3a7lijhv462bb;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "8a4decf7-9171-4559-861f-db94405f9f2c"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/d6a5add1-162a-4966-80a6-8ba53d83b17f/metadata/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/d6a5add1-162a-4966-80a6-8ba53d83b17f/metadata/.file new file mode 100644 index 000000000..8038b8130 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/d6a5add1-162a-4966-80a6-8ba53d83b17f/metadata/.file @@ -0,0 +1 @@ +{"uuid":"d6a5add1-162a-4966-80a6-8ba53d83b17f","invariantUUID":"74805001-19f5-4c2c-9928-03014161c32a","name":"vFirewall-nodes.vsnCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/d6a5add1-162a-4966-80a6-8ba53d83b17f/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vfirewallcvfc.abstract.nodes.vsn","resources":[{"resourceInstanceName":"vsn","resourceName":"Vfirewall.nodes.heat.vsn","resourceInvariantUUID":"d66c0bce-d7e1-41ad-bdaf-468d442d0543","resourceVersion":"1.0","resoucreType":"VFC","resourceUUID":"b339e576-e433-4be4-8a43-258f629c4e79"},{"resourceInstanceName":"vsn_vsn_private_1_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"},{"resourceInstanceName":"vsn_vsn_private_0_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"}],"description":"Complex node type that is used as nested type in VF"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/d6a5add1-162a-4966-80a6-8ba53d83b17f/metadata/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/d6a5add1-162a-4966-80a6-8ba53d83b17f/metadata/.header new file mode 100644 index 000000000..ebd872113 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/d6a5add1-162a-4966-80a6-8ba53d83b17f/metadata/.header @@ -0,0 +1 @@ +{"Content-Length": "1287", "Set-Cookie": "JSESSIONID=atnj864xj270149zuaoutning;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "6a01fc8c-95f7-4708-a232-495c3b8cf436"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d/metadata/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d/metadata/.file new file mode 100644 index 000000000..777738301 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d/metadata/.file @@ -0,0 +1 @@ +{"uuid":"f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d","invariantUUID":"3ff44c1d-0384-4501-8e33-dd3000799378","name":"Vloadbalancer.nodes.heat.vlb","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vloadbalancer.abstract.nodes.heat.vlb","description":"Not reusable inner VFC"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d/metadata/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d/metadata/.header new file mode 100644 index 000000000..629e7d981 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d/metadata/.header @@ -0,0 +1 @@ +{"Content-Length": "538", "Set-Cookie": "JSESSIONID=1gy8iwktdb6fl1ja4hcilqnj0x;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "712c8b60-afb5-4b77-a12f-bdaf82d5b9a5"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=CVFC/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=CVFC/.file new file mode 100644 index 000000000..7115df3f9 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=CVFC/.file @@ -0,0 +1 @@ +[{"uuid":"a01ebd00-4b64-4607-8422-c3733735800d","invariantUUID":"dd6edb9e-015e-45ae-9597-bac06687f9e3","name":"vLoadBalancer-nodes.vdnsCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/a01ebd00-4b64-4607-8422-c3733735800d/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"948da0c9-536e-4688-85eb-d906fe7324b3","invariantUUID":"702cbc3d-5669-426d-aba6-6ddf4d4a702b","name":"vLoadBalancer-nodes.vpgCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/948da0c9-536e-4688-85eb-d906fe7324b3/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"38b62ebd-276a-48e8-948b-de76c81d6686","invariantUUID":"2ef814e3-7c17-420c-bdba-e84e338cd991","name":"vLoadBalancer-nodes.vdns_1Cvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/38b62ebd-276a-48e8-948b-de76c81d6686/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"228aac11-6e48-4412-afbf-327c5c3b04fb","invariantUUID":"ba4d4b5d-f861-4155-886b-b1cdba5e0957","name":"vLoadBalancer-nodes.vlbCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/228aac11-6e48-4412-afbf-327c5c3b04fb/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"2bbcbcce-f9e2-4f5d-b975-1f1122d3226c","invariantUUID":"28142b9a-7925-4921-bc81-178c5bae4a9b","name":"vPacketGen-nodes.vpgCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/2bbcbcce-f9e2-4f5d-b975-1f1122d3226c/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"701bf7b7-ddf1-4658-af5f-66c815348fd3","invariantUUID":"53ebeed7-84db-4638-b1f3-8ed44c75985b","name":"vFirewall-nodes.vfwCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/701bf7b7-ddf1-4658-af5f-66c815348fd3/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"d6a5add1-162a-4966-80a6-8ba53d83b17f","invariantUUID":"74805001-19f5-4c2c-9928-03014161c32a","name":"vFirewall-nodes.vsnCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/d6a5add1-162a-4966-80a6-8ba53d83b17f/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"}] \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=CVFC/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=CVFC/.header new file mode 100644 index 000000000..e7f1e8490 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=CVFC/.header @@ -0,0 +1 @@ +{"Content-Length": "2612", "Set-Cookie": "JSESSIONID=17p45w15arnkc191z2olo4e8qe;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "485020fa-b5f7-4d30-9473-e201326ed649"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VF/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VF/.file new file mode 100644 index 000000000..253046a91 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VF/.file @@ -0,0 +1 @@ +[{"uuid":"c041f64d-8d8f-4f89-906f-79dccc63e7f5","invariantUUID":"48504e0e-f3d3-411d-a52b-eda1b8fec073","name":"vLoadBalancer","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/toscaModel","category":"Application L4+","subCategory":"Load Balancer","resourceType":"VF","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jm0007"},{"uuid":"98c27d0b-9395-4f8b-87ab-e076cd1f627e","invariantUUID":"07e266fc-49ab-4cd7-8378-ca4676f1b9ec","name":"vFirewall","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/toscaModel","category":"Application L4+","subCategory":"Firewall","resourceType":"VF","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jm0007"},{"uuid":"a004b0d8-54bd-4ede-9311-c75dc608e9fd","invariantUUID":"023a3f0d-1161-45ff-b4cf-8918a8ccf3ad","name":"vPacketGen","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/toscaModel","category":"Application L4+","subCategory":"Web Server","resourceType":"VF","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jm0007"}] \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VF/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VF/.header new file mode 100644 index 000000000..ff1f54a02 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VF/.header @@ -0,0 +1 @@ +{"Content-Length": "1099", "Set-Cookie": "JSESSIONID=1cmvc2wrt6df31psfrfvp7y670;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "a37e7d9c-effe-4354-94df-77774dd239d3"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VFC/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VFC/.file new file mode 100644 index 000000000..a99aa44d2 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VFC/.file @@ -0,0 +1 @@ +[{"uuid":"a72ab48d-2d20-4c28-936a-94f45160d126","invariantUUID":"528a9e7e-1db8-44cd-a59a-f7f2833aaeb3","name":"SoftwareComponent","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/a72ab48d-2d20-4c28-936a-94f45160d126/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"2fa6c8ab-297f-4ec6-869f-893db6c84ac4","invariantUUID":"281696ab-4415-4dbb-8f4b-42ff25314466","name":"Root","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/2fa6c8ab-297f-4ec6-869f-893db6c84ac4/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"ba598da2-fd47-4701-b906-c03309ce52d7","invariantUUID":"cfdfb7b0-44fe-4b03-8efd-83533b4a3e94","name":"Compute","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/ba598da2-fd47-4701-b906-c03309ce52d7/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"c505b470-d39e-44f2-bb3a-26bc1b10bc84","invariantUUID":"7afee9e5-f666-4109-875c-89663f4c2676","name":"WebApplication","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/c505b470-d39e-44f2-bb3a-26bc1b10bc84/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"32c7f0ad-70b1-445f-9ec4-a54fdc054081","invariantUUID":"f0c9ed72-f92d-471b-8014-b810cb9d6c53","name":"Database","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/32c7f0ad-70b1-445f-9ec4-a54fdc054081/toscaModel","category":"Generic","subCategory":"Database","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"3187eb9b-dbba-492d-9137-e12db15226e7","invariantUUID":"ec55e51b-eb97-41ce-b2bf-bd7240d773a1","name":"WebServer","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/3187eb9b-dbba-492d-9137-e12db15226e7/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"59dc3d57-6609-4acd-b280-1297504b3fa3","invariantUUID":"3d5f7968-8432-47a7-9532-5833050636c9","name":"ObjectStorage","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/59dc3d57-6609-4acd-b280-1297504b3fa3/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"6000538b-f0f0-467b-bb8c-d6514d84529f","invariantUUID":"8c5a23e8-388d-4af8-8a5e-469081b2b8cd","name":"Runtime","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/6000538b-f0f0-467b-bb8c-d6514d84529f/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"92cb6435-1f95-42e1-b7a4-3418fa58f99c","invariantUUID":"fc537796-7a6a-4878-ad2c-ebae0b1031eb","name":"BlockStorage","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/92cb6435-1f95-42e1-b7a4-3418fa58f99c/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"7e41c605-b93c-4679-bc8e-83ac839e92c8","invariantUUID":"e09d62d9-c704-41be-a091-d0bf8d5c2c6b","name":"Application","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/7e41c605-b93c-4679-bc8e-83ac839e92c8/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"0dc498fd-2c4f-4e83-afbd-4404c7644234","invariantUUID":"55642129-7e02-49f3-827b-ef309ca80ff4","name":"GlobalCompute","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/0dc498fd-2c4f-4e83-afbd-4404c7644234/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"8d77ceb7-14a4-44f1-9a53-d92313ed56d0","invariantUUID":"f43bb2b2-db21-4739-8a64-f7743d54db15","name":"CinderVolume","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/8d77ceb7-14a4-44f1-9a53-d92313ed56d0/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"5a14f316-0f4e-4638-a0ad-71776a5014d2","invariantUUID":"40f6daa6-e352-4047-a115-9c4931ce0334","name":"volume","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/5a14f316-0f4e-4638-a0ad-71776a5014d2/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"2220d928-d281-4ba1-b44a-21b72c8c9872","invariantUUID":"7c398180-ea60-494b-b345-678391fbe8c2","name":"NovaServer","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/2220d928-d281-4ba1-b44a-21b72c8c9872/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"c9ed9d61-f3a5-4210-9af7-70a4f93b836a","invariantUUID":"ca7f356c-9f1c-4672-ade1-27a7f190064c","name":"AbstractSubstitute","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/c9ed9d61-f3a5-4210-9af7-70a4f93b836a/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"50ada44a-dd89-4e8d-850b-113019d2175b","invariantUUID":"6bb86fb2-e7f2-4ba6-aca8-80ccea04bc0a","name":"ContrailNetworkRules","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/50ada44a-dd89-4e8d-850b-113019d2175b/toscaModel","category":"Generic","subCategory":"Rules","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"bb37dd40-0e70-405f-81ca-c6ca22d3384f","invariantUUID":"3622a332-ce1c-406c-8212-966822eba394","name":"SecurityRules","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/bb37dd40-0e70-405f-81ca-c6ca22d3384f/toscaModel","category":"Generic","subCategory":"Rules","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"b876d972-31bf-427c-a557-0cc0befcfbec","invariantUUID":"12d9d4a3-f695-4055-b22b-edc60e738795","name":"ContrailAbstractSubstitute","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/b876d972-31bf-427c-a557-0cc0befcfbec/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"6baeb8d4-1d26-4530-a017-60d48dd38ace","invariantUUID":"015e424d-3482-4cd4-a047-1a4ca66588cc","name":"vnfConfiguration","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/6baeb8d4-1d26-4530-a017-60d48dd38ace/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"9f1402d1-b8cc-4b70-a45c-54d636e50086","invariantUUID":"a47fd09d-a910-4829-bb35-38741cefd2b9","name":"DBMS","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/9f1402d1-b8cc-4b70-a45c-54d636e50086/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"467ee1a0-34dd-46da-a198-a4ebe94c31b1","invariantUUID":"35b1df1f-4f9d-4bc6-9dbb-368e26c64243","name":"ContrailV2VirtualMachineInterface","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/467ee1a0-34dd-46da-a198-a4ebe94c31b1/toscaModel","category":"Generic","subCategory":"Network Elements","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"0d26b446-bd26-44ed-95a8-7ec302dd91aa","invariantUUID":"03c4eac9-4af8-4751-94fc-ce6095930c83","name":"ContrailCompute","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/0d26b446-bd26-44ed-95a8-7ec302dd91aa/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"83ccfaa3-a5e5-4567-88c4-aa5cb3a7b22e","invariantUUID":"1a67dbe6-ceca-4621-891e-3bb14f42943a","name":"multiFlavorVFC","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/83ccfaa3-a5e5-4567-88c4-aa5cb3a7b22e/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"14ddb890-fe68-4fee-a296-711d5a4b6e59","invariantUUID":"14184c8a-0c13-4873-a5c1-2586032db98c","name":"Ext Image File","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/14ddb890-fe68-4fee-a296-711d5a4b6e59/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"720552c5-e05d-4933-9882-8d7359af6e82","invariantUUID":"f43a5ef6-ddbf-4520-a6cb-9ca8b6b39ad6","name":"Ext Local Storage","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/720552c5-e05d-4933-9882-8d7359af6e82/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"6ba191b3-2315-44ec-85ac-d5351e7d4b81","invariantUUID":"0e0269f9-6e04-4234-bfd1-bfae52af7f83","name":"Ext Zte VDU","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/6ba191b3-2315-44ec-85ac-d5351e7d4b81/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"307cd1f4-bbc4-4675-b491-8e318231dc76","invariantUUID":"1fa025a5-c877-4221-9fbf-1b117fb66631","name":"LoadBalancer","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/307cd1f4-bbc4-4675-b491-8e318231dc76/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"949e82db-98ee-47d0-a5d2-21cb06c4a091","invariantUUID":"348d3957-11fd-4194-8835-1b112664b78b","name":"NSD","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/949e82db-98ee-47d0-a5d2-21cb06c4a091/toscaModel","category":"Generic","subCategory":"Network Elements","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"f54c8dde-2dc9-4f06-8bd6-1679d0b12b0c","invariantUUID":"4644b678-6680-432a-9d54-b209cc8264fe","name":"VDU","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/f54c8dde-2dc9-4f06-8bd6-1679d0b12b0c/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"cca286e8-5ac0-451c-b874-8cc307181e10","invariantUUID":"b4ad5952-aa22-4645-ac57-72d55c8833be","name":"Vloadbalancer.nodes.heat.vdns","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/cca286e8-5ac0-451c-b874-8cc307181e10/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"876f7eff-46e3-4981-8717-597c01310714","invariantUUID":"7c3316b0-2090-4a2f-a21b-63e3c9dd3bf8","name":"AllottedResource","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/876f7eff-46e3-4981-8717-597c01310714/toscaModel","category":"Allotted Resource","subCategory":"Allotted Resource","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"c25db6d1-2653-45d9-8062-440f962c83ba","invariantUUID":"86aeffce-6d21-4bc0-84c5-e4fd3f7acdaa","name":"VDU VirtualStorage","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/c25db6d1-2653-45d9-8062-440f962c83ba/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"68bb176c-8d5f-4d27-8407-fd8d9e5910eb","invariantUUID":"1a12347c-6166-4d21-9861-b2c432722a23","name":"Vfirewall.nodes.heat.vfw","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/68bb176c-8d5f-4d27-8407-fd8d9e5910eb/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d","invariantUUID":"3ff44c1d-0384-4501-8e33-dd3000799378","name":"Vloadbalancer.nodes.heat.vlb","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"8fb4db8b-1d1f-4369-8611-0375d86f0051","invariantUUID":"05e3e25f-b671-433f-8ea6-835c198c15ae","name":"Vloadbalancer.nodes.heat.vpg","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/8fb4db8b-1d1f-4369-8611-0375d86f0051/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"c8a01686-2762-483c-98ad-a66606b9947f","invariantUUID":"86769df9-139b-489f-949d-05efb7f0ed6a","name":"Vpacketgen.nodes.heat.vpg","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/c8a01686-2762-483c-98ad-a66606b9947f/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"5a136c51-055f-46b7-90e3-3d99d1da3d10","invariantUUID":"a6c4eda9-c71b-4435-ad73-51f82946df1b","name":"ContrailV2NetworkRules","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/5a136c51-055f-46b7-90e3-3d99d1da3d10/toscaModel","category":"Generic","subCategory":"Rules","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"163dded5-44a3-42e3-b373-c594412eeac6","invariantUUID":"1550f69b-12cb-44ad-81b3-de6ec606a566","name":"VDU Compute","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/163dded5-44a3-42e3-b373-c594412eeac6/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"b339e576-e433-4be4-8a43-258f629c4e79","invariantUUID":"d66c0bce-d7e1-41ad-bdaf-468d442d0543","name":"Vfirewall.nodes.heat.vsn","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/b339e576-e433-4be4-8a43-258f629c4e79/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"}] \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VFC/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VFC/.header new file mode 100644 index 000000000..6a280d972 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VFC/.header @@ -0,0 +1 @@ +{"Transfer-Encoding": "chunked", "Set-Cookie": "JSESSIONID=158qxkdtdobkd1umr3ikkgrmlx;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "e2ddb3c8-994f-47df-b4dc-097d4fb55c08"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/.file new file mode 100644 index 000000000..92694fed2 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/.file @@ -0,0 +1 @@ +[{"uuid":"aecb6332-e906-4334-9f04-93ba4926f6c2","invariantUUID":"c95b0e7c-c1f0-4287-9928-7964c5377a46","name":"vLoadBalancer","version":"1.0","toscaModelURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/toscaModel","category":"Network L4+","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jm0007","distributionStatus":"DISTRIBUTED"},{"uuid":"56441b4b-0467-41dc-9a0e-e68613838219","invariantUUID":"4cc5b45a-1f63-4194-8100-cd8e14248c92","name":"vFirewall","version":"1.0","toscaModelURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/toscaModel","category":"Network L4+","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jm0007","distributionStatus":"DISTRIBUTED"}] \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/.header new file mode 100644 index 000000000..231ae3db2 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/.header @@ -0,0 +1 @@ +{"Content-Length": "699", "Set-Cookie": "JSESSIONID=w1td04rzsdjkehn8j9ajg2cz;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "43868be1-b1b4-4876-b1ed-8a4abf710695"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/metadata/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/metadata/.file new file mode 100644 index 000000000..294d88c54 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/metadata/.file @@ -0,0 +1 @@ +{"uuid":"56441b4b-0467-41dc-9a0e-e68613838219","invariantUUID":"4cc5b45a-1f63-4194-8100-cd8e14248c92","name":"vFirewall","version":"1.0","toscaModelURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/toscaModel","category":"Network L4+","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jm0007","distributionStatus":"DISTRIBUTED","lastUpdaterFullName":"Joni Mitchell","resources":[{"resourceInstanceName":"vFirewall 0","resourceName":"vFirewall","resourceInvariantUUID":"07e266fc-49ab-4cd7-8378-ca4676f1b9ec","resourceVersion":"1.0","resoucreType":"VF","resourceUUID":"98c27d0b-9395-4f8b-87ab-e076cd1f627e","artifacts":[{"artifactName":"vf-license-model.xml","artifactType":"VF_LICENSE","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vfirewall0/artifacts/6e816af9-944d-46d0-826d-5ff7be063a01","artifactDescription":"VF license file","artifactChecksum":"Njg4NTI4ZWY2MTliMGQzOGZmNDA4ZjRiMjllZmJkMzM=","artifactUUID":"6e816af9-944d-46d0-826d-5ff7be063a01","artifactVersion":"1","artifactLabel":"vflicense","artifactGroupType":"DEPLOYMENT"},{"artifactName":"vfirewall0_modules.json","artifactType":"VF_MODULES_METADATA","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vfirewall0/artifacts/f8cda4b3-3185-4801-b2dc-daa07509f62a","artifactDescription":"Auto-generated VF Modules information artifact","artifactChecksum":"MjZjNjBmNDFhOWZiZDdhOWZhNTI5NGRlNDE0NDQ4ZWM=","artifactUUID":"f8cda4b3-3185-4801-b2dc-daa07509f62a","artifactVersion":"1","artifactLabel":"vfModulesMetadata","artifactGroupType":"DEPLOYMENT"},{"artifactName":"base_vfw.yaml","artifactType":"HEAT","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vfirewall0/artifacts/cbc75b18-86d1-4139-95f2-1d91f79a8b25","artifactDescription":"created from csar","artifactTimeout":60,"artifactChecksum":"M2I1YmVjNzZkY2MxMWJkYTM5NzA3NDVhMGQxMzY2MDA=","artifactUUID":"cbc75b18-86d1-4139-95f2-1d91f79a8b25","artifactVersion":"2","artifactLabel":"heat1","artifactGroupType":"DEPLOYMENT"},{"artifactName":"vendor-license-model.xml","artifactType":"VENDOR_LICENSE","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vfirewall0/artifacts/5b592087-76bf-4c43-a1e7-d4151ce51cdd","artifactDescription":" Vendor license file","artifactChecksum":"Mjc0NGViYzYyNWZkZTRmYWFkYmUzZjY1MmEwNzRjZDE=","artifactUUID":"5b592087-76bf-4c43-a1e7-d4151ce51cdd","artifactVersion":"1","artifactLabel":"vendorlicense","artifactGroupType":"DEPLOYMENT"},{"artifactName":"base_vfw.env","artifactType":"HEAT_ENV","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vfirewall0/artifacts/1a4f0437-9e22-4e18-89ee-c4d95d15e9c1","artifactDescription":"Auto-generated HEAT Environment deployment artifact","artifactChecksum":"MTU0MzA1NzVmYmRhN2ZhMTEzZWMxZWIxMjdkMWFkY2Y=","artifactUUID":"1a4f0437-9e22-4e18-89ee-c4d95d15e9c1","artifactVersion":"2","generatedFromUUID":"51533b42-39ce-4ea8-86a4-458cfbdc72da.heat1","artifactLabel":"heat1env","artifactGroupType":"DEPLOYMENT"}]},{"resourceInstanceName":"vPacketGen 0","resourceName":"vPacketGen","resourceInvariantUUID":"023a3f0d-1161-45ff-b4cf-8918a8ccf3ad","resourceVersion":"1.0","resoucreType":"VF","resourceUUID":"a004b0d8-54bd-4ede-9311-c75dc608e9fd","artifacts":[{"artifactName":"vf-license-model.xml","artifactType":"VF_LICENSE","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vpacketgen0/artifacts/0d837657-c5fe-4042-a105-b650361cc289","artifactDescription":"VF license file","artifactChecksum":"MGU5YWY1NzNmZmM3MTEwYmM0YTgzMmQ5NGUyMmUzODQ=","artifactUUID":"0d837657-c5fe-4042-a105-b650361cc289","artifactVersion":"1","artifactLabel":"vflicense","artifactGroupType":"DEPLOYMENT"},{"artifactName":"vpacketgen0_modules.json","artifactType":"VF_MODULES_METADATA","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vpacketgen0/artifacts/dbcbf1bc-bb8d-43e5-8e77-aec713a2e18c","artifactDescription":"Auto-generated VF Modules information artifact","artifactChecksum":"Zjg5ZWQ0NDIxMTAzOTE1Y2E0MzQ1YmY0Y2MwMmE3YjM=","artifactUUID":"dbcbf1bc-bb8d-43e5-8e77-aec713a2e18c","artifactVersion":"1","artifactLabel":"vfModulesMetadata","artifactGroupType":"DEPLOYMENT"},{"artifactName":"base_vpkg.yaml","artifactType":"HEAT","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vpacketgen0/artifacts/010c5015-477d-4aba-a57a-540daa1b7af6","artifactDescription":"created from csar","artifactTimeout":60,"artifactChecksum":"NzI1ZTM5NDU3ZjBhMzQwNmFiNDYzNDBhOWM2NjNmOWU=","artifactUUID":"010c5015-477d-4aba-a57a-540daa1b7af6","artifactVersion":"2","artifactLabel":"heat1","artifactGroupType":"DEPLOYMENT"},{"artifactName":"vendor-license-model.xml","artifactType":"VENDOR_LICENSE","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vpacketgen0/artifacts/054e473f-173b-48d5-a4ee-f5ef055c008d","artifactDescription":" Vendor license file","artifactChecksum":"Mjc0NGViYzYyNWZkZTRmYWFkYmUzZjY1MmEwNzRjZDE=","artifactUUID":"054e473f-173b-48d5-a4ee-f5ef055c008d","artifactVersion":"1","artifactLabel":"vendorlicense","artifactGroupType":"DEPLOYMENT"},{"artifactName":"base_vpkg.env","artifactType":"HEAT_ENV","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vpacketgen0/artifacts/5724e8d3-47ce-4fbc-b8fc-e1407256c6f4","artifactDescription":"Auto-generated HEAT Environment deployment artifact","artifactChecksum":"NTUzYWFkYWI4NGJlNTU1NWIxMWNlZWQ0ODA5ZDM1MTY=","artifactUUID":"5724e8d3-47ce-4fbc-b8fc-e1407256c6f4","artifactVersion":"2","generatedFromUUID":"2a1233b6-e907-4a1f-8dc8-ead97245afe6.heat1","artifactLabel":"heat1env","artifactGroupType":"DEPLOYMENT"}]}],"artifacts":[{"artifactName":"AAI-vFirewall-resource-1.0.xml","artifactType":"MODEL_INVENTORY_PROFILE","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/artifacts/c55b70c5-5ed5-4ec7-9720-dbc66d47e7cb","artifactDescription":"AAI Resource Model","artifactChecksum":"OGExM2IxZmI5ODQ2Yzk4M2Y3OTY2MjMzNjdjMjA3NjQ=","artifactUUID":"c55b70c5-5ed5-4ec7-9720-dbc66d47e7cb","artifactVersion":"1","artifactLabel":"aairesource796548963","artifactGroupType":"DEPLOYMENT"},{"artifactName":"AAI-vPacketGen-resource-1.0.xml","artifactType":"MODEL_INVENTORY_PROFILE","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/artifacts/2993af7a-c0e3-43db-8a4d-2969df0ba486","artifactDescription":"AAI Resource Model","artifactChecksum":"ZTY3MTE3MTMzYTFjOGFiMDhmNTFjZGVjNWQxZWM1MmI=","artifactUUID":"2993af7a-c0e3-43db-8a4d-2969df0ba486","artifactVersion":"1","artifactLabel":"aairesource913456444","artifactGroupType":"DEPLOYMENT"},{"artifactName":"AAI-vFirewall-service-1.0.xml","artifactType":"MODEL_INVENTORY_PROFILE","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/artifacts/d5af6c6b-0e4b-42cd-a54c-0be081f914a7","artifactDescription":"AAI Service Model","artifactChecksum":"NTRjYzdiYmVlZDI4MDU0OTM5NDE1MTVmY2VlZWZhMzc=","artifactUUID":"d5af6c6b-0e4b-42cd-a54c-0be081f914a7","artifactVersion":"1","artifactLabel":"aaiservice576477880","artifactGroupType":"DEPLOYMENT"},{"artifactName":"AAI-Vpacketgen..base_vpkg..module-0-resource-1.xml","artifactType":"MODEL_INVENTORY_PROFILE","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/artifacts/b583357c-f307-4b22-a4e4-1b99e23f0fc5","artifactDescription":"AAI Resource Model","artifactChecksum":"NmNlNjc0NmViMGRmNWY5MjRjMjliNmMwZGJiNDQxZmU=","artifactUUID":"b583357c-f307-4b22-a4e4-1b99e23f0fc5","artifactVersion":"1","artifactLabel":"aairesource696606042","artifactGroupType":"DEPLOYMENT"},{"artifactName":"AAI-Vfirewall..base_vfw..module-0-resource-1.xml","artifactType":"MODEL_INVENTORY_PROFILE","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/artifacts/a50595b1-77f6-431d-918a-531312771a72","artifactDescription":"AAI Resource Model","artifactChecksum":"Y2E2OTU1NjFiN2U2YmYwMzc2ODE3MWJkMWJmYjVkMDQ=","artifactUUID":"a50595b1-77f6-431d-918a-531312771a72","artifactVersion":"1","artifactLabel":"aairesource1531446144","artifactGroupType":"DEPLOYMENT"}]} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/metadata/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/metadata/.header new file mode 100644 index 000000000..b68cd5a95 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/metadata/.header @@ -0,0 +1 @@ +{"Transfer-Encoding": "chunked", "Set-Cookie": "JSESSIONID=1q39ofwsxq5fv1ceix6aviixab;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "8eaaa9d5-0585-4e48-82a6-932c85afc4fa"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/metadata/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/metadata/.file new file mode 100644 index 000000000..bc8d30ce9 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/metadata/.file @@ -0,0 +1 @@ +{"uuid":"aecb6332-e906-4334-9f04-93ba4926f6c2","invariantUUID":"c95b0e7c-c1f0-4287-9928-7964c5377a46","name":"vLoadBalancer","version":"1.0","toscaModelURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/toscaModel","category":"Network L4+","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jm0007","distributionStatus":"DISTRIBUTED","lastUpdaterFullName":"Joni Mitchell","resources":[{"resourceInstanceName":"vLoadBalancer 0","resourceName":"vLoadBalancer","resourceInvariantUUID":"48504e0e-f3d3-411d-a52b-eda1b8fec073","resourceVersion":"1.0","resoucreType":"VF","resourceUUID":"c041f64d-8d8f-4f89-906f-79dccc63e7f5","artifacts":[{"artifactName":"vf-license-model.xml","artifactType":"VF_LICENSE","artifactURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/resourceInstances/vloadbalancer0/artifacts/51af0540-4863-4900-b3be-0f81abd89194","artifactDescription":"VF license file","artifactChecksum":"ODk5M2NiYzE2ZDk1ZmNkZmRjZDcwMTE1NjExMzViNjA=","artifactUUID":"51af0540-4863-4900-b3be-0f81abd89194","artifactVersion":"1","artifactLabel":"vflicense","artifactGroupType":"DEPLOYMENT"},{"artifactName":"vloadbalancer0_modules.json","artifactType":"VF_MODULES_METADATA","artifactURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/resourceInstances/vloadbalancer0/artifacts/09fd9d5b-c442-4fd5-9430-d222ed9d6072","artifactDescription":"Auto-generated VF Modules information artifact","artifactChecksum":"NGViZWM5NmU3OGJkODI5N2E4OTIxNGU0ZjY4MDIyMGI=","artifactUUID":"09fd9d5b-c442-4fd5-9430-d222ed9d6072","artifactVersion":"1","artifactLabel":"vfModulesMetadata","artifactGroupType":"DEPLOYMENT"},{"artifactName":"dnsscaling.yaml","artifactType":"HEAT","artifactURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/resourceInstances/vloadbalancer0/artifacts/f5aad388-38b2-4b53-9df7-d8a25595e5cb","artifactDescription":"created from csar","artifactTimeout":60,"artifactChecksum":"NmE1MmVmNThmZmFjZmZiZTA4NDY2NzA2OTM4ZmFlMGM=","artifactUUID":"f5aad388-38b2-4b53-9df7-d8a25595e5cb","artifactVersion":"2","artifactLabel":"heat1","artifactGroupType":"DEPLOYMENT"},{"artifactName":"base_vlb.yaml","artifactType":"HEAT","artifactURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/resourceInstances/vloadbalancer0/artifacts/3370c5c2-cdbc-45b9-ab76-1f0d45cda59e","artifactDescription":"created from csar","artifactTimeout":60,"artifactChecksum":"ZWZiMDg0M2UxMGZmMjlhYTIxODE5ZDBhNWVhZDk2NTU=","artifactUUID":"3370c5c2-cdbc-45b9-ab76-1f0d45cda59e","artifactVersion":"2","artifactLabel":"heat2","artifactGroupType":"DEPLOYMENT"},{"artifactName":"base_vlb.env","artifactType":"HEAT_ENV","artifactURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/resourceInstances/vloadbalancer0/artifacts/393157c8-74f5-40f5-ac2c-b8386dc5f763","artifactDescription":"Auto-generated HEAT Environment deployment artifact","artifactChecksum":"NzMwOTgwYTgyNWY2NThjOTZmNzZkMDdjODJiOGNkN2Y=","artifactUUID":"393157c8-74f5-40f5-ac2c-b8386dc5f763","artifactVersion":"2","generatedFromUUID":"25d2b375-b4ad-4476-a5eb-ceb851d9e536.heat2","artifactLabel":"heat2env","artifactGroupType":"DEPLOYMENT"},{"artifactName":"vendor-license-model.xml","artifactType":"VENDOR_LICENSE","artifactURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/resourceInstances/vloadbalancer0/artifacts/28a877c8-2005-43d7-802d-769b5f420608","artifactDescription":" Vendor license file","artifactChecksum":"Mjc0NGViYzYyNWZkZTRmYWFkYmUzZjY1MmEwNzRjZDE=","artifactUUID":"28a877c8-2005-43d7-802d-769b5f420608","artifactVersion":"1","artifactLabel":"vendorlicense","artifactGroupType":"DEPLOYMENT"},{"artifactName":"dnsscaling.env","artifactType":"HEAT_ENV","artifactURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/resourceInstances/vloadbalancer0/artifacts/13a375d2-2926-4b2c-a5a9-f380ac744ffb","artifactDescription":"Auto-generated HEAT Environment deployment artifact","artifactChecksum":"MWQzY2UxZDQ5MzhiNzA1OTg2NjcwNDIxODczYzhiNjU=","artifactUUID":"13a375d2-2926-4b2c-a5a9-f380ac744ffb","artifactVersion":"2","generatedFromUUID":"25d2b375-b4ad-4476-a5eb-ceb851d9e536.heat1","artifactLabel":"heat1env","artifactGroupType":"DEPLOYMENT"}]}],"artifacts":[{"artifactName":"AAI-vLoadBalancer-service-1.0.xml","artifactType":"MODEL_INVENTORY_PROFILE","artifactURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/artifacts/775f9232-0db1-49af-a27b-8cd6f0271d29","artifactDescription":"AAI Service Model","artifactChecksum":"Yjk3NzY2NTFkODU4MWU0YjVhOGViODZjNmUyZGIxODc=","artifactUUID":"775f9232-0db1-49af-a27b-8cd6f0271d29","artifactVersion":"1","artifactLabel":"aaiservice150241483","artifactGroupType":"DEPLOYMENT"},{"artifactName":"AAI-Vloadbalancer..dnsscaling..module-1-resource-1.xml","artifactType":"MODEL_INVENTORY_PROFILE","artifactURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/artifacts/4ce04ca0-94cc-4884-a36a-c46cb6b2ae1b","artifactDescription":"AAI Resource Model","artifactChecksum":"ZjhlOGNkNjdmMWM5NWU4MDY0ZWRjYWEzMTEzZGM2ZTI=","artifactUUID":"4ce04ca0-94cc-4884-a36a-c46cb6b2ae1b","artifactVersion":"1","artifactLabel":"aairesource916952801","artifactGroupType":"DEPLOYMENT"},{"artifactName":"AAI-Vloadbalancer..base_vlb..module-0-resource-1.xml","artifactType":"MODEL_INVENTORY_PROFILE","artifactURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/artifacts/9200d35b-c50b-4502-9473-33039a1c2454","artifactDescription":"AAI Resource Model","artifactChecksum":"ZTNmZDFlOTBjNGU3ZWY3NWE2MTQ1ZWQ4YzBiYWU4NzE=","artifactUUID":"9200d35b-c50b-4502-9473-33039a1c2454","artifactVersion":"1","artifactLabel":"aairesource1122970540","artifactGroupType":"DEPLOYMENT"},{"artifactName":"AAI-vLoadBalancer-resource-1.0.xml","artifactType":"MODEL_INVENTORY_PROFILE","artifactURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/artifacts/faf70850-ea55-4ab6-9648-46a753cdb43f","artifactDescription":"AAI Resource Model","artifactChecksum":"NjBkMDE1YWYwOTY5ZWZkNGUxYmYwYWJkZGNhMTk2MTg=","artifactUUID":"faf70850-ea55-4ab6-9648-46a753cdb43f","artifactVersion":"1","artifactLabel":"aairesource1272484133","artifactGroupType":"DEPLOYMENT"}]} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/metadata/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/metadata/.header new file mode 100644 index 000000000..fba705b1b --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/metadata/.header @@ -0,0 +1 @@ +{"Content-Length": "6161", "Set-Cookie": "JSESSIONID=1au1i8ursafcdtpvhzarkul54;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "e0ca6465-8984-46aa-9e4e-28f3b0415bb1"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc_proxy.py b/src/test/resources/http-cache/sdc_proxy.py new file mode 100644 index 000000000..301e7af9d --- /dev/null +++ b/src/test/resources/http-cache/sdc_proxy.py @@ -0,0 +1,124 @@ +#!/usr/bin/env python2 +### +# ============LICENSE_START======================================================= +# ONAP CLAMP +# ================================================================================ +# Copyright (C) 2018 AT&T Intellectual Property. All rights +# reserved. +# ================================================================================ +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============LICENSE_END============================================ +# =================================================================== +# ECOMP is a trademark and service mark of AT&T Intellectual Property. +### + +import json +import requests +import os +import sys +import SimpleHTTPServer +import SocketServer +import argparse +import tempfile +import signal + +parser = argparse.ArgumentParser(description="SDC Cache & Replay") +parser.add_argument("--username", "-u", type=str, help="Set the username for contacting SDC") +parser.add_argument("--password", "-p", type=str, help="Set the password for contacting SDC") +parser.add_argument("--root", "-r", default=tempfile.mkdtemp, type=str, help="Root folder for the proxy cache") +parser.add_argument("--proxy" , type=str, help="Url of the Act as a proxy. If not set, this script only uses the cache and will return a 404 if files aren't found") +parser.add_argument("--port", "-P", type=int, default="8081", help="Port on which the proxy should listen to") +parser.add_argument("--verbose", "-v", type=bool, help="Print more information in case of error") +options = parser.parse_args() + + +PORT = options.port +SDC_HOST = options.proxy +SDC_AUTH = (options.username, options.password) +SDC_HEADERS = {'X-ECOMP-InstanceID':'CLAMP'} +CACHE_ROOT = options.root + +def signal_handler(signal_sent, frame): + global httpd + if signal_sent == signal.SIGINT: + print('Got Ctrl-C (SIGINT)') + httpd.socket.close() + httpd.shutdown() + httpd.server_close() + +class Proxy(SimpleHTTPServer.SimpleHTTPRequestHandler): + + def print_headers(self): + for header,value in self.headers.items(): + print("%s : %s" % (header, value)) + + def check_credentials(self): + pass + + def _send_content(self, header_file, content_file): + self.send_response(200) + with open(header_file, 'rb') as f: + headers = json.load(f) + for key,value in headers.items(): + if key in ('Transfer-Encoding',): + continue + self.send_header(key, value) + self.end_headers() + with open(content_file,'rb') as f: + fc = f.read() + self.wfile.write(fc) + + def _write_cache(self,cached_file, header_file, content_file, response): + os.makedirs(cached_file, True) + with open(content_file, 'w') as f: + f.write(response.raw.read()) + with open(header_file, 'w') as f: + json.dump(dict(response.raw.headers), f) + # Entry point of the code + def do_GET(self): + + self.print_headers() + self.check_credentials() + + cached_file = '%s/%s' % (CACHE_ROOT, self.path,) + cached_file_content = "%s/.file" % (cached_file,) + cached_file_header = "%s/.header" % (cached_file,) + + _file_available = os.path.exists(cached_file_content) + if not _file_available and not SDC_HOST: + self.send_response(404) + return "404 Not found" + + if not _file_available: + print("Request for not cached file : %s" % (cached_file,)) + url = '%s%s' % (SDC_HOST, self.path) + response = requests.get(url, auth=SDC_AUTH, headers=SDC_HEADERS, stream=True) + + if response.status_code == 200: + self._write_cache(cached_file, cached_file_header, cached_file_content, response) + else: + print('Error when requesting file :') + print('Requested url : %s' % (url,)) + print('Status code : %s' % (response.status_code,)) + print('Content : %s' % (response.content,)) + self.send_response(response.status_code) + return response.content + + self._send_content(cached_file_header, cached_file_content) + +# Main code that start the HTTP server +httpd = SocketServer.ForkingTCPServer(('', PORT), Proxy) +httpd.allow_reuse_address = True +print "Listening on port "+ str(PORT) + " and caching in " + CACHE_ROOT + "(Press Ctrl+C to stop HTTPD Caching script)" +signal.signal(signal.SIGINT, signal_handler) +httpd.serve_forever() \ No newline at end of file diff --git a/src/test/resources/http-cache/start_http_cache.sh b/src/test/resources/http-cache/start_http_cache.sh new file mode 100755 index 000000000..591fd5047 --- /dev/null +++ b/src/test/resources/http-cache/start_http_cache.sh @@ -0,0 +1,37 @@ +#!/bin/bash +### +# ============LICENSE_START======================================================= +# ONAP CLAMP +# ================================================================================ +# Copyright (C) 2018 AT&T Intellectual Property. All rights +# reserved. +# ================================================================================ +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============LICENSE_END============================================ +# =================================================================== +# ECOMP is a trademark and service mark of AT&T Intellectual Property. +### + +if [ $# -eq 1 ] + then + echo 'input parameter is set (proxy http)'; + export http_proxy=$1 + export https_proxy=$1 + else + echo 'input parameter is not set (proxy http)'; +fi + +echo 'Installing requests packages for Python' +pip install requests +echo 'Executing the Http proxy in Cache mode only' +python sdc_proxy.py --port 8080 --root /usr/src/http-cache-app/data-cache \ No newline at end of file -- cgit 1.2.3-korg From 3ba340378a42d0090273f358deaaa1a269008f83 Mon Sep 17 00:00:00 2001 From: "Determe, Sebastien (sd378r)" Date: Thu, 15 Feb 2018 11:20:25 +0100 Subject: Rework the SDC cache Rework the SDC cache used during the integration tests as it was not working on windows Issue-ID: CLAMP-85 Change-Id: I56f19e7dc5e817a21714c4a19609c1de8e76e8dc Signed-off-by: Determe, Sebastien (sd378r) --- .../resources/application-no-camunda.properties | 122 --------------------- .../catalog/resources?resourceType=CVFC/.file | 1 + .../resources?resourceType=CVFC/.header | 1 + .../v1/catalog/resources?resourceType=VF/.file | 1 + .../catalog/resources?resourceType=VF/.header | 1 + .../catalog/resources?resourceType=VFC/.file | 1 + .../catalog/resources?resourceType=VFC/.header | 1 + .../v1/catalog/resources?resourceType=CVFC/.file | 1 - .../v1/catalog/resources?resourceType=CVFC/.header | 1 - .../sdc/v1/catalog/resources?resourceType=VF/.file | 1 - .../v1/catalog/resources?resourceType=VF/.header | 1 - .../v1/catalog/resources?resourceType=VFC/.file | 1 - .../v1/catalog/resources?resourceType=VFC/.header | 1 - src/test/resources/http-cache/sdc_proxy.py | 5 +- src/test/resources/https/https-test.properties | 1 - 15 files changed, 10 insertions(+), 130 deletions(-) delete mode 100644 src/test/resources/application-no-camunda.properties create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=CVFC/.file create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=CVFC/.header create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VF/.file create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VF/.header create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VFC/.file create mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VFC/.header delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=CVFC/.file delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=CVFC/.header delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VF/.file delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VF/.header delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VFC/.file delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VFC/.header mode change 100644 => 100755 src/test/resources/http-cache/sdc_proxy.py (limited to 'src/test/resources/http-cache') diff --git a/src/test/resources/application-no-camunda.properties b/src/test/resources/application-no-camunda.properties deleted file mode 100644 index 2e284b032..000000000 --- a/src/test/resources/application-no-camunda.properties +++ /dev/null @@ -1,122 +0,0 @@ -### -# ============LICENSE_START======================================================= -# ONAP CLAMP -# ================================================================================ -# Copyright (C) 2017-2018 AT&T Intellectual Property. All rights -# reserved. -# ================================================================================ -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# ============LICENSE_END============================================ -# =================================================================== -# ECOMP is a trademark and service mark of AT&T Intellectual Property. -### - -info.build.artifact=@project.artifactId@ -info.build.name=@project.name@ -info.build.description=@project.description@ -info.build.version=@project.version@ - -### Set the port for HTTP or HTTPS protocol (Controlled by Spring framework, only one at a time). -### (See below for the parameter 'server.http.port' if you want to have both enabled) -### To have only HTTP, keep the lines server.ssl.* commented -### To have only HTTPS enabled, uncomment the server.ssl.* lines and specify a right keystore location -server.port=10443 -### Settings for HTTPS (this automatically enables the HTTPS on the port 'server.port') -server.ssl.key-store=classpath:https/keystore-test.jks -server.ssl.key-store-password=testpass -server.ssl.key-password=testpass -### In order to be user friendly when HTTPS is enabled, -### you can add another HTTP port that will be automatically redirected to HTTPS -### by enabling this parameter (server.http.port) and set it to another port (80 or 8080, 8090, etc ...) -#server.http-to-https-redirection.port=10080 - -### HTTP Example: -###-------------- -### server.port=8080 - -### HTTPS Example: -### -------------- -### server.port=8443 -### server.ssl.key-store=file:/tmp/mykey.jks -### server.ssl.key-store-password=mypass -### server.ssl.key-password=mypass - -### HTTP (Redirected to HTTPS) and HTTPS Example: -### -------------------------------------------- -### server.port=8443 <-- The HTTPS port -### server.ssl.key-store=file:/tmp/mykey.jks -### server.ssl.key-store-password=mypass -### server.ssl.key-password=mypass -### server.http-to-https-redirection.port=8090 <-- The HTTP port - -server.contextPath=/ -#Modified engine-rest applicationpath -spring.jersey.application-path=/restservices/clds/v1 -spring.profiles.active=clamp-default,clamp-spring-authentication - -#The max number of active threads in this pool -server.tomcat.max-threads=200 -#The minimum number of threads always kept alive -server.tomcat.min-Spare-Threads=25 -#The number of milliseconds before an idle thread shutsdown, unless the number of active threads are less or equal to minSpareThreads -server.tomcat.max-idle-time=60000 - -#Servlet context parameters -server.context_parameters.p-name=value #context parameter with p-name as key and value as value. - -camel.springboot.consumer-template-cache-size=1000 -camel.springboot.producer-template-cache-size=1000 -camel.springboot.jmx-enabled=false -camel.defaultthreadpool.poolsize=10 -camel.defaultthreadpool.maxpoolsize=20 -camel.defaultthreadpool.maxqueuesize=1000 -camel.defaultthreadpool.keepaliveTime=60 -camel.defaultthreadpool.rejectpolicy=CallerRuns -#camel.springboot.xmlRoutes = false -camel.springboot.xmlRoutes=classpath:/clds/camel/*.xml -#camel.springboot.typeConversion = false - -#clds datasource connection details -spring.datasource.cldsdb.driverClassName=org.mariadb.jdbc.Driver -spring.datasource.cldsdb.url=jdbc:mariadb:sequential://localhost:${docker.mariadb.port.host}/cldsdb4?autoReconnect=true&retriesAllDown=2147483647&failoverLoopRetries=2147483647 -spring.datasource.cldsdb.username=clds -spring.datasource.cldsdb.password=4c90a0b48204383f4283448d23e0b885a47237b2a23588e7c4651604f51c1067 -spring.datasource.cldsdb.validationQuery=SELECT 1 -spring.datasource.cldsdb.validationQueryTimeout=20000 -spring.datasource.cldsdb.validationInterval=30000 -spring.datasource.cldsdb.testWhileIdle = true -spring.datasource.cldsdb.minIdle = 0 -spring.datasource.cldsdb.initialSize=0 -# Automatically test whether a connection provided is good or not -spring.datasource.cldsdb.testOnBorrow=true -spring.datasource.cldsdb.ignoreExceptionOnPreLoad=true - -#Async Executor default Parameters -async.core.pool.size=10 -async.max.pool.size=20 -async.queue.capacity=500 - -org.onap.clamp.config.files.cldsReference=classpath:/clds/clds-reference.properties -org.onap.clamp.config.files.cldsPolicyConfig=classpath:/clds/clds-policy-config.properties -org.onap.clamp.config.files.cldsUsers=classpath:/clds/clds-users.json -org.onap.clamp.config.files.globalClds=classpath:/clds/globalClds.properties - - -#Define user permission related parameters, the permission type can be changed but MUST be redefined in clds-users.properties in that case ! -CLDS_PERMISSION_TYPE_CL=permission-type-cl -CLDS_PERMISSION_TYPE_CL_MANAGE=permission-type-cl-manage -CLDS_PERMISSION_TYPE_CL_EVENT=permission-type-cl-event -CLDS_PERMISSION_TYPE_FILTER_VF=permission-type-filter-vf -CLDS_PERMISSION_TYPE_TEMPLATE=permission-type-template -#This one indicates the type of instances (dev|prod|perf...), this must be set accordingly in clds-users.properties -CLDS_PERMISSION_INSTANCE=dev \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=CVFC/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=CVFC/.file new file mode 100644 index 000000000..7115df3f9 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=CVFC/.file @@ -0,0 +1 @@ +[{"uuid":"a01ebd00-4b64-4607-8422-c3733735800d","invariantUUID":"dd6edb9e-015e-45ae-9597-bac06687f9e3","name":"vLoadBalancer-nodes.vdnsCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/a01ebd00-4b64-4607-8422-c3733735800d/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"948da0c9-536e-4688-85eb-d906fe7324b3","invariantUUID":"702cbc3d-5669-426d-aba6-6ddf4d4a702b","name":"vLoadBalancer-nodes.vpgCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/948da0c9-536e-4688-85eb-d906fe7324b3/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"38b62ebd-276a-48e8-948b-de76c81d6686","invariantUUID":"2ef814e3-7c17-420c-bdba-e84e338cd991","name":"vLoadBalancer-nodes.vdns_1Cvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/38b62ebd-276a-48e8-948b-de76c81d6686/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"228aac11-6e48-4412-afbf-327c5c3b04fb","invariantUUID":"ba4d4b5d-f861-4155-886b-b1cdba5e0957","name":"vLoadBalancer-nodes.vlbCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/228aac11-6e48-4412-afbf-327c5c3b04fb/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"2bbcbcce-f9e2-4f5d-b975-1f1122d3226c","invariantUUID":"28142b9a-7925-4921-bc81-178c5bae4a9b","name":"vPacketGen-nodes.vpgCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/2bbcbcce-f9e2-4f5d-b975-1f1122d3226c/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"701bf7b7-ddf1-4658-af5f-66c815348fd3","invariantUUID":"53ebeed7-84db-4638-b1f3-8ed44c75985b","name":"vFirewall-nodes.vfwCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/701bf7b7-ddf1-4658-af5f-66c815348fd3/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"d6a5add1-162a-4966-80a6-8ba53d83b17f","invariantUUID":"74805001-19f5-4c2c-9928-03014161c32a","name":"vFirewall-nodes.vsnCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/d6a5add1-162a-4966-80a6-8ba53d83b17f/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"}] \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=CVFC/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=CVFC/.header new file mode 100644 index 000000000..e7f1e8490 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=CVFC/.header @@ -0,0 +1 @@ +{"Content-Length": "2612", "Set-Cookie": "JSESSIONID=17p45w15arnkc191z2olo4e8qe;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "485020fa-b5f7-4d30-9473-e201326ed649"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VF/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VF/.file new file mode 100644 index 000000000..253046a91 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VF/.file @@ -0,0 +1 @@ +[{"uuid":"c041f64d-8d8f-4f89-906f-79dccc63e7f5","invariantUUID":"48504e0e-f3d3-411d-a52b-eda1b8fec073","name":"vLoadBalancer","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/toscaModel","category":"Application L4+","subCategory":"Load Balancer","resourceType":"VF","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jm0007"},{"uuid":"98c27d0b-9395-4f8b-87ab-e076cd1f627e","invariantUUID":"07e266fc-49ab-4cd7-8378-ca4676f1b9ec","name":"vFirewall","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/toscaModel","category":"Application L4+","subCategory":"Firewall","resourceType":"VF","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jm0007"},{"uuid":"a004b0d8-54bd-4ede-9311-c75dc608e9fd","invariantUUID":"023a3f0d-1161-45ff-b4cf-8918a8ccf3ad","name":"vPacketGen","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/toscaModel","category":"Application L4+","subCategory":"Web Server","resourceType":"VF","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jm0007"}] \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VF/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VF/.header new file mode 100644 index 000000000..ff1f54a02 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VF/.header @@ -0,0 +1 @@ +{"Content-Length": "1099", "Set-Cookie": "JSESSIONID=1cmvc2wrt6df31psfrfvp7y670;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "a37e7d9c-effe-4354-94df-77774dd239d3"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VFC/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VFC/.file new file mode 100644 index 000000000..a99aa44d2 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VFC/.file @@ -0,0 +1 @@ +[{"uuid":"a72ab48d-2d20-4c28-936a-94f45160d126","invariantUUID":"528a9e7e-1db8-44cd-a59a-f7f2833aaeb3","name":"SoftwareComponent","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/a72ab48d-2d20-4c28-936a-94f45160d126/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"2fa6c8ab-297f-4ec6-869f-893db6c84ac4","invariantUUID":"281696ab-4415-4dbb-8f4b-42ff25314466","name":"Root","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/2fa6c8ab-297f-4ec6-869f-893db6c84ac4/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"ba598da2-fd47-4701-b906-c03309ce52d7","invariantUUID":"cfdfb7b0-44fe-4b03-8efd-83533b4a3e94","name":"Compute","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/ba598da2-fd47-4701-b906-c03309ce52d7/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"c505b470-d39e-44f2-bb3a-26bc1b10bc84","invariantUUID":"7afee9e5-f666-4109-875c-89663f4c2676","name":"WebApplication","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/c505b470-d39e-44f2-bb3a-26bc1b10bc84/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"32c7f0ad-70b1-445f-9ec4-a54fdc054081","invariantUUID":"f0c9ed72-f92d-471b-8014-b810cb9d6c53","name":"Database","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/32c7f0ad-70b1-445f-9ec4-a54fdc054081/toscaModel","category":"Generic","subCategory":"Database","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"3187eb9b-dbba-492d-9137-e12db15226e7","invariantUUID":"ec55e51b-eb97-41ce-b2bf-bd7240d773a1","name":"WebServer","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/3187eb9b-dbba-492d-9137-e12db15226e7/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"59dc3d57-6609-4acd-b280-1297504b3fa3","invariantUUID":"3d5f7968-8432-47a7-9532-5833050636c9","name":"ObjectStorage","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/59dc3d57-6609-4acd-b280-1297504b3fa3/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"6000538b-f0f0-467b-bb8c-d6514d84529f","invariantUUID":"8c5a23e8-388d-4af8-8a5e-469081b2b8cd","name":"Runtime","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/6000538b-f0f0-467b-bb8c-d6514d84529f/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"92cb6435-1f95-42e1-b7a4-3418fa58f99c","invariantUUID":"fc537796-7a6a-4878-ad2c-ebae0b1031eb","name":"BlockStorage","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/92cb6435-1f95-42e1-b7a4-3418fa58f99c/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"7e41c605-b93c-4679-bc8e-83ac839e92c8","invariantUUID":"e09d62d9-c704-41be-a091-d0bf8d5c2c6b","name":"Application","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/7e41c605-b93c-4679-bc8e-83ac839e92c8/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"0dc498fd-2c4f-4e83-afbd-4404c7644234","invariantUUID":"55642129-7e02-49f3-827b-ef309ca80ff4","name":"GlobalCompute","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/0dc498fd-2c4f-4e83-afbd-4404c7644234/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"8d77ceb7-14a4-44f1-9a53-d92313ed56d0","invariantUUID":"f43bb2b2-db21-4739-8a64-f7743d54db15","name":"CinderVolume","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/8d77ceb7-14a4-44f1-9a53-d92313ed56d0/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"5a14f316-0f4e-4638-a0ad-71776a5014d2","invariantUUID":"40f6daa6-e352-4047-a115-9c4931ce0334","name":"volume","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/5a14f316-0f4e-4638-a0ad-71776a5014d2/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"2220d928-d281-4ba1-b44a-21b72c8c9872","invariantUUID":"7c398180-ea60-494b-b345-678391fbe8c2","name":"NovaServer","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/2220d928-d281-4ba1-b44a-21b72c8c9872/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"c9ed9d61-f3a5-4210-9af7-70a4f93b836a","invariantUUID":"ca7f356c-9f1c-4672-ade1-27a7f190064c","name":"AbstractSubstitute","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/c9ed9d61-f3a5-4210-9af7-70a4f93b836a/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"50ada44a-dd89-4e8d-850b-113019d2175b","invariantUUID":"6bb86fb2-e7f2-4ba6-aca8-80ccea04bc0a","name":"ContrailNetworkRules","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/50ada44a-dd89-4e8d-850b-113019d2175b/toscaModel","category":"Generic","subCategory":"Rules","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"bb37dd40-0e70-405f-81ca-c6ca22d3384f","invariantUUID":"3622a332-ce1c-406c-8212-966822eba394","name":"SecurityRules","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/bb37dd40-0e70-405f-81ca-c6ca22d3384f/toscaModel","category":"Generic","subCategory":"Rules","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"b876d972-31bf-427c-a557-0cc0befcfbec","invariantUUID":"12d9d4a3-f695-4055-b22b-edc60e738795","name":"ContrailAbstractSubstitute","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/b876d972-31bf-427c-a557-0cc0befcfbec/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"6baeb8d4-1d26-4530-a017-60d48dd38ace","invariantUUID":"015e424d-3482-4cd4-a047-1a4ca66588cc","name":"vnfConfiguration","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/6baeb8d4-1d26-4530-a017-60d48dd38ace/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"9f1402d1-b8cc-4b70-a45c-54d636e50086","invariantUUID":"a47fd09d-a910-4829-bb35-38741cefd2b9","name":"DBMS","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/9f1402d1-b8cc-4b70-a45c-54d636e50086/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"467ee1a0-34dd-46da-a198-a4ebe94c31b1","invariantUUID":"35b1df1f-4f9d-4bc6-9dbb-368e26c64243","name":"ContrailV2VirtualMachineInterface","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/467ee1a0-34dd-46da-a198-a4ebe94c31b1/toscaModel","category":"Generic","subCategory":"Network Elements","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"0d26b446-bd26-44ed-95a8-7ec302dd91aa","invariantUUID":"03c4eac9-4af8-4751-94fc-ce6095930c83","name":"ContrailCompute","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/0d26b446-bd26-44ed-95a8-7ec302dd91aa/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"83ccfaa3-a5e5-4567-88c4-aa5cb3a7b22e","invariantUUID":"1a67dbe6-ceca-4621-891e-3bb14f42943a","name":"multiFlavorVFC","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/83ccfaa3-a5e5-4567-88c4-aa5cb3a7b22e/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"14ddb890-fe68-4fee-a296-711d5a4b6e59","invariantUUID":"14184c8a-0c13-4873-a5c1-2586032db98c","name":"Ext Image File","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/14ddb890-fe68-4fee-a296-711d5a4b6e59/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"720552c5-e05d-4933-9882-8d7359af6e82","invariantUUID":"f43a5ef6-ddbf-4520-a6cb-9ca8b6b39ad6","name":"Ext Local Storage","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/720552c5-e05d-4933-9882-8d7359af6e82/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"6ba191b3-2315-44ec-85ac-d5351e7d4b81","invariantUUID":"0e0269f9-6e04-4234-bfd1-bfae52af7f83","name":"Ext Zte VDU","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/6ba191b3-2315-44ec-85ac-d5351e7d4b81/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"307cd1f4-bbc4-4675-b491-8e318231dc76","invariantUUID":"1fa025a5-c877-4221-9fbf-1b117fb66631","name":"LoadBalancer","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/307cd1f4-bbc4-4675-b491-8e318231dc76/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"949e82db-98ee-47d0-a5d2-21cb06c4a091","invariantUUID":"348d3957-11fd-4194-8835-1b112664b78b","name":"NSD","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/949e82db-98ee-47d0-a5d2-21cb06c4a091/toscaModel","category":"Generic","subCategory":"Network Elements","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"f54c8dde-2dc9-4f06-8bd6-1679d0b12b0c","invariantUUID":"4644b678-6680-432a-9d54-b209cc8264fe","name":"VDU","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/f54c8dde-2dc9-4f06-8bd6-1679d0b12b0c/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"cca286e8-5ac0-451c-b874-8cc307181e10","invariantUUID":"b4ad5952-aa22-4645-ac57-72d55c8833be","name":"Vloadbalancer.nodes.heat.vdns","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/cca286e8-5ac0-451c-b874-8cc307181e10/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"876f7eff-46e3-4981-8717-597c01310714","invariantUUID":"7c3316b0-2090-4a2f-a21b-63e3c9dd3bf8","name":"AllottedResource","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/876f7eff-46e3-4981-8717-597c01310714/toscaModel","category":"Allotted Resource","subCategory":"Allotted Resource","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"c25db6d1-2653-45d9-8062-440f962c83ba","invariantUUID":"86aeffce-6d21-4bc0-84c5-e4fd3f7acdaa","name":"VDU VirtualStorage","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/c25db6d1-2653-45d9-8062-440f962c83ba/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"68bb176c-8d5f-4d27-8407-fd8d9e5910eb","invariantUUID":"1a12347c-6166-4d21-9861-b2c432722a23","name":"Vfirewall.nodes.heat.vfw","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/68bb176c-8d5f-4d27-8407-fd8d9e5910eb/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d","invariantUUID":"3ff44c1d-0384-4501-8e33-dd3000799378","name":"Vloadbalancer.nodes.heat.vlb","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"8fb4db8b-1d1f-4369-8611-0375d86f0051","invariantUUID":"05e3e25f-b671-433f-8ea6-835c198c15ae","name":"Vloadbalancer.nodes.heat.vpg","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/8fb4db8b-1d1f-4369-8611-0375d86f0051/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"c8a01686-2762-483c-98ad-a66606b9947f","invariantUUID":"86769df9-139b-489f-949d-05efb7f0ed6a","name":"Vpacketgen.nodes.heat.vpg","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/c8a01686-2762-483c-98ad-a66606b9947f/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"5a136c51-055f-46b7-90e3-3d99d1da3d10","invariantUUID":"a6c4eda9-c71b-4435-ad73-51f82946df1b","name":"ContrailV2NetworkRules","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/5a136c51-055f-46b7-90e3-3d99d1da3d10/toscaModel","category":"Generic","subCategory":"Rules","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"163dded5-44a3-42e3-b373-c594412eeac6","invariantUUID":"1550f69b-12cb-44ad-81b3-de6ec606a566","name":"VDU Compute","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/163dded5-44a3-42e3-b373-c594412eeac6/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"b339e576-e433-4be4-8a43-258f629c4e79","invariantUUID":"d66c0bce-d7e1-41ad-bdaf-468d442d0543","name":"Vfirewall.nodes.heat.vsn","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/b339e576-e433-4be4-8a43-258f629c4e79/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"}] \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VFC/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VFC/.header new file mode 100644 index 000000000..6a280d972 --- /dev/null +++ b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VFC/.header @@ -0,0 +1 @@ +{"Transfer-Encoding": "chunked", "Set-Cookie": "JSESSIONID=158qxkdtdobkd1umr3ikkgrmlx;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "e2ddb3c8-994f-47df-b4dc-097d4fb55c08"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=CVFC/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=CVFC/.file deleted file mode 100644 index 7115df3f9..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=CVFC/.file +++ /dev/null @@ -1 +0,0 @@ -[{"uuid":"a01ebd00-4b64-4607-8422-c3733735800d","invariantUUID":"dd6edb9e-015e-45ae-9597-bac06687f9e3","name":"vLoadBalancer-nodes.vdnsCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/a01ebd00-4b64-4607-8422-c3733735800d/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"948da0c9-536e-4688-85eb-d906fe7324b3","invariantUUID":"702cbc3d-5669-426d-aba6-6ddf4d4a702b","name":"vLoadBalancer-nodes.vpgCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/948da0c9-536e-4688-85eb-d906fe7324b3/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"38b62ebd-276a-48e8-948b-de76c81d6686","invariantUUID":"2ef814e3-7c17-420c-bdba-e84e338cd991","name":"vLoadBalancer-nodes.vdns_1Cvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/38b62ebd-276a-48e8-948b-de76c81d6686/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"228aac11-6e48-4412-afbf-327c5c3b04fb","invariantUUID":"ba4d4b5d-f861-4155-886b-b1cdba5e0957","name":"vLoadBalancer-nodes.vlbCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/228aac11-6e48-4412-afbf-327c5c3b04fb/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"2bbcbcce-f9e2-4f5d-b975-1f1122d3226c","invariantUUID":"28142b9a-7925-4921-bc81-178c5bae4a9b","name":"vPacketGen-nodes.vpgCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/2bbcbcce-f9e2-4f5d-b975-1f1122d3226c/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"701bf7b7-ddf1-4658-af5f-66c815348fd3","invariantUUID":"53ebeed7-84db-4638-b1f3-8ed44c75985b","name":"vFirewall-nodes.vfwCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/701bf7b7-ddf1-4658-af5f-66c815348fd3/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"d6a5add1-162a-4966-80a6-8ba53d83b17f","invariantUUID":"74805001-19f5-4c2c-9928-03014161c32a","name":"vFirewall-nodes.vsnCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/d6a5add1-162a-4966-80a6-8ba53d83b17f/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"}] \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=CVFC/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=CVFC/.header deleted file mode 100644 index e7f1e8490..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=CVFC/.header +++ /dev/null @@ -1 +0,0 @@ -{"Content-Length": "2612", "Set-Cookie": "JSESSIONID=17p45w15arnkc191z2olo4e8qe;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "485020fa-b5f7-4d30-9473-e201326ed649"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VF/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VF/.file deleted file mode 100644 index 253046a91..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VF/.file +++ /dev/null @@ -1 +0,0 @@ -[{"uuid":"c041f64d-8d8f-4f89-906f-79dccc63e7f5","invariantUUID":"48504e0e-f3d3-411d-a52b-eda1b8fec073","name":"vLoadBalancer","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/toscaModel","category":"Application L4+","subCategory":"Load Balancer","resourceType":"VF","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jm0007"},{"uuid":"98c27d0b-9395-4f8b-87ab-e076cd1f627e","invariantUUID":"07e266fc-49ab-4cd7-8378-ca4676f1b9ec","name":"vFirewall","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/toscaModel","category":"Application L4+","subCategory":"Firewall","resourceType":"VF","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jm0007"},{"uuid":"a004b0d8-54bd-4ede-9311-c75dc608e9fd","invariantUUID":"023a3f0d-1161-45ff-b4cf-8918a8ccf3ad","name":"vPacketGen","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/toscaModel","category":"Application L4+","subCategory":"Web Server","resourceType":"VF","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jm0007"}] \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VF/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VF/.header deleted file mode 100644 index ff1f54a02..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VF/.header +++ /dev/null @@ -1 +0,0 @@ -{"Content-Length": "1099", "Set-Cookie": "JSESSIONID=1cmvc2wrt6df31psfrfvp7y670;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "a37e7d9c-effe-4354-94df-77774dd239d3"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VFC/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VFC/.file deleted file mode 100644 index a99aa44d2..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VFC/.file +++ /dev/null @@ -1 +0,0 @@ -[{"uuid":"a72ab48d-2d20-4c28-936a-94f45160d126","invariantUUID":"528a9e7e-1db8-44cd-a59a-f7f2833aaeb3","name":"SoftwareComponent","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/a72ab48d-2d20-4c28-936a-94f45160d126/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"2fa6c8ab-297f-4ec6-869f-893db6c84ac4","invariantUUID":"281696ab-4415-4dbb-8f4b-42ff25314466","name":"Root","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/2fa6c8ab-297f-4ec6-869f-893db6c84ac4/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"ba598da2-fd47-4701-b906-c03309ce52d7","invariantUUID":"cfdfb7b0-44fe-4b03-8efd-83533b4a3e94","name":"Compute","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/ba598da2-fd47-4701-b906-c03309ce52d7/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"c505b470-d39e-44f2-bb3a-26bc1b10bc84","invariantUUID":"7afee9e5-f666-4109-875c-89663f4c2676","name":"WebApplication","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/c505b470-d39e-44f2-bb3a-26bc1b10bc84/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"32c7f0ad-70b1-445f-9ec4-a54fdc054081","invariantUUID":"f0c9ed72-f92d-471b-8014-b810cb9d6c53","name":"Database","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/32c7f0ad-70b1-445f-9ec4-a54fdc054081/toscaModel","category":"Generic","subCategory":"Database","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"3187eb9b-dbba-492d-9137-e12db15226e7","invariantUUID":"ec55e51b-eb97-41ce-b2bf-bd7240d773a1","name":"WebServer","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/3187eb9b-dbba-492d-9137-e12db15226e7/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"59dc3d57-6609-4acd-b280-1297504b3fa3","invariantUUID":"3d5f7968-8432-47a7-9532-5833050636c9","name":"ObjectStorage","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/59dc3d57-6609-4acd-b280-1297504b3fa3/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"6000538b-f0f0-467b-bb8c-d6514d84529f","invariantUUID":"8c5a23e8-388d-4af8-8a5e-469081b2b8cd","name":"Runtime","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/6000538b-f0f0-467b-bb8c-d6514d84529f/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"92cb6435-1f95-42e1-b7a4-3418fa58f99c","invariantUUID":"fc537796-7a6a-4878-ad2c-ebae0b1031eb","name":"BlockStorage","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/92cb6435-1f95-42e1-b7a4-3418fa58f99c/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"7e41c605-b93c-4679-bc8e-83ac839e92c8","invariantUUID":"e09d62d9-c704-41be-a091-d0bf8d5c2c6b","name":"Application","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/7e41c605-b93c-4679-bc8e-83ac839e92c8/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"0dc498fd-2c4f-4e83-afbd-4404c7644234","invariantUUID":"55642129-7e02-49f3-827b-ef309ca80ff4","name":"GlobalCompute","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/0dc498fd-2c4f-4e83-afbd-4404c7644234/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"8d77ceb7-14a4-44f1-9a53-d92313ed56d0","invariantUUID":"f43bb2b2-db21-4739-8a64-f7743d54db15","name":"CinderVolume","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/8d77ceb7-14a4-44f1-9a53-d92313ed56d0/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"5a14f316-0f4e-4638-a0ad-71776a5014d2","invariantUUID":"40f6daa6-e352-4047-a115-9c4931ce0334","name":"volume","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/5a14f316-0f4e-4638-a0ad-71776a5014d2/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"2220d928-d281-4ba1-b44a-21b72c8c9872","invariantUUID":"7c398180-ea60-494b-b345-678391fbe8c2","name":"NovaServer","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/2220d928-d281-4ba1-b44a-21b72c8c9872/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"c9ed9d61-f3a5-4210-9af7-70a4f93b836a","invariantUUID":"ca7f356c-9f1c-4672-ade1-27a7f190064c","name":"AbstractSubstitute","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/c9ed9d61-f3a5-4210-9af7-70a4f93b836a/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"50ada44a-dd89-4e8d-850b-113019d2175b","invariantUUID":"6bb86fb2-e7f2-4ba6-aca8-80ccea04bc0a","name":"ContrailNetworkRules","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/50ada44a-dd89-4e8d-850b-113019d2175b/toscaModel","category":"Generic","subCategory":"Rules","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"bb37dd40-0e70-405f-81ca-c6ca22d3384f","invariantUUID":"3622a332-ce1c-406c-8212-966822eba394","name":"SecurityRules","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/bb37dd40-0e70-405f-81ca-c6ca22d3384f/toscaModel","category":"Generic","subCategory":"Rules","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"b876d972-31bf-427c-a557-0cc0befcfbec","invariantUUID":"12d9d4a3-f695-4055-b22b-edc60e738795","name":"ContrailAbstractSubstitute","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/b876d972-31bf-427c-a557-0cc0befcfbec/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"6baeb8d4-1d26-4530-a017-60d48dd38ace","invariantUUID":"015e424d-3482-4cd4-a047-1a4ca66588cc","name":"vnfConfiguration","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/6baeb8d4-1d26-4530-a017-60d48dd38ace/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"9f1402d1-b8cc-4b70-a45c-54d636e50086","invariantUUID":"a47fd09d-a910-4829-bb35-38741cefd2b9","name":"DBMS","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/9f1402d1-b8cc-4b70-a45c-54d636e50086/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"467ee1a0-34dd-46da-a198-a4ebe94c31b1","invariantUUID":"35b1df1f-4f9d-4bc6-9dbb-368e26c64243","name":"ContrailV2VirtualMachineInterface","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/467ee1a0-34dd-46da-a198-a4ebe94c31b1/toscaModel","category":"Generic","subCategory":"Network Elements","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"0d26b446-bd26-44ed-95a8-7ec302dd91aa","invariantUUID":"03c4eac9-4af8-4751-94fc-ce6095930c83","name":"ContrailCompute","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/0d26b446-bd26-44ed-95a8-7ec302dd91aa/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"83ccfaa3-a5e5-4567-88c4-aa5cb3a7b22e","invariantUUID":"1a67dbe6-ceca-4621-891e-3bb14f42943a","name":"multiFlavorVFC","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/83ccfaa3-a5e5-4567-88c4-aa5cb3a7b22e/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"14ddb890-fe68-4fee-a296-711d5a4b6e59","invariantUUID":"14184c8a-0c13-4873-a5c1-2586032db98c","name":"Ext Image File","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/14ddb890-fe68-4fee-a296-711d5a4b6e59/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"720552c5-e05d-4933-9882-8d7359af6e82","invariantUUID":"f43a5ef6-ddbf-4520-a6cb-9ca8b6b39ad6","name":"Ext Local Storage","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/720552c5-e05d-4933-9882-8d7359af6e82/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"6ba191b3-2315-44ec-85ac-d5351e7d4b81","invariantUUID":"0e0269f9-6e04-4234-bfd1-bfae52af7f83","name":"Ext Zte VDU","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/6ba191b3-2315-44ec-85ac-d5351e7d4b81/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"307cd1f4-bbc4-4675-b491-8e318231dc76","invariantUUID":"1fa025a5-c877-4221-9fbf-1b117fb66631","name":"LoadBalancer","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/307cd1f4-bbc4-4675-b491-8e318231dc76/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"949e82db-98ee-47d0-a5d2-21cb06c4a091","invariantUUID":"348d3957-11fd-4194-8835-1b112664b78b","name":"NSD","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/949e82db-98ee-47d0-a5d2-21cb06c4a091/toscaModel","category":"Generic","subCategory":"Network Elements","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"f54c8dde-2dc9-4f06-8bd6-1679d0b12b0c","invariantUUID":"4644b678-6680-432a-9d54-b209cc8264fe","name":"VDU","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/f54c8dde-2dc9-4f06-8bd6-1679d0b12b0c/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"cca286e8-5ac0-451c-b874-8cc307181e10","invariantUUID":"b4ad5952-aa22-4645-ac57-72d55c8833be","name":"Vloadbalancer.nodes.heat.vdns","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/cca286e8-5ac0-451c-b874-8cc307181e10/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"876f7eff-46e3-4981-8717-597c01310714","invariantUUID":"7c3316b0-2090-4a2f-a21b-63e3c9dd3bf8","name":"AllottedResource","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/876f7eff-46e3-4981-8717-597c01310714/toscaModel","category":"Allotted Resource","subCategory":"Allotted Resource","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"c25db6d1-2653-45d9-8062-440f962c83ba","invariantUUID":"86aeffce-6d21-4bc0-84c5-e4fd3f7acdaa","name":"VDU VirtualStorage","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/c25db6d1-2653-45d9-8062-440f962c83ba/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"68bb176c-8d5f-4d27-8407-fd8d9e5910eb","invariantUUID":"1a12347c-6166-4d21-9861-b2c432722a23","name":"Vfirewall.nodes.heat.vfw","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/68bb176c-8d5f-4d27-8407-fd8d9e5910eb/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d","invariantUUID":"3ff44c1d-0384-4501-8e33-dd3000799378","name":"Vloadbalancer.nodes.heat.vlb","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"8fb4db8b-1d1f-4369-8611-0375d86f0051","invariantUUID":"05e3e25f-b671-433f-8ea6-835c198c15ae","name":"Vloadbalancer.nodes.heat.vpg","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/8fb4db8b-1d1f-4369-8611-0375d86f0051/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"c8a01686-2762-483c-98ad-a66606b9947f","invariantUUID":"86769df9-139b-489f-949d-05efb7f0ed6a","name":"Vpacketgen.nodes.heat.vpg","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/c8a01686-2762-483c-98ad-a66606b9947f/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"5a136c51-055f-46b7-90e3-3d99d1da3d10","invariantUUID":"a6c4eda9-c71b-4435-ad73-51f82946df1b","name":"ContrailV2NetworkRules","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/5a136c51-055f-46b7-90e3-3d99d1da3d10/toscaModel","category":"Generic","subCategory":"Rules","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"163dded5-44a3-42e3-b373-c594412eeac6","invariantUUID":"1550f69b-12cb-44ad-81b3-de6ec606a566","name":"VDU Compute","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/163dded5-44a3-42e3-b373-c594412eeac6/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"b339e576-e433-4be4-8a43-258f629c4e79","invariantUUID":"d66c0bce-d7e1-41ad-bdaf-468d442d0543","name":"Vfirewall.nodes.heat.vsn","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/b339e576-e433-4be4-8a43-258f629c4e79/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"}] \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VFC/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VFC/.header deleted file mode 100644 index 6a280d972..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VFC/.header +++ /dev/null @@ -1 +0,0 @@ -{"Transfer-Encoding": "chunked", "Set-Cookie": "JSESSIONID=158qxkdtdobkd1umr3ikkgrmlx;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "e2ddb3c8-994f-47df-b4dc-097d4fb55c08"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc_proxy.py b/src/test/resources/http-cache/sdc_proxy.py old mode 100644 new mode 100755 index 301e7af9d..45dac4133 --- a/src/test/resources/http-cache/sdc_proxy.py +++ b/src/test/resources/http-cache/sdc_proxy.py @@ -91,6 +91,9 @@ class Proxy(SimpleHTTPServer.SimpleHTTPRequestHandler): self.check_credentials() cached_file = '%s/%s' % (CACHE_ROOT, self.path,) + print("Cached file name before escaping : %s" % cached_file) + cached_file = cached_file.replace('<','<').replace('>','>').replace('?','?').replace('*','*').replace('\\','*').replace(':',':').replace('|','|') + print("Cached file name after escaping (used for cache storage) : %s" % cached_file) cached_file_content = "%s/.file" % (cached_file,) cached_file_header = "%s/.header" % (cached_file,) @@ -100,7 +103,7 @@ class Proxy(SimpleHTTPServer.SimpleHTTPRequestHandler): return "404 Not found" if not _file_available: - print("Request for not cached file : %s" % (cached_file,)) + print("SDC Request for data currently not present in cache: %s" % (cached_file,)) url = '%s%s' % (SDC_HOST, self.path) response = requests.get(url, auth=SDC_AUTH, headers=SDC_HEADERS, stream=True) diff --git a/src/test/resources/https/https-test.properties b/src/test/resources/https/https-test.properties index 82cd999c3..01b6ff1df 100644 --- a/src/test/resources/https/https-test.properties +++ b/src/test/resources/https/https-test.properties @@ -62,7 +62,6 @@ server.http-to-https-redirection.port=10080 server.contextPath=/ #Modified engine-rest applicationpath -spring.jersey.application-path=/restservices/clds/v1 spring.profiles.active=clamp-default,clamp-spring-authentication #The max number of active threads in this pool -- cgit 1.2.3-korg From 57867d108c2f4db22379f5148c9dbab85a29662f Mon Sep 17 00:00:00 2001 From: "Determe, Sebastien (sd378r)" Date: Thu, 15 Feb 2018 16:04:12 +0100 Subject: Code refactoring Code refactoring, mainly Classes/Methods name renaming Issue-ID: CLAMP-85 Change-Id: I12bd190576e324ed33f057dc1a4ad32c16fcb6c2 Signed-off-by: Determe, Sebastien (sd378r) --- pom.xml | 4 + src/main/java/org/onap/clamp/clds/Application.java | 4 +- .../clamp/clds/client/DcaeDispatcherServices.java | 4 +- .../clamp/clds/client/DcaeInventoryServices.java | 8 +- .../clamp/clds/client/HolmesPolicyDelegate.java | 8 +- .../clds/client/HolmesPolicyDeleteDelegate.java | 4 +- .../clds/client/OperationalPolicyDelegate.java | 10 +- .../client/OperationalPolicyDeleteDelegate.java | 6 +- .../onap/clamp/clds/client/SdcSendReqDelegate.java | 15 +- .../onap/clamp/clds/client/TcaPolicyDelegate.java | 8 +- .../clamp/clds/client/TcaPolicyDeleteDelegate.java | 4 +- .../client/req/policy/OperationalPolicyReq.java | 22 +- .../clamp/clds/client/req/policy/PolicyClient.java | 6 +- .../clds/client/req/sdc/SdcCatalogServices.java | 85 +++-- .../org/onap/clamp/clds/client/req/sdc/SdcReq.java | 227 ------------- .../clamp/clds/client/req/sdc/SdcRequests.java | 227 +++++++++++++ .../clds/client/req/tca/TcaRequestFormatter.java | 18 +- .../clamp/clds/config/CldsReferenceProperties.java | 110 +++++++ .../org/onap/clamp/clds/model/CldsSdcArtifact.java | 112 ------- .../org/onap/clamp/clds/model/CldsSdcResource.java | 166 ---------- .../clamp/clds/model/CldsSdcResourceBasicInfo.java | 196 ------------ .../clamp/clds/model/CldsSdcServiceDetail.java | 142 --------- .../onap/clamp/clds/model/CldsSdcServiceInfo.java | 184 ----------- .../clds/model/prop/AbstractModelElement.java | 242 -------------- .../org/onap/clamp/clds/model/prop/Global.java | 131 -------- .../org/onap/clamp/clds/model/prop/Holmes.java | 71 ----- .../org/onap/clamp/clds/model/prop/ModelBpmn.java | 171 ---------- .../onap/clamp/clds/model/prop/ModelBpmnEntry.java | 102 ------ .../clamp/clds/model/prop/ModelProperties.java | 350 --------------------- .../org/onap/clamp/clds/model/prop/Policy.java | 90 ------ .../onap/clamp/clds/model/prop/PolicyChain.java | 114 ------- .../org/onap/clamp/clds/model/prop/PolicyItem.java | 189 ----------- .../onap/clamp/clds/model/prop/ResourceGroup.java | 114 ------- .../clds/model/prop/ServiceConfiguration.java | 181 ----------- .../java/org/onap/clamp/clds/model/prop/Tca.java | 67 ---- .../org/onap/clamp/clds/model/prop/TcaItem.java | 115 ------- .../onap/clamp/clds/model/prop/TcaThreshold.java | 96 ------ .../model/properties/AbstractModelElement.java | 242 ++++++++++++++ .../onap/clamp/clds/model/properties/Global.java | 131 ++++++++ .../onap/clamp/clds/model/properties/Holmes.java | 71 +++++ .../clamp/clds/model/properties/ModelBpmn.java | 171 ++++++++++ .../clds/model/properties/ModelBpmnEntry.java | 102 ++++++ .../clds/model/properties/ModelProperties.java | 350 +++++++++++++++++++++ .../onap/clamp/clds/model/properties/Policy.java | 90 ++++++ .../clamp/clds/model/properties/PolicyChain.java | 114 +++++++ .../clamp/clds/model/properties/PolicyItem.java | 189 +++++++++++ .../clamp/clds/model/properties/ResourceGroup.java | 114 +++++++ .../model/properties/ServiceConfiguration.java | 181 +++++++++++ .../org/onap/clamp/clds/model/properties/Tca.java | 67 ++++ .../onap/clamp/clds/model/properties/TcaItem.java | 115 +++++++ .../clamp/clds/model/properties/TcaThreshold.java | 96 ++++++ .../org/onap/clamp/clds/model/refprop/RefProp.java | 110 ------- .../org/onap/clamp/clds/model/sdc/SdcArtifact.java | 112 +++++++ .../org/onap/clamp/clds/model/sdc/SdcResource.java | 166 ++++++++++ .../clamp/clds/model/sdc/SdcResourceBasicInfo.java | 196 ++++++++++++ .../clamp/clds/model/sdc/SdcServiceDetail.java | 142 +++++++++ .../onap/clamp/clds/model/sdc/SdcServiceInfo.java | 184 +++++++++++ .../org/onap/clamp/clds/service/CldsService.java | 34 +- .../java/org/onap/clamp/clds/AbstractItCase.java | 4 +- .../clds/it/CldsReferencePropertiesItCase.java | 63 ++++ .../clamp/clds/it/HolmesPolicyDelegateItCase.java | 4 +- .../clamp/clds/it/OperationPolicyReqItCase.java | 6 +- .../org/onap/clamp/clds/it/PolicyClientItCase.java | 8 +- .../java/org/onap/clamp/clds/it/RefPropItCase.java | 63 ---- .../clamp/clds/it/SdcCatalogServicesItCase.java | 54 ++-- .../java/org/onap/clamp/clds/it/SdcReqItCase.java | 8 +- .../clamp/clds/it/TcaRequestFormatterItCase.java | 2 +- .../clamp/clds/model/prop/CustomModelElement.java | 4 + .../clds/model/prop/CustomModelElementTest.java | 1 + .../clamp/clds/model/prop/ModelPropertiesTest.java | 4 + src/test/resources/http-cache/start_http_cache.sh | 2 +- 71 files changed, 3407 insertions(+), 3396 deletions(-) delete mode 100644 src/main/java/org/onap/clamp/clds/client/req/sdc/SdcReq.java create mode 100644 src/main/java/org/onap/clamp/clds/client/req/sdc/SdcRequests.java create mode 100644 src/main/java/org/onap/clamp/clds/config/CldsReferenceProperties.java delete mode 100644 src/main/java/org/onap/clamp/clds/model/CldsSdcArtifact.java delete mode 100644 src/main/java/org/onap/clamp/clds/model/CldsSdcResource.java delete mode 100644 src/main/java/org/onap/clamp/clds/model/CldsSdcResourceBasicInfo.java delete mode 100644 src/main/java/org/onap/clamp/clds/model/CldsSdcServiceDetail.java delete mode 100644 src/main/java/org/onap/clamp/clds/model/CldsSdcServiceInfo.java delete mode 100644 src/main/java/org/onap/clamp/clds/model/prop/AbstractModelElement.java delete mode 100644 src/main/java/org/onap/clamp/clds/model/prop/Global.java delete mode 100644 src/main/java/org/onap/clamp/clds/model/prop/Holmes.java delete mode 100644 src/main/java/org/onap/clamp/clds/model/prop/ModelBpmn.java delete mode 100644 src/main/java/org/onap/clamp/clds/model/prop/ModelBpmnEntry.java delete mode 100644 src/main/java/org/onap/clamp/clds/model/prop/ModelProperties.java delete mode 100644 src/main/java/org/onap/clamp/clds/model/prop/Policy.java delete mode 100644 src/main/java/org/onap/clamp/clds/model/prop/PolicyChain.java delete mode 100644 src/main/java/org/onap/clamp/clds/model/prop/PolicyItem.java delete mode 100644 src/main/java/org/onap/clamp/clds/model/prop/ResourceGroup.java delete mode 100644 src/main/java/org/onap/clamp/clds/model/prop/ServiceConfiguration.java delete mode 100644 src/main/java/org/onap/clamp/clds/model/prop/Tca.java delete mode 100644 src/main/java/org/onap/clamp/clds/model/prop/TcaItem.java delete mode 100644 src/main/java/org/onap/clamp/clds/model/prop/TcaThreshold.java create mode 100644 src/main/java/org/onap/clamp/clds/model/properties/AbstractModelElement.java create mode 100644 src/main/java/org/onap/clamp/clds/model/properties/Global.java create mode 100644 src/main/java/org/onap/clamp/clds/model/properties/Holmes.java create mode 100644 src/main/java/org/onap/clamp/clds/model/properties/ModelBpmn.java create mode 100644 src/main/java/org/onap/clamp/clds/model/properties/ModelBpmnEntry.java create mode 100644 src/main/java/org/onap/clamp/clds/model/properties/ModelProperties.java create mode 100644 src/main/java/org/onap/clamp/clds/model/properties/Policy.java create mode 100644 src/main/java/org/onap/clamp/clds/model/properties/PolicyChain.java create mode 100644 src/main/java/org/onap/clamp/clds/model/properties/PolicyItem.java create mode 100644 src/main/java/org/onap/clamp/clds/model/properties/ResourceGroup.java create mode 100644 src/main/java/org/onap/clamp/clds/model/properties/ServiceConfiguration.java create mode 100644 src/main/java/org/onap/clamp/clds/model/properties/Tca.java create mode 100644 src/main/java/org/onap/clamp/clds/model/properties/TcaItem.java create mode 100644 src/main/java/org/onap/clamp/clds/model/properties/TcaThreshold.java delete mode 100644 src/main/java/org/onap/clamp/clds/model/refprop/RefProp.java create mode 100644 src/main/java/org/onap/clamp/clds/model/sdc/SdcArtifact.java create mode 100644 src/main/java/org/onap/clamp/clds/model/sdc/SdcResource.java create mode 100644 src/main/java/org/onap/clamp/clds/model/sdc/SdcResourceBasicInfo.java create mode 100644 src/main/java/org/onap/clamp/clds/model/sdc/SdcServiceDetail.java create mode 100644 src/main/java/org/onap/clamp/clds/model/sdc/SdcServiceInfo.java create mode 100644 src/test/java/org/onap/clamp/clds/it/CldsReferencePropertiesItCase.java delete mode 100644 src/test/java/org/onap/clamp/clds/it/RefPropItCase.java (limited to 'src/test/resources/http-cache') diff --git a/pom.xml b/pom.xml index b0890a57f..3a482dd0d 100644 --- a/pom.xml +++ b/pom.xml @@ -378,6 +378,10 @@ org.mariadb.jdbc mariadb-java-client + + com.att.nsa + dmaapClient + diff --git a/src/main/java/org/onap/clamp/clds/Application.java b/src/main/java/org/onap/clamp/clds/Application.java index 281a87ca5..9d057b583 100644 --- a/src/main/java/org/onap/clamp/clds/Application.java +++ b/src/main/java/org/onap/clamp/clds/Application.java @@ -28,8 +28,8 @@ import com.att.eelf.configuration.EELFManager; import org.apache.camel.component.servlet.CamelHttpTransportServlet; import org.apache.catalina.connector.Connector; -import org.onap.clamp.clds.model.prop.Holmes; -import org.onap.clamp.clds.model.prop.ModelProperties; +import org.onap.clamp.clds.model.properties.Holmes; +import org.onap.clamp.clds.model.properties.ModelProperties; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.SpringApplication; import org.springframework.boot.actuate.autoconfigure.ManagementWebSecurityAutoConfiguration; diff --git a/src/main/java/org/onap/clamp/clds/client/DcaeDispatcherServices.java b/src/main/java/org/onap/clamp/clds/client/DcaeDispatcherServices.java index 6053a0de9..3c8649cd3 100644 --- a/src/main/java/org/onap/clamp/clds/client/DcaeDispatcherServices.java +++ b/src/main/java/org/onap/clamp/clds/client/DcaeDispatcherServices.java @@ -31,8 +31,8 @@ import java.util.Date; import org.json.simple.JSONObject; import org.json.simple.parser.JSONParser; +import org.onap.clamp.clds.config.CldsReferenceProperties; import org.onap.clamp.clds.exception.DcaeDeploymentException; -import org.onap.clamp.clds.model.refprop.RefProp; import org.onap.clamp.clds.util.LoggingUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @@ -47,7 +47,7 @@ public class DcaeDispatcherServices { protected static final EELFLogger logger = EELFManager.getInstance().getLogger(DcaeDispatcherServices.class); protected static final EELFLogger metricsLogger = EELFManager.getInstance().getMetricsLogger(); @Autowired - private RefProp refProp; + private CldsReferenceProperties refProp; private static final String STATUS_URL_LOG = "Status URL extracted: "; private static final String DCAE_URL_PREFIX = "/dcae-deployments/"; private static final String DCAE_URL_PROPERTY_NAME = "DCAE_DISPATCHER_URL"; diff --git a/src/main/java/org/onap/clamp/clds/client/DcaeInventoryServices.java b/src/main/java/org/onap/clamp/clds/client/DcaeInventoryServices.java index 4dfe089f9..1abd88985 100644 --- a/src/main/java/org/onap/clamp/clds/client/DcaeInventoryServices.java +++ b/src/main/java/org/onap/clamp/clds/client/DcaeInventoryServices.java @@ -41,13 +41,13 @@ import org.json.simple.JSONArray; import org.json.simple.JSONObject; import org.json.simple.parser.JSONParser; import org.json.simple.parser.ParseException; +import org.onap.clamp.clds.config.CldsReferenceProperties; import org.onap.clamp.clds.dao.CldsDao; import org.onap.clamp.clds.model.CldsEvent; import org.onap.clamp.clds.model.CldsModel; import org.onap.clamp.clds.model.DcaeEvent; -import org.onap.clamp.clds.model.prop.Global; -import org.onap.clamp.clds.model.prop.ModelProperties; -import org.onap.clamp.clds.model.refprop.RefProp; +import org.onap.clamp.clds.model.properties.Global; +import org.onap.clamp.clds.model.properties.ModelProperties; import org.onap.clamp.clds.util.LoggingUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @@ -63,7 +63,7 @@ public class DcaeInventoryServices { protected static final EELFLogger metricsLogger = EELFManager.getInstance().getMetricsLogger(); private static final String DCAE_INVENTORY_URL = "DCAE_INVENTORY_URL"; @Autowired - private RefProp refProp; + private CldsReferenceProperties refProp; @Autowired private CldsDao cldsDao; diff --git a/src/main/java/org/onap/clamp/clds/client/HolmesPolicyDelegate.java b/src/main/java/org/onap/clamp/clds/client/HolmesPolicyDelegate.java index 34655986d..4e165e141 100644 --- a/src/main/java/org/onap/clamp/clds/client/HolmesPolicyDelegate.java +++ b/src/main/java/org/onap/clamp/clds/client/HolmesPolicyDelegate.java @@ -31,9 +31,9 @@ import java.util.UUID; import org.apache.camel.Exchange; import org.apache.camel.Handler; import org.onap.clamp.clds.client.req.policy.PolicyClient; -import org.onap.clamp.clds.model.prop.Holmes; -import org.onap.clamp.clds.model.prop.ModelProperties; -import org.onap.clamp.clds.model.refprop.RefProp; +import org.onap.clamp.clds.config.CldsReferenceProperties; +import org.onap.clamp.clds.model.properties.Holmes; +import org.onap.clamp.clds.model.properties.ModelProperties; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @@ -48,7 +48,7 @@ public class HolmesPolicyDelegate { @Autowired private PolicyClient policyClient; @Autowired - private RefProp refProp; + private CldsReferenceProperties refProp; /** * Perform activity. Send Holmes info to policy api. diff --git a/src/main/java/org/onap/clamp/clds/client/HolmesPolicyDeleteDelegate.java b/src/main/java/org/onap/clamp/clds/client/HolmesPolicyDeleteDelegate.java index 28da14851..9075ea62a 100644 --- a/src/main/java/org/onap/clamp/clds/client/HolmesPolicyDeleteDelegate.java +++ b/src/main/java/org/onap/clamp/clds/client/HolmesPolicyDeleteDelegate.java @@ -29,8 +29,8 @@ import com.att.eelf.configuration.EELFManager; import org.apache.camel.Exchange; import org.apache.camel.Handler; import org.onap.clamp.clds.client.req.policy.PolicyClient; -import org.onap.clamp.clds.model.prop.Holmes; -import org.onap.clamp.clds.model.prop.ModelProperties; +import org.onap.clamp.clds.model.properties.Holmes; +import org.onap.clamp.clds.model.properties.ModelProperties; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; diff --git a/src/main/java/org/onap/clamp/clds/client/OperationalPolicyDelegate.java b/src/main/java/org/onap/clamp/clds/client/OperationalPolicyDelegate.java index 77d7680bb..ec83db9de 100644 --- a/src/main/java/org/onap/clamp/clds/client/OperationalPolicyDelegate.java +++ b/src/main/java/org/onap/clamp/clds/client/OperationalPolicyDelegate.java @@ -33,10 +33,10 @@ import org.apache.camel.Exchange; import org.apache.camel.Handler; import org.onap.clamp.clds.client.req.policy.OperationalPolicyReq; import org.onap.clamp.clds.client.req.policy.PolicyClient; -import org.onap.clamp.clds.model.prop.ModelProperties; -import org.onap.clamp.clds.model.prop.Policy; -import org.onap.clamp.clds.model.prop.PolicyChain; -import org.onap.clamp.clds.model.refprop.RefProp; +import org.onap.clamp.clds.config.CldsReferenceProperties; +import org.onap.clamp.clds.model.properties.ModelProperties; +import org.onap.clamp.clds.model.properties.Policy; +import org.onap.clamp.clds.model.properties.PolicyChain; import org.onap.clamp.clds.util.LoggingUtils; import org.onap.policy.api.AttributeType; import org.onap.policy.controlloop.policy.builder.BuilderException; @@ -61,7 +61,7 @@ public class OperationalPolicyDelegate { * Automatically injected by Spring, define in CldsConfiguration as a bean. */ @Autowired - private RefProp refProp; + private CldsReferenceProperties refProp; /** * Perform activity. Send Operational Policy info to policy api. diff --git a/src/main/java/org/onap/clamp/clds/client/OperationalPolicyDeleteDelegate.java b/src/main/java/org/onap/clamp/clds/client/OperationalPolicyDeleteDelegate.java index 4dd204080..862d68a7b 100644 --- a/src/main/java/org/onap/clamp/clds/client/OperationalPolicyDeleteDelegate.java +++ b/src/main/java/org/onap/clamp/clds/client/OperationalPolicyDeleteDelegate.java @@ -29,9 +29,9 @@ import com.att.eelf.configuration.EELFManager; import org.apache.camel.Exchange; import org.apache.camel.Handler; import org.onap.clamp.clds.client.req.policy.PolicyClient; -import org.onap.clamp.clds.model.prop.ModelProperties; -import org.onap.clamp.clds.model.prop.Policy; -import org.onap.clamp.clds.model.prop.PolicyChain; +import org.onap.clamp.clds.model.properties.ModelProperties; +import org.onap.clamp.clds.model.properties.Policy; +import org.onap.clamp.clds.model.properties.PolicyChain; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; diff --git a/src/main/java/org/onap/clamp/clds/client/SdcSendReqDelegate.java b/src/main/java/org/onap/clamp/clds/client/SdcSendReqDelegate.java index e21bfce41..438ea4727 100644 --- a/src/main/java/org/onap/clamp/clds/client/SdcSendReqDelegate.java +++ b/src/main/java/org/onap/clamp/clds/client/SdcSendReqDelegate.java @@ -34,11 +34,11 @@ import org.apache.camel.Exchange; import org.apache.camel.Handler; import org.apache.commons.codec.DecoderException; import org.onap.clamp.clds.client.req.sdc.SdcCatalogServices; -import org.onap.clamp.clds.client.req.sdc.SdcReq; +import org.onap.clamp.clds.client.req.sdc.SdcRequests; +import org.onap.clamp.clds.config.CldsReferenceProperties; import org.onap.clamp.clds.model.DcaeEvent; -import org.onap.clamp.clds.model.prop.Global; -import org.onap.clamp.clds.model.prop.ModelProperties; -import org.onap.clamp.clds.model.refprop.RefProp; +import org.onap.clamp.clds.model.properties.Global; +import org.onap.clamp.clds.model.properties.ModelProperties; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @@ -53,9 +53,9 @@ public class SdcSendReqDelegate { @Autowired private SdcCatalogServices sdcCatalogServices; @Autowired - private SdcReq sdcReq; + private SdcRequests sdcReq; @Autowired - private RefProp refProp; + private CldsReferenceProperties refProp; /** * Perform activity. Send to sdc proxy. @@ -72,7 +72,6 @@ public class SdcSendReqDelegate { @Handler public void execute(Exchange camelExchange) throws GeneralSecurityException, DecoderException, IOException { String controlName = (String) camelExchange.getProperty("controlName"); - String baseUrl = refProp.getStringValue("sdc.serviceUrl"); String artifactLabel = sdcReq .normalizeResourceInstanceName(refProp.getStringValue("sdc.artifactLabel") + "-" + controlName); String locationArtifactLabel = sdcReq @@ -98,7 +97,7 @@ public class SdcSendReqDelegate { String serviceInvariantUUID = globalProps.getService(); camelExchange.setProperty("serviceInvariantUUID", serviceInvariantUUID); } - List sdcReqUrlsList = sdcReq.getSdcReqUrlsList(prop, baseUrl); + List sdcReqUrlsList = sdcReq.getSdcReqUrlsList(prop); String sdcLocationsPayload = sdcReq.formatSdcLocationsReq(prop, artifactName); String locationArtifactName = (String) camelExchange.getProperty("controlName") + "-location.json"; String formattedSdcLocationReq = sdcReq.formatSdcReq(sdcLocationsPayload, locationArtifactName, diff --git a/src/main/java/org/onap/clamp/clds/client/TcaPolicyDelegate.java b/src/main/java/org/onap/clamp/clds/client/TcaPolicyDelegate.java index 2657a03f9..55fe2c571 100644 --- a/src/main/java/org/onap/clamp/clds/client/TcaPolicyDelegate.java +++ b/src/main/java/org/onap/clamp/clds/client/TcaPolicyDelegate.java @@ -32,9 +32,9 @@ import org.apache.camel.Exchange; import org.apache.camel.Handler; import org.onap.clamp.clds.client.req.policy.PolicyClient; import org.onap.clamp.clds.client.req.tca.TcaRequestFormatter; -import org.onap.clamp.clds.model.prop.ModelProperties; -import org.onap.clamp.clds.model.prop.Tca; -import org.onap.clamp.clds.model.refprop.RefProp; +import org.onap.clamp.clds.config.CldsReferenceProperties; +import org.onap.clamp.clds.model.properties.ModelProperties; +import org.onap.clamp.clds.model.properties.Tca; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @@ -47,7 +47,7 @@ public class TcaPolicyDelegate { protected static final EELFLogger logger = EELFManager.getInstance().getLogger(TcaPolicyDelegate.class); protected static final EELFLogger metricsLogger = EELFManager.getInstance().getMetricsLogger(); @Autowired - private RefProp refProp; + private CldsReferenceProperties refProp; @Autowired private PolicyClient policyClient; diff --git a/src/main/java/org/onap/clamp/clds/client/TcaPolicyDeleteDelegate.java b/src/main/java/org/onap/clamp/clds/client/TcaPolicyDeleteDelegate.java index c2aa303a5..c38d30075 100644 --- a/src/main/java/org/onap/clamp/clds/client/TcaPolicyDeleteDelegate.java +++ b/src/main/java/org/onap/clamp/clds/client/TcaPolicyDeleteDelegate.java @@ -29,8 +29,8 @@ import com.att.eelf.configuration.EELFManager; import org.apache.camel.Exchange; import org.apache.camel.Handler; import org.onap.clamp.clds.client.req.policy.PolicyClient; -import org.onap.clamp.clds.model.prop.ModelProperties; -import org.onap.clamp.clds.model.prop.Tca; +import org.onap.clamp.clds.model.properties.ModelProperties; +import org.onap.clamp.clds.model.properties.Tca; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; diff --git a/src/main/java/org/onap/clamp/clds/client/req/policy/OperationalPolicyReq.java b/src/main/java/org/onap/clamp/clds/client/req/policy/OperationalPolicyReq.java index 8753a9fd3..434da4b65 100644 --- a/src/main/java/org/onap/clamp/clds/client/req/policy/OperationalPolicyReq.java +++ b/src/main/java/org/onap/clamp/clds/client/req/policy/OperationalPolicyReq.java @@ -39,12 +39,12 @@ import java.util.Map; import javax.ws.rs.BadRequestException; -import org.onap.clamp.clds.model.prop.Global; -import org.onap.clamp.clds.model.prop.ModelProperties; -import org.onap.clamp.clds.model.prop.PolicyChain; -import org.onap.clamp.clds.model.prop.PolicyItem; -import org.onap.clamp.clds.model.prop.Tca; -import org.onap.clamp.clds.model.refprop.RefProp; +import org.onap.clamp.clds.config.CldsReferenceProperties; +import org.onap.clamp.clds.model.properties.Global; +import org.onap.clamp.clds.model.properties.ModelProperties; +import org.onap.clamp.clds.model.properties.PolicyChain; +import org.onap.clamp.clds.model.properties.PolicyItem; +import org.onap.clamp.clds.model.properties.Tca; import org.onap.policy.api.AttributeType; import org.onap.policy.controlloop.policy.OperationsAccumulateParams; import org.onap.policy.controlloop.policy.Policy; @@ -80,7 +80,7 @@ public class OperationalPolicyReq { * @throws BuilderException * @throws UnsupportedEncodingException */ - public static Map> formatAttributes(RefProp refProp, ModelProperties prop, + public static Map> formatAttributes(CldsReferenceProperties refProp, ModelProperties prop, String modelElementId, PolicyChain policyChain) throws BuilderException, UnsupportedEncodingException { Global global = prop.getGlobal(); prop.setCurrentModelElementId(modelElementId); @@ -163,7 +163,7 @@ public class OperationalPolicyReq { * @throws BuilderException * @throws UnsupportedEncodingException */ - protected static String formatOpenLoopYaml(RefProp refProp, ModelProperties prop, String modelElementId, + protected static String formatOpenLoopYaml(CldsReferenceProperties refProp, ModelProperties prop, String modelElementId, PolicyChain policyChain) throws BuilderException, UnsupportedEncodingException { // get property objects Global global = prop.getGlobal(); @@ -193,7 +193,7 @@ public class OperationalPolicyReq { * @throws BuilderException * @throws UnsupportedEncodingException */ - protected static String formatYaml(RefProp refProp, ModelProperties prop, String modelElementId, + protected static String formatYaml(CldsReferenceProperties refProp, ModelProperties prop, String modelElementId, PolicyChain policyChain) throws BuilderException, UnsupportedEncodingException { // get property objects Global global = prop.getGlobal(); @@ -251,7 +251,7 @@ public class OperationalPolicyReq { * @throws BuilderException * @throws UnsupportedEncodingException */ - protected static String formateNodeBYaml(RefProp refProp, ModelProperties prop, String modelElementId, + protected static String formateNodeBYaml(CldsReferenceProperties refProp, ModelProperties prop, String modelElementId, PolicyChain policyChain) throws BuilderException, UnsupportedEncodingException { // get property objects Global global = prop.getGlobal(); @@ -329,7 +329,7 @@ public class OperationalPolicyReq { * @param inOrigList * @return */ - private static List addAOTSActorRecipe(RefProp refProp, String service, List inOrigList) { + private static List addAOTSActorRecipe(CldsReferenceProperties refProp, String service, List inOrigList) { List outList = new ArrayList<>(); try { PolicyItem policyItem = inOrigList.get(0); diff --git a/src/main/java/org/onap/clamp/clds/client/req/policy/PolicyClient.java b/src/main/java/org/onap/clamp/clds/client/req/policy/PolicyClient.java index 046003309..ee78b45f8 100644 --- a/src/main/java/org/onap/clamp/clds/client/req/policy/PolicyClient.java +++ b/src/main/java/org/onap/clamp/clds/client/req/policy/PolicyClient.java @@ -37,9 +37,9 @@ import java.util.UUID; import javax.ws.rs.BadRequestException; +import org.onap.clamp.clds.config.CldsReferenceProperties; import org.onap.clamp.clds.exception.policy.PolicyClientException; -import org.onap.clamp.clds.model.prop.ModelProperties; -import org.onap.clamp.clds.model.refprop.RefProp; +import org.onap.clamp.clds.model.properties.ModelProperties; import org.onap.clamp.clds.util.LoggingUtils; import org.onap.policy.api.AttributeType; import org.onap.policy.api.ConfigRequestParameters; @@ -76,7 +76,7 @@ public class PolicyClient { @Autowired protected ApplicationContext appContext; @Autowired - protected RefProp refProp; + protected CldsReferenceProperties refProp; /** * Perform BRMS policy type. diff --git a/src/main/java/org/onap/clamp/clds/client/req/sdc/SdcCatalogServices.java b/src/main/java/org/onap/clamp/clds/client/req/sdc/SdcCatalogServices.java index 45dbf81fe..299ec1e9e 100644 --- a/src/main/java/org/onap/clamp/clds/client/req/sdc/SdcCatalogServices.java +++ b/src/main/java/org/onap/clamp/clds/client/req/sdc/SdcCatalogServices.java @@ -58,20 +58,20 @@ import org.apache.commons.csv.CSVRecord; import org.apache.commons.io.IOUtils; import org.apache.commons.lang3.StringUtils; import org.apache.http.HttpHeaders; +import org.onap.clamp.clds.config.CldsReferenceProperties; import org.onap.clamp.clds.exception.SdcCommunicationException; import org.onap.clamp.clds.model.CldsAlarmCondition; -import org.onap.clamp.clds.model.CldsSdcArtifact; -import org.onap.clamp.clds.model.CldsSdcResource; -import org.onap.clamp.clds.model.CldsSdcResourceBasicInfo; -import org.onap.clamp.clds.model.CldsSdcServiceDetail; -import org.onap.clamp.clds.model.CldsSdcServiceInfo; import org.onap.clamp.clds.model.CldsServiceData; import org.onap.clamp.clds.model.CldsVfData; import org.onap.clamp.clds.model.CldsVfKPIData; import org.onap.clamp.clds.model.CldsVfcData; -import org.onap.clamp.clds.model.prop.Global; -import org.onap.clamp.clds.model.prop.ModelProperties; -import org.onap.clamp.clds.model.refprop.RefProp; +import org.onap.clamp.clds.model.properties.Global; +import org.onap.clamp.clds.model.properties.ModelProperties; +import org.onap.clamp.clds.model.sdc.SdcArtifact; +import org.onap.clamp.clds.model.sdc.SdcResource; +import org.onap.clamp.clds.model.sdc.SdcResourceBasicInfo; +import org.onap.clamp.clds.model.sdc.SdcServiceDetail; +import org.onap.clamp.clds.model.sdc.SdcServiceInfo; import org.onap.clamp.clds.util.CryptoUtils; import org.onap.clamp.clds.util.LoggingUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -93,7 +93,7 @@ public class SdcCatalogServices { private static final String SDC_INSTANCE_ID_CLAMP = "CLAMP-Tool"; private static final String RESOURCE_URL_PREFIX = "resources"; @Autowired - private RefProp refProp; + private CldsReferenceProperties refProp; /** * Return SDC id and pw as a HTTP Basic Auth string (for example: Basic @@ -165,8 +165,8 @@ public class SdcCatalogServices { * A list of CldsSdcServiceInfo * @return A list of CldsSdcServiceInfo without duplicate service UUID */ - public List removeDuplicateServices(List rawCldsSdcServiceList) { - List cldsSdcServiceInfoList = null; + public List removeDuplicateServices(List rawCldsSdcServiceList) { + List cldsSdcServiceInfoList = null; if (rawCldsSdcServiceList != null && !rawCldsSdcServiceList.isEmpty()) { // sort list Collections.sort(rawCldsSdcServiceList); @@ -176,7 +176,7 @@ public class SdcCatalogServices { for (int i = 1; i < rawCldsSdcServiceList.size(); i++) { // compare name with previous - if not equal, then keep the // previous (it's the last with that name) - CldsSdcServiceInfo prev = rawCldsSdcServiceList.get(i - 1); + SdcServiceInfo prev = rawCldsSdcServiceList.get(i - 1); if (!rawCldsSdcServiceList.get(i).getName().equals(prev.getName())) { cldsSdcServiceInfoList.add(prev); } @@ -193,8 +193,8 @@ public class SdcCatalogServices { * @param rawCldsSdcResourceList * @return List of CldsSdcResource */ - public List removeDuplicateSdcResourceInstances(List rawCldsSdcResourceList) { - List cldsSdcResourceList = null; + public List removeDuplicateSdcResourceInstances(List rawCldsSdcResourceList) { + List cldsSdcResourceList = null; if (rawCldsSdcResourceList != null && !rawCldsSdcResourceList.isEmpty()) { // sort list Collections.sort(rawCldsSdcResourceList); @@ -204,7 +204,7 @@ public class SdcCatalogServices { for (int i = 1; i < rawCldsSdcResourceList.size(); i++) { // compare name with previous - if not equal, then keep the // previous (it's the last with that name) - CldsSdcResource prev = rawCldsSdcResourceList.get(i - 1); + SdcResource prev = rawCldsSdcResourceList.get(i - 1); if (!rawCldsSdcResourceList.get(i).getResourceInstanceName().equals(prev.getResourceInstanceName())) { cldsSdcResourceList.add(prev); } @@ -221,9 +221,9 @@ public class SdcCatalogServices { * @param rawCldsSdcResourceListBasicList * @return List of CldsSdcResourceBasicInfo */ - public List removeDuplicateSdcResourceBasicInfo( - List rawCldsSdcResourceListBasicList) { - List cldsSdcResourceBasicInfoList = null; + public List removeDuplicateSdcResourceBasicInfo( + List rawCldsSdcResourceListBasicList) { + List cldsSdcResourceBasicInfoList = null; if (rawCldsSdcResourceListBasicList != null && !rawCldsSdcResourceListBasicList.isEmpty()) { // sort list Collections.sort(rawCldsSdcResourceListBasicList); @@ -233,7 +233,7 @@ public class SdcCatalogServices { for (int i = 1; i < rawCldsSdcResourceListBasicList.size(); i++) { // compare name with previous - if not equal, then keep the // previous (it's the last with that name) - CldsSdcResourceBasicInfo prev = rawCldsSdcResourceListBasicList.get(i - 1); + SdcResourceBasicInfo prev = rawCldsSdcResourceListBasicList.get(i - 1); if (!rawCldsSdcResourceListBasicList.get(i).getName().equals(prev.getName())) { cldsSdcResourceBasicInfoList.add(prev); } @@ -260,10 +260,10 @@ public class SdcCatalogServices { throws GeneralSecurityException, DecoderException { String serviceUuid = ""; String responseStr = getSdcServicesInformation(null); - List rawCldsSdcServicesList = getCldsSdcServicesListFromJson(responseStr); - List cldsSdcServicesList = removeDuplicateServices(rawCldsSdcServicesList); + List rawCldsSdcServicesList = getCldsSdcServicesListFromJson(responseStr); + List cldsSdcServicesList = removeDuplicateServices(rawCldsSdcServicesList); if (cldsSdcServicesList != null && !cldsSdcServicesList.isEmpty()) { - for (CldsSdcServiceInfo currCldsSdcServiceInfo : cldsSdcServicesList) { + for (SdcServiceInfo currCldsSdcServiceInfo : cldsSdcServicesList) { if (currCldsSdcServiceInfo != null && currCldsSdcServiceInfo.getInvariantUUID() != null && currCldsSdcServiceInfo.getInvariantUUID().equalsIgnoreCase(invariantId)) { serviceUuid = currCldsSdcServiceInfo.getUuid(); @@ -282,14 +282,14 @@ public class SdcCatalogServices { * @return The list of CldsSdcServiceInfo, if there is a failure it return * an empty list */ - private List getCldsSdcServicesListFromJson(String jsonStr) { + private List getCldsSdcServicesListFromJson(String jsonStr) { ObjectMapper objectMapper = new ObjectMapper(); if (StringUtils.isBlank(jsonStr)) { return new ArrayList<>(); } try { return objectMapper.readValue(jsonStr, - objectMapper.getTypeFactory().constructCollectionType(List.class, CldsSdcServiceInfo.class)); + objectMapper.getTypeFactory().constructCollectionType(List.class, SdcServiceInfo.class)); } catch (IOException e) { logger.error("Error when attempting to decode the JSON containing CldsSdcServiceInfo", e); return new ArrayList<>(); @@ -304,14 +304,14 @@ public class SdcCatalogServices { * @return The list of CldsSdcResourceBasicInfo, an empty list in case of * issues */ - private List getAllSdcResourcesListFromJson(String jsonStr) { + private List getAllSdcResourcesListFromJson(String jsonStr) { ObjectMapper objectMapper = new ObjectMapper(); if (StringUtils.isBlank(jsonStr)) { return new ArrayList<>(); } try { return objectMapper.readValue(jsonStr, - objectMapper.getTypeFactory().constructCollectionType(List.class, CldsSdcResourceBasicInfo.class)); + objectMapper.getTypeFactory().constructCollectionType(List.class, SdcResourceBasicInfo.class)); } catch (IOException e) { logger.error("Exception occurred when attempting to decode the list of CldsSdcResourceBasicInfo JSON", e); return new ArrayList<>(); @@ -324,10 +324,10 @@ public class SdcCatalogServices { * @param jsonStr * @return */ - public CldsSdcServiceDetail getCldsSdcServiceDetailFromJson(String jsonStr) { + public SdcServiceDetail decodeCldsSdcServiceDetailFromJson(String jsonStr) { ObjectMapper objectMapper = new ObjectMapper(); try { - return objectMapper.readValue(jsonStr, CldsSdcServiceDetail.class); + return objectMapper.readValue(jsonStr, SdcServiceDetail.class); } catch (IOException e) { logger.error("Exception when attempting to decode the CldsSdcServiceDetail JSON", e); return null; @@ -472,9 +472,9 @@ public class SdcCatalogServices { ObjectMapper objectMapper = new ObjectMapper(); CldsServiceData cldsServiceData = new CldsServiceData(); if (responseStr != null) { - CldsSdcServiceDetail cldsSdcServiceDetail; + SdcServiceDetail cldsSdcServiceDetail; try { - cldsSdcServiceDetail = objectMapper.readValue(responseStr, CldsSdcServiceDetail.class); + cldsSdcServiceDetail = objectMapper.readValue(responseStr, SdcServiceDetail.class); } catch (IOException e) { logger.error("Exception when decoding the CldsServiceData JSON from SDC", e); throw new SdcCommunicationException("Exception when decoding the CldsServiceData JSON from SDC", e); @@ -484,11 +484,11 @@ public class SdcCatalogServices { if (cldsSdcServiceDetail != null && cldsSdcServiceDetail.getResources() != null) { cldsServiceData.setServiceUUID(cldsSdcServiceDetail.getUuid()); cldsServiceData.setServiceInvariantUUID(cldsSdcServiceDetail.getInvariantUUID()); - List cldsSdcResourceList = removeDuplicateSdcResourceInstances( + List cldsSdcResourceList = removeDuplicateSdcResourceInstances( cldsSdcServiceDetail.getResources()); if (cldsSdcResourceList != null && !cldsSdcResourceList.isEmpty()) { List cldsVfDataList = new ArrayList<>(); - for (CldsSdcResource currCldsSdcResource : cldsSdcResourceList) { + for (SdcResource currCldsSdcResource : cldsSdcResourceList) { if (currCldsSdcResource != null && currCldsSdcResource.getResoucreType() != null && "VF".equalsIgnoreCase(currCldsSdcResource.getResoucreType())) { CldsVfData currCldsVfData = new CldsVfData(); @@ -511,9 +511,8 @@ public class SdcCatalogServices { throws GeneralSecurityException { // todo : refact this.. if (cldsVfDataList != null && !cldsVfDataList.isEmpty()) { - List allVfResources = getAllSdcVForVfcResourcesBasedOnResourceType( - RESOURCE_VF_TYPE); - List allVfcResources = getAllSdcVForVfcResourcesBasedOnResourceType( + List allVfResources = getAllSdcVForVfcResourcesBasedOnResourceType(RESOURCE_VF_TYPE); + List allVfcResources = getAllSdcVForVfcResourcesBasedOnResourceType( RESOURCE_VFC_TYPE); allVfcResources.addAll(getAllSdcVForVfcResourcesBasedOnResourceType(RESOURCE_CVFC_TYPE)); for (CldsVfData currCldsVfData : cldsVfDataList) { @@ -1128,18 +1127,18 @@ public class SdcCatalogServices { * The artifact name that will be searched * @return The artifact UUID found */ - public String getArtifactIdIfArtifactAlreadyExists(CldsSdcServiceDetail cldsSdcServiceDetail, String artifactName) { + public String getArtifactIdIfArtifactAlreadyExists(SdcServiceDetail cldsSdcServiceDetail, String artifactName) { String artifactUuid = null; boolean artifactExists = false; if (cldsSdcServiceDetail != null && cldsSdcServiceDetail.getResources() != null && !cldsSdcServiceDetail.getResources().isEmpty()) { - for (CldsSdcResource currCldsSdcResource : cldsSdcServiceDetail.getResources()) { + for (SdcResource currCldsSdcResource : cldsSdcServiceDetail.getResources()) { if (artifactExists) { break; } if (currCldsSdcResource != null && currCldsSdcResource.getArtifacts() != null && !currCldsSdcResource.getArtifacts().isEmpty()) { - for (CldsSdcArtifact currCldsSdcArtifact : currCldsSdcResource.getArtifacts()) { + for (SdcArtifact currCldsSdcArtifact : currCldsSdcResource.getArtifacts()) { if (currCldsSdcArtifact != null && currCldsSdcArtifact.getArtifactName() != null && currCldsSdcArtifact.getArtifactName().equalsIgnoreCase(artifactName)) { artifactUuid = currCldsSdcArtifact.getArtifactUUID(); @@ -1154,7 +1153,7 @@ public class SdcCatalogServices { } // To get all sdc VF/VFC Resources basic info. - private List getAllSdcVForVfcResourcesBasedOnResourceType(String resourceType) { + private List getAllSdcVForVfcResourcesBasedOnResourceType(String resourceType) { String catalogUrl = refProp.getStringValue(SDC_CATALOG_URL_PROPERTY_NAME); String resourceUrl = catalogUrl + "resources?resourceType=" + resourceType; String allSdcVfcResources = getCldsServicesOrResourcesBasedOnURL(resourceUrl); @@ -1162,10 +1161,10 @@ public class SdcCatalogServices { } private String getResourceUuidFromResourceInvariantUuid(String resourceInvariantUuid, - List resourceInfoList) { + List resourceInfoList) { String resourceUuid = null; if (resourceInfoList != null && !resourceInfoList.isEmpty()) { - for (CldsSdcResourceBasicInfo currResource : resourceInfoList) { + for (SdcResourceBasicInfo currResource : resourceInfoList) { if (currResource != null && currResource.getInvariantUUID() != null && currResource.getUuid() != null && currResource.getInvariantUUID().equalsIgnoreCase(resourceInvariantUuid)) { resourceUuid = currResource.getUuid(); @@ -1220,7 +1219,7 @@ public class SdcCatalogServices { String originalServiceUuid = getServiceUuidFromServiceInvariantId(serviceInvariantUuid); logger.info("ServiceUUID used before upload in url:" + originalServiceUuid); String sdcServicesInformation = getSdcServicesInformation(originalServiceUuid); - CldsSdcServiceDetail cldsSdcServiceDetail = getCldsSdcServiceDetailFromJson(sdcServicesInformation); + SdcServiceDetail cldsSdcServiceDetail = decodeCldsSdcServiceDetailFromJson(sdcServicesInformation); String uploadedArtifactUuid = getArtifactIdIfArtifactAlreadyExists(cldsSdcServiceDetail, artifactName); // Upload artifacts to sdc @@ -1233,7 +1232,7 @@ public class SdcCatalogServices { } logger.info("ServiceUUID used after upload in ulr:" + updatedServiceUuid); sdcServicesInformation = getSdcServicesInformation(updatedServiceUuid); - cldsSdcServiceDetail = getCldsSdcServiceDetailFromJson(sdcServicesInformation); + cldsSdcServiceDetail = decodeCldsSdcServiceDetailFromJson(sdcServicesInformation); uploadedArtifactUuid = getArtifactIdIfArtifactAlreadyExists(cldsSdcServiceDetail, locationArtifactName); // To send location information also to sdc diff --git a/src/main/java/org/onap/clamp/clds/client/req/sdc/SdcReq.java b/src/main/java/org/onap/clamp/clds/client/req/sdc/SdcReq.java deleted file mode 100644 index 3fb53a3b6..000000000 --- a/src/main/java/org/onap/clamp/clds/client/req/sdc/SdcReq.java +++ /dev/null @@ -1,227 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP CLAMP - * ================================================================================ - * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights - * reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END============================================ - * =================================================================== - * ECOMP is a trademark and service mark of AT&T Intellectual Property. - */ - -package org.onap.clamp.clds.client.req.sdc; - -import com.att.eelf.configuration.EELFLogger; -import com.att.eelf.configuration.EELFManager; -import com.fasterxml.jackson.databind.JsonNode; -import com.fasterxml.jackson.databind.ObjectMapper; -import com.fasterxml.jackson.databind.node.ArrayNode; -import com.fasterxml.jackson.databind.node.ObjectNode; - -import java.io.IOException; -import java.nio.charset.StandardCharsets; -import java.security.GeneralSecurityException; -import java.util.ArrayList; -import java.util.Base64; -import java.util.Iterator; -import java.util.List; -import java.util.Map.Entry; - -import org.apache.commons.codec.DecoderException; -import org.onap.clamp.clds.client.req.tca.TcaRequestFormatter; -import org.onap.clamp.clds.model.CldsSdcResource; -import org.onap.clamp.clds.model.CldsSdcServiceDetail; -import org.onap.clamp.clds.model.prop.Global; -import org.onap.clamp.clds.model.prop.ModelProperties; -import org.onap.clamp.clds.model.prop.Tca; -import org.onap.clamp.clds.model.refprop.RefProp; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -/** - * Construct a Sdc request given CLDS objects. - */ -@Component -public class SdcReq { - - protected static final EELFLogger logger = EELFManager.getInstance().getLogger(SdcReq.class); - protected static final EELFLogger metricsLogger = EELFManager.getInstance().getMetricsLogger(); - @Autowired - private SdcCatalogServices sdcCatalogServices; - @Autowired - protected RefProp refProp; - - /** - * Format the Blueprint from a Yaml - * - * @param prop - * The ModelProperties describing the clds model - * @param docText - * The Yaml file that must be converted - * @return A String containing the BluePrint - * @throws IOException - * In case of issues - */ - public String formatBlueprint(ModelProperties prop, String docText) throws IOException { - String yamlvalue = getYamlvalue(docText); - String updatedBlueprint = ""; - Tca tca = prop.getType(Tca.class); - if (tca.isFound()) { - updatedBlueprint = TcaRequestFormatter.updatedBlueprintWithConfiguration(refProp, prop, yamlvalue); - } - logger.info("value of blueprint:" + updatedBlueprint); - return updatedBlueprint; - } - - /** - * Format the SDC Locations Request in the JSON Format - * - * @param prop - * The ModelProperties describing the clds model - * @param artifactName - * The name of the artifact - * @return SDC Locations request in the JSON Format - */ - public String formatSdcLocationsReq(ModelProperties prop, String artifactName) { - ObjectMapper objectMapper = new ObjectMapper(); - Global global = prop.getGlobal(); - List locationsList = global.getLocation(); - ArrayNode locationsArrayNode = objectMapper.createArrayNode(); - ObjectNode locationObject = objectMapper.createObjectNode(); - for (String currLocation : locationsList) { - locationsArrayNode.add(currLocation); - } - locationObject.put("artifactName", artifactName); - locationObject.putPOJO("locations", locationsArrayNode); - String locationJsonFormat = locationObject.toString(); - logger.info("Value of location Json Artifact:" + locationsArrayNode); - return locationJsonFormat; - } - - /** - * Format the SDC Request - * - * @param payloadData - * The ModelProperties describing the clds model - * @param artifactName - * The name of the artifact - * @param artifactLabel - * The Label of the artifact - * @param artifactType - * The type of the artifact - * @return formatted SDC Request - */ - public String formatSdcReq(String payloadData, String artifactName, String artifactLabel, String artifactType) { - logger.info("artifact=" + payloadData); - String base64Artifact = Base64.getEncoder().encodeToString(payloadData.getBytes(StandardCharsets.UTF_8)); - return "{ \n" + "\"payloadData\" : \"" + base64Artifact + "\",\n" + "\"artifactLabel\" : \"" + artifactLabel - + "\",\n" + "\"artifactName\" :\"" + artifactName + "\",\n" + "\"artifactType\" : \"" + artifactType - + "\",\n" + "\"artifactGroupType\" : \"DEPLOYMENT\",\n" + "\"description\" : \"from CLAMP Cockpit\"\n" - + "} \n"; - } - - /** - * To get List of urls for all vfresources - * - * @param prop - * The model properties JSON describing the closed loop flow - * @param baseUrl - * The URL to trigger - * @return A list of Service URL - * @throws GeneralSecurityException - * In case of issues when decrypting the password - * @throws DecoderException - * In case of issues when decoding the Hex String - */ - public List getSdcReqUrlsList(ModelProperties prop, String baseUrl) - throws GeneralSecurityException, DecoderException { - List urlList = new ArrayList<>(); - Global globalProps = prop.getGlobal(); - if (globalProps != null && globalProps.getService() != null) { - String serviceInvariantUUID = globalProps.getService(); - List resourceVfList = globalProps.getResourceVf(); - String serviceUUID = sdcCatalogServices.getServiceUuidFromServiceInvariantId(serviceInvariantUUID); - CldsSdcServiceDetail cldsSdcServiceDetail = sdcCatalogServices - .getCldsSdcServiceDetailFromJson(sdcCatalogServices.getSdcServicesInformation(serviceUUID)); - if (cldsSdcServiceDetail != null && resourceVfList != null) { - List cldsSdcResourcesList = cldsSdcServiceDetail.getResources(); - if (cldsSdcResourcesList != null && !cldsSdcResourcesList.isEmpty()) { - for (CldsSdcResource cldsSdcResource : cldsSdcResourcesList) { - if (cldsSdcResource != null && cldsSdcResource.getResoucreType() != null - && cldsSdcResource.getResoucreType().equalsIgnoreCase("VF") - && resourceVfList.contains(cldsSdcResource.getResourceInvariantUUID())) { - String normalizedResourceInstanceName = normalizeResourceInstanceName( - cldsSdcResource.getResourceInstanceName()); - String svcUrl = baseUrl + "/" + serviceUUID + "/resourceInstances/" - + normalizedResourceInstanceName + "/artifacts"; - urlList.add(svcUrl); - } else { - logger.warn("The VF Resource invariant UUID (" + cldsSdcResource.getResourceInvariantUUID() - + ") has not been found in the Service (Invariant ID:" + serviceInvariantUUID - + ")VF resource list"); - } - } - } - } - } else { - logger.warn("GlobalProperties json is empty, skipping getSdcReqUrlsList and returning empty list"); - } - return urlList; - } - - /** - * "Normalize" the resource instance name: - Remove spaces, underscores, - * dashes, and periods. - make lower case This is required by SDC when using - * the resource instance name to upload an artifact. - * - * @param inText - * @return - */ - public String normalizeResourceInstanceName(String inText) { - return inText.replace(" ", "").replace("-", "").replace(".", "").toLowerCase(); - } - - /** - * Method to get yaml/template properties value from json. - * - * @param jsonGlobal - * The Json containing a Yaml file - * @return The yaml extracted from the JSON - * @throws IOException - * In case of issues with the Json parser - */ - protected String getYamlvalue(String jsonGlobal) throws IOException { - ObjectMapper objectMapper = new ObjectMapper(); - String yamlFileValue = ""; - ObjectNode root = objectMapper.readValue(jsonGlobal, ObjectNode.class); - Iterator> entryItr = root.fields(); - while (entryItr.hasNext()) { - Entry entry = entryItr.next(); - String key = entry.getKey(); - if (key != null && key.equalsIgnoreCase("global")) { - ArrayNode arrayNode = (ArrayNode) entry.getValue(); - for (JsonNode anArrayNode : arrayNode) { - ObjectNode node = (ObjectNode) anArrayNode; - ArrayNode arrayValueNode = (ArrayNode) node.get("value"); - JsonNode jsonNode = arrayValueNode.get(0); - yamlFileValue = jsonNode.asText(); - logger.info("value:" + yamlFileValue); - } - break; - } - } - return yamlFileValue; - } -} diff --git a/src/main/java/org/onap/clamp/clds/client/req/sdc/SdcRequests.java b/src/main/java/org/onap/clamp/clds/client/req/sdc/SdcRequests.java new file mode 100644 index 000000000..214933d49 --- /dev/null +++ b/src/main/java/org/onap/clamp/clds/client/req/sdc/SdcRequests.java @@ -0,0 +1,227 @@ +/*- + * ============LICENSE_START======================================================= + * ONAP CLAMP + * ================================================================================ + * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights + * reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END============================================ + * =================================================================== + * ECOMP is a trademark and service mark of AT&T Intellectual Property. + */ + +package org.onap.clamp.clds.client.req.sdc; + +import com.att.eelf.configuration.EELFLogger; +import com.att.eelf.configuration.EELFManager; +import com.fasterxml.jackson.databind.JsonNode; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.node.ArrayNode; +import com.fasterxml.jackson.databind.node.ObjectNode; + +import java.io.IOException; +import java.nio.charset.StandardCharsets; +import java.security.GeneralSecurityException; +import java.util.ArrayList; +import java.util.Base64; +import java.util.Iterator; +import java.util.List; +import java.util.Map.Entry; + +import org.apache.commons.codec.DecoderException; +import org.onap.clamp.clds.client.req.tca.TcaRequestFormatter; +import org.onap.clamp.clds.config.CldsReferenceProperties; +import org.onap.clamp.clds.model.properties.Global; +import org.onap.clamp.clds.model.properties.ModelProperties; +import org.onap.clamp.clds.model.properties.Tca; +import org.onap.clamp.clds.model.sdc.SdcResource; +import org.onap.clamp.clds.model.sdc.SdcServiceDetail; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +/** + * Construct a Sdc request given CLDS objects. + */ +@Component +public class SdcRequests { + + protected static final EELFLogger logger = EELFManager.getInstance().getLogger(SdcRequests.class); + protected static final EELFLogger metricsLogger = EELFManager.getInstance().getMetricsLogger(); + @Autowired + private SdcCatalogServices sdcCatalogServices; + @Autowired + protected CldsReferenceProperties refProp; + + /** + * Format the Blueprint from a Yaml + * + * @param prop + * The ModelProperties describing the clds model + * @param docText + * The Yaml file that must be converted + * @return A String containing the BluePrint + * @throws IOException + * In case of issues + */ + public String formatBlueprint(ModelProperties prop, String docText) throws IOException { + String yamlvalue = getYamlvalue(docText); + String updatedBlueprint = ""; + Tca tca = prop.getType(Tca.class); + if (tca.isFound()) { + updatedBlueprint = TcaRequestFormatter.updatedBlueprintWithConfiguration(refProp, prop, yamlvalue); + } + logger.info("value of blueprint:" + updatedBlueprint); + return updatedBlueprint; + } + + /** + * Format the SDC Locations Request in the JSON Format + * + * @param prop + * The ModelProperties describing the clds model + * @param artifactName + * The name of the artifact + * @return SDC Locations request in the JSON Format + */ + public String formatSdcLocationsReq(ModelProperties prop, String artifactName) { + ObjectMapper objectMapper = new ObjectMapper(); + Global global = prop.getGlobal(); + List locationsList = global.getLocation(); + ArrayNode locationsArrayNode = objectMapper.createArrayNode(); + ObjectNode locationObject = objectMapper.createObjectNode(); + for (String currLocation : locationsList) { + locationsArrayNode.add(currLocation); + } + locationObject.put("artifactName", artifactName); + locationObject.putPOJO("locations", locationsArrayNode); + String locationJsonFormat = locationObject.toString(); + logger.info("Value of location Json Artifact:" + locationsArrayNode); + return locationJsonFormat; + } + + /** + * Format the SDC Request + * + * @param payloadData + * The ModelProperties describing the clds model + * @param artifactName + * The name of the artifact + * @param artifactLabel + * The Label of the artifact + * @param artifactType + * The type of the artifact + * @return formatted SDC Request + */ + public String formatSdcReq(String payloadData, String artifactName, String artifactLabel, String artifactType) { + logger.info("artifact=" + payloadData); + String base64Artifact = Base64.getEncoder().encodeToString(payloadData.getBytes(StandardCharsets.UTF_8)); + return "{ \n" + "\"payloadData\" : \"" + base64Artifact + "\",\n" + "\"artifactLabel\" : \"" + artifactLabel + + "\",\n" + "\"artifactName\" :\"" + artifactName + "\",\n" + "\"artifactType\" : \"" + artifactType + + "\",\n" + "\"artifactGroupType\" : \"DEPLOYMENT\",\n" + "\"description\" : \"from CLAMP Cockpit\"\n" + + "} \n"; + } + + private List filterVfResourceList(String serviceUuid, List sdcResourcesList, + List cldsResourceVfList) { + List urlList = new ArrayList<>(); + for (SdcResource cldsSdcResource : sdcResourcesList) { + if (cldsSdcResource != null && cldsSdcResource.getResoucreType() != null + && cldsSdcResource.getResoucreType().equalsIgnoreCase("VF") + && cldsResourceVfList.contains(cldsSdcResource.getResourceInvariantUUID())) { + String normalizedResourceInstanceName = normalizeResourceInstanceName( + cldsSdcResource.getResourceInstanceName()); + String svcUrl = createUrlForResource(normalizedResourceInstanceName, serviceUuid); + urlList.add(svcUrl); + } + } + return urlList; + } + + private String createUrlForResource(String normalizedResourceInstanceName, String serviceUuid) { + return refProp.getStringValue("sdc.serviceUrl") + "/" + serviceUuid + "/resourceInstances/" + + normalizedResourceInstanceName + "/artifacts"; + } + + /** + * To get List of urls for all vfresources + * + * @param prop + * The model properties JSON describing the closed loop flow + * @return A list of Service URL + * @throws GeneralSecurityException + * In case of issues when decrypting the password + * @throws DecoderException + * In case of issues when decoding the Hex String + */ + public List getSdcReqUrlsList(ModelProperties prop) throws GeneralSecurityException, DecoderException { + List urlList = new ArrayList<>(); + Global globalProps = prop.getGlobal(); + if (globalProps != null && globalProps.getService() != null && globalProps.getResourceVf() != null) { + String serviceUuid = sdcCatalogServices.getServiceUuidFromServiceInvariantId(globalProps.getService()); + SdcServiceDetail sdcServiceDetail = sdcCatalogServices + .decodeCldsSdcServiceDetailFromJson(sdcCatalogServices.getSdcServicesInformation(serviceUuid)); + if (sdcServiceDetail != null) { + urlList = filterVfResourceList(serviceUuid, sdcServiceDetail.getResources(), + globalProps.getResourceVf()); + } + } else { + logger.warn("GlobalProperties json is empty, skipping getSdcReqUrlsList and returning empty list"); + } + return urlList; + } + + /** + * "Normalize" the resource instance name: - Remove spaces, underscores, + * dashes, and periods. - make lower case This is required by SDC when using + * the resource instance name to upload an artifact. + * + * @param inText + * @return + */ + public String normalizeResourceInstanceName(String inText) { + return inText.replace(" ", "").replace("-", "").replace(".", "").toLowerCase(); + } + + /** + * Method to get yaml/template properties value from json. + * + * @param jsonGlobal + * The Json containing a Yaml file + * @return The yaml extracted from the JSON + * @throws IOException + * In case of issues with the Json parser + */ + protected String getYamlvalue(String jsonGlobal) throws IOException { + ObjectMapper objectMapper = new ObjectMapper(); + String yamlFileValue = ""; + ObjectNode root = objectMapper.readValue(jsonGlobal, ObjectNode.class); + Iterator> entryItr = root.fields(); + while (entryItr.hasNext()) { + Entry entry = entryItr.next(); + String key = entry.getKey(); + if (key != null && key.equalsIgnoreCase("global")) { + ArrayNode arrayNode = (ArrayNode) entry.getValue(); + for (JsonNode anArrayNode : arrayNode) { + ObjectNode node = (ObjectNode) anArrayNode; + ArrayNode arrayValueNode = (ArrayNode) node.get("value"); + JsonNode jsonNode = arrayValueNode.get(0); + yamlFileValue = jsonNode.asText(); + logger.info("value:" + yamlFileValue); + } + break; + } + } + return yamlFileValue; + } +} diff --git a/src/main/java/org/onap/clamp/clds/client/req/tca/TcaRequestFormatter.java b/src/main/java/org/onap/clamp/clds/client/req/tca/TcaRequestFormatter.java index f13f42220..73355a7a4 100644 --- a/src/main/java/org/onap/clamp/clds/client/req/tca/TcaRequestFormatter.java +++ b/src/main/java/org/onap/clamp/clds/client/req/tca/TcaRequestFormatter.java @@ -32,12 +32,12 @@ import com.fasterxml.jackson.databind.node.ObjectNode; import java.io.IOException; import java.util.Map; +import org.onap.clamp.clds.config.CldsReferenceProperties; import org.onap.clamp.clds.exception.TcaRequestFormatterException; -import org.onap.clamp.clds.model.prop.ModelProperties; -import org.onap.clamp.clds.model.prop.Tca; -import org.onap.clamp.clds.model.prop.TcaItem; -import org.onap.clamp.clds.model.prop.TcaThreshold; -import org.onap.clamp.clds.model.refprop.RefProp; +import org.onap.clamp.clds.model.properties.ModelProperties; +import org.onap.clamp.clds.model.properties.Tca; +import org.onap.clamp.clds.model.properties.TcaItem; +import org.onap.clamp.clds.model.properties.TcaThreshold; import org.yaml.snakeyaml.Yaml; /** @@ -64,7 +64,7 @@ public class TcaRequestFormatter { * The Model Prop created from BPMN JSON and BPMN properties JSON * @return The Json string containing that should be sent to policy */ - public static String createPolicyJson(RefProp refProp, ModelProperties modelProperties) { + public static String createPolicyJson(CldsReferenceProperties refProp, ModelProperties modelProperties) { try { String service = modelProperties.getGlobal().getService(); Tca tca = modelProperties.getType(Tca.class); @@ -103,7 +103,7 @@ public class TcaRequestFormatter { * modelProperties.setCurrentModelElementId will be used * @return The Json node containing what should be sent to policy */ - public static JsonNode createPolicyContent(RefProp refProp, ModelProperties modelProperties, String service, + public static JsonNode createPolicyContent(CldsReferenceProperties refProp, ModelProperties modelProperties, String service, String policyName, Tca tca) { try { String serviceToUse = service; @@ -153,7 +153,7 @@ public class TcaRequestFormatter { * The Model Properties created from BPMN JSON and BPMN * properties JSON */ - private static void addThresholds(RefProp refProp, String service, ObjectNode appendToNode, TcaItem tcaItem, + private static void addThresholds(CldsReferenceProperties refProp, String service, ObjectNode appendToNode, TcaItem tcaItem, ModelProperties modelProperties) { ArrayNode tcaNodes = appendToNode.withArray("thresholds"); ObjectNode tcaNode; @@ -185,7 +185,7 @@ public class TcaRequestFormatter { * The yaml string received from the UI * @return The updated YAML as a string */ - public static String updatedBlueprintWithConfiguration(RefProp refProp, ModelProperties modelProperties, + public static String updatedBlueprintWithConfiguration(CldsReferenceProperties refProp, ModelProperties modelProperties, String yamlValue) { String jsonPolicy = ((ObjectNode) createPolicyContent(refProp, modelProperties, null, null, null)).toString(); logger.info("Yaml that will be updated:" + yamlValue); diff --git a/src/main/java/org/onap/clamp/clds/config/CldsReferenceProperties.java b/src/main/java/org/onap/clamp/clds/config/CldsReferenceProperties.java new file mode 100644 index 000000000..a8acdee14 --- /dev/null +++ b/src/main/java/org/onap/clamp/clds/config/CldsReferenceProperties.java @@ -0,0 +1,110 @@ +/*- + * ============LICENSE_START======================================================= + * ONAP CLAMP + * ================================================================================ + * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights + * reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END============================================ + * =================================================================== + * ECOMP is a trademark and service mark of AT&T Intellectual Property. + */ + +package org.onap.clamp.clds.config; + +import com.fasterxml.jackson.databind.JsonNode; +import com.fasterxml.jackson.databind.ObjectMapper; + +import java.io.IOException; +import java.util.Properties; + +import javax.annotation.PostConstruct; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.ApplicationContext; +import org.springframework.core.io.Resource; +import org.springframework.stereotype.Component; + +/** + * Holds reference properties. + */ +@Component +public class CldsReferenceProperties { + + @Autowired + private ApplicationContext appContext; + private Properties prop; + @Value("${org.onap.clamp.config.files.cldsReference:'classpath:/clds/clds-reference.properties'}") + private String cldsReferenceValuesFile; + + @PostConstruct + public void loadConfig() throws IOException { + prop = new Properties(); + Resource resource = appContext.getResource(cldsReferenceValuesFile); + prop.load(resource.getInputStream()); + } + + /** + * get property value + * + * @param key + * @return + */ + public String getStringValue(String key) { + return prop.getProperty(key); + } + + /** + * get property value for a combo key (key1 + "." + key2). If not found just + * use key1. + * + * @param key1 + * @param key2 + * @return + */ + public String getStringValue(String key1, String key2) { + String value = getStringValue(key1 + "." + key2); + if (value == null || value.length() == 0) { + value = getStringValue(key1); + } + return value; + } + + /** + * Return json as objects that can be updated + * + * @param key + * @return + * @throws IOException + */ + public JsonNode getJsonTemplate(String key) throws IOException { + ObjectMapper objectMapper = new ObjectMapper(); + return objectMapper.readValue(getStringValue(key), JsonNode.class); + } + + /** + * Return json as objects that can be updated. First try with combo key + * (key1 + "." + key2), otherwise default to just key1. + * + * @param key1 + * @param key2 + * @return + * @throws IOException + */ + public JsonNode getJsonTemplate(String key1, String key2) throws IOException { + ObjectMapper objectMapper = new ObjectMapper(); + return objectMapper.readValue(getStringValue(key1, key2), JsonNode.class); + } +} diff --git a/src/main/java/org/onap/clamp/clds/model/CldsSdcArtifact.java b/src/main/java/org/onap/clamp/clds/model/CldsSdcArtifact.java deleted file mode 100644 index 48f90170c..000000000 --- a/src/main/java/org/onap/clamp/clds/model/CldsSdcArtifact.java +++ /dev/null @@ -1,112 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP CLAMP - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights - * reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END============================================ - * =================================================================== - * ECOMP is a trademark and service mark of AT&T Intellectual Property. - */ - -package org.onap.clamp.clds.model; - -import com.fasterxml.jackson.annotation.JsonIgnoreProperties; - -@JsonIgnoreProperties(ignoreUnknown = true) -public class CldsSdcArtifact { - - private String artifactName; - private String artifactType; - private String artifactUrl; - private String artifactDescription; - private String artifactTimeout; - private String artifactChecksum; - private String artifactUuid; - private String artifactVersion; - private String generatedFromUuid; - - public String getArtifactName() { - return artifactName; - } - - public void setArtifactName(String artifactName) { - this.artifactName = artifactName; - } - - public String getArtifactType() { - return artifactType; - } - - public void setArtifactType(String artifactType) { - this.artifactType = artifactType; - } - - public String getArtifactURL() { - return artifactUrl; - } - - public void setArtifactURL(String artifactURL) { - this.artifactUrl = artifactURL; - } - - public String getArtifactDescription() { - return artifactDescription; - } - - public void setArtifactDescription(String artifactDescription) { - this.artifactDescription = artifactDescription; - } - - public String getArtifactTimeout() { - return artifactTimeout; - } - - public void setArtifactTimeout(String artifactTimeout) { - this.artifactTimeout = artifactTimeout; - } - - public String getArtifactChecksum() { - return artifactChecksum; - } - - public void setArtifactChecksum(String artifactChecksum) { - this.artifactChecksum = artifactChecksum; - } - - public String getArtifactUUID() { - return artifactUuid; - } - - public void setArtifactUUID(String artifactUUID) { - this.artifactUuid = artifactUUID; - } - - public String getArtifactVersion() { - return artifactVersion; - } - - public void setArtifactVersion(String artifactVersion) { - this.artifactVersion = artifactVersion; - } - - public String getGeneratedFromUUID() { - return generatedFromUuid; - } - - public void setGeneratedFromUUID(String generatedFromUUID) { - this.generatedFromUuid = generatedFromUUID; - } -} diff --git a/src/main/java/org/onap/clamp/clds/model/CldsSdcResource.java b/src/main/java/org/onap/clamp/clds/model/CldsSdcResource.java deleted file mode 100644 index 9c47f450c..000000000 --- a/src/main/java/org/onap/clamp/clds/model/CldsSdcResource.java +++ /dev/null @@ -1,166 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP CLAMP - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights - * reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END============================================ - * =================================================================== - * ECOMP is a trademark and service mark of AT&T Intellectual Property. - */ - -package org.onap.clamp.clds.model; - -import com.att.eelf.configuration.EELFLogger; -import com.att.eelf.configuration.EELFManager; -import com.fasterxml.jackson.annotation.JsonIgnoreProperties; - -import java.math.BigDecimal; -import java.util.List; - -@JsonIgnoreProperties(ignoreUnknown = true) -public class CldsSdcResource implements Comparable { - - protected static final EELFLogger logger = EELFManager.getInstance().getLogger(CldsSdcResource.class); - protected static final EELFLogger metricsLogger = EELFManager.getInstance().getMetricsLogger(); - - private String resourceInstanceName; - private String resourceName; - private String resourceInvariantUuid; - private String resourceVersion; - private String resoucreType; - private String resourceUuid; - private List artifacts; - - public String getResourceInstanceName() { - return resourceInstanceName; - } - - public void setResourceInstanceName(String resourceInstanceName) { - this.resourceInstanceName = resourceInstanceName; - } - - public String getResourceName() { - return resourceName; - } - - public void setResourceName(String resourceName) { - this.resourceName = resourceName; - } - - public String getResourceInvariantUUID() { - return resourceInvariantUuid; - } - - public void setResourceInvariantUUID(String resourceInvariantUUID) { - this.resourceInvariantUuid = resourceInvariantUUID; - } - - public String getResourceVersion() { - return resourceVersion; - } - - public void setResourceVersion(String resourceVersion) { - this.resourceVersion = resourceVersion; - } - - public String getResoucreType() { - return resoucreType; - } - - public void setResoucreType(String resoucreType) { - this.resoucreType = resoucreType; - } - - public String getResourceUUID() { - return resourceUuid; - } - - public void setResourceUUID(String resourceUUID) { - this.resourceUuid = resourceUUID; - } - - public List getArtifacts() { - return artifacts; - } - - public void setArtifacts(List artifacts) { - this.artifacts = artifacts; - } - - @Override - public int compareTo(CldsSdcResource in) { - // Compares this object with the specified object for order. - // Returns a negative integer, zero, or a positive integer as this - // object is less than, equal to, or greater than the specified object. - - // first compare based on name - int rtn = resourceInstanceName.compareToIgnoreCase(in.resourceInstanceName); - - if (rtn == 0) { - BigDecimal myVersion = convertVersion(resourceVersion); - BigDecimal inVersion = convertVersion(in.resourceVersion); - rtn = myVersion.compareTo(inVersion); - } - return rtn; - } - - @Override - public int hashCode() { - final int prime = 31; - int result = 1; - result = prime * result + ((resourceInstanceName == null) ? 0 : resourceInstanceName.hashCode()); - result = prime * result + ((resourceVersion == null) ? 0 : resourceVersion.hashCode()); - return result; - } - - @Override - public boolean equals(Object obj) { - if (this == obj) - return true; - if (obj == null) - return false; - if (getClass() != obj.getClass()) - return false; - CldsSdcResource other = (CldsSdcResource) obj; - if (resourceInstanceName == null) { - if (other.resourceInstanceName != null) - return false; - } else if (!resourceInstanceName.equals(other.resourceInstanceName)) - return false; - if (resourceVersion == null) { - if (other.resourceVersion != null) - return false; - } else if (!resourceVersion.equals(other.resourceVersion)) - return false; - return true; - } - - /** - * Convert version String into a BigDecimal - * - * @param versionText - * @return - */ - private BigDecimal convertVersion(String versionText) { - BigDecimal rtn = BigDecimal.valueOf(0.0); - try { - rtn = new BigDecimal(versionText); - } catch (NumberFormatException nfe) { - logger.warn("SDC version=" + versionText + " is not decimal for name=" + resourceInstanceName); - } - return rtn; - } -} diff --git a/src/main/java/org/onap/clamp/clds/model/CldsSdcResourceBasicInfo.java b/src/main/java/org/onap/clamp/clds/model/CldsSdcResourceBasicInfo.java deleted file mode 100644 index f91e36a81..000000000 --- a/src/main/java/org/onap/clamp/clds/model/CldsSdcResourceBasicInfo.java +++ /dev/null @@ -1,196 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP CLAMP - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights - * reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END============================================ - * =================================================================== - * ECOMP is a trademark and service mark of AT&T Intellectual Property. - */ - -package org.onap.clamp.clds.model; - -import com.att.eelf.configuration.EELFLogger; -import com.att.eelf.configuration.EELFManager; -import com.fasterxml.jackson.annotation.JsonIgnoreProperties; - -import java.math.BigDecimal; - -@JsonIgnoreProperties(ignoreUnknown = true) -public class CldsSdcResourceBasicInfo implements Comparable { - - protected static final EELFLogger logger = EELFManager.getInstance() - .getLogger(CldsSdcResourceBasicInfo.class); - protected static final EELFLogger metricsLogger = EELFManager.getInstance().getMetricsLogger(); - - private String uuid; - private String invariantUUID; - private String name; - private String version; - private String toscaModelURL; - private String category; - private String subCategory; - private String resourceType; - private String lifecycleState; - private String lastUpdaterUserId; - - @Override - public int compareTo(CldsSdcResourceBasicInfo in) { - // Compares this object with the specified object for order. - // Returns a negative integer, zero, or a positive integer as this - // object is less than, equal to, or greater than the specified object. - // first compare based on name - int rtn = name.compareToIgnoreCase(in.name); - - if (rtn == 0) { - BigDecimal myVersion = convertVersion(version); - BigDecimal inVersion = convertVersion(in.version); - rtn = myVersion.compareTo(inVersion); - } - return rtn; - } - - @Override - public int hashCode() { - final int prime = 31; - int result = 1; - result = prime * result + ((name == null) ? 0 : name.hashCode()); - result = prime * result + ((version == null) ? 0 : version.hashCode()); - return result; - } - - @Override - public boolean equals(Object obj) { - if (this == obj) - return true; - if (obj == null) - return false; - if (getClass() != obj.getClass()) - return false; - CldsSdcResourceBasicInfo other = (CldsSdcResourceBasicInfo) obj; - if (name == null) { - if (other.name != null) - return false; - } else if (!name.equals(other.name)) - return false; - if (version == null) { - if (other.version != null) - return false; - } else if (!version.equals(other.version)) - return false; - return true; - } - - /** - * Convert version String into a BigDecimal - * - * @param version - * @return - */ - private BigDecimal convertVersion(String version) { - BigDecimal rtn = BigDecimal.valueOf(0.0); - try { - rtn = new BigDecimal(version); - } catch (NumberFormatException nfe) { - logger.warn("SDC version=" + version + " is not decimal for name=" + name); - } - return rtn; - } - - public String getUuid() { - return uuid; - } - - public void setUuid(String uuid) { - this.uuid = uuid; - } - - public String getInvariantUUID() { - return invariantUUID; - } - - public void setInvariantUUID(String invariantUUID) { - this.invariantUUID = invariantUUID; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public String getVersion() { - return version; - } - - public void setVersion(String version) { - this.version = version; - } - - public String getToscaModelURL() { - return toscaModelURL; - } - - public void setToscaModelURL(String toscaModelURL) { - this.toscaModelURL = toscaModelURL; - } - - public String getCategory() { - return category; - } - - public void setCategory(String category) { - this.category = category; - } - - public String getSubCategory() { - return subCategory; - } - - public void setSubCategory(String subCategory) { - this.subCategory = subCategory; - } - - public String getResourceType() { - return resourceType; - } - - public void setResourceType(String resourceType) { - this.resourceType = resourceType; - } - - public String getLifecycleState() { - return lifecycleState; - } - - public void setLifecycleState(String lifecycleState) { - this.lifecycleState = lifecycleState; - } - - public String getLastUpdaterUserId() { - return lastUpdaterUserId; - } - - public void setLastUpdaterUserId(String lastUpdaterUserId) { - this.lastUpdaterUserId = lastUpdaterUserId; - } - - public EELFLogger getLOGGER() { - return logger; - } -} diff --git a/src/main/java/org/onap/clamp/clds/model/CldsSdcServiceDetail.java b/src/main/java/org/onap/clamp/clds/model/CldsSdcServiceDetail.java deleted file mode 100644 index 551418b79..000000000 --- a/src/main/java/org/onap/clamp/clds/model/CldsSdcServiceDetail.java +++ /dev/null @@ -1,142 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP CLAMP - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights - * reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END============================================ - * =================================================================== - * ECOMP is a trademark and service mark of AT&T Intellectual Property. - */ - -package org.onap.clamp.clds.model; - -import java.util.List; - -import com.fasterxml.jackson.annotation.JsonIgnoreProperties; - -@JsonIgnoreProperties(ignoreUnknown = true) -public class CldsSdcServiceDetail { - - private String uuid; - private String invariantUUID; - private String name; - private String version; - private String toscaModelURL; - private String category; - private String lifecycleState; - private String lastUpdaterUserId; - private String distributionStatus; - private String lastUpdaterFullName; - private List resources; - private List artifacts; - - public String getUuid() { - return uuid; - } - - public void setUuid(String uuid) { - this.uuid = uuid; - } - - public String getInvariantUUID() { - return invariantUUID; - } - - public void setInvariantUUID(String invariantUUID) { - this.invariantUUID = invariantUUID; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public String getVersion() { - return version; - } - - public void setVersion(String version) { - this.version = version; - } - - public String getToscaModelURL() { - return toscaModelURL; - } - - public void setToscaModelURL(String toscaModelURL) { - this.toscaModelURL = toscaModelURL; - } - - public String getCategory() { - return category; - } - - public void setCategory(String category) { - this.category = category; - } - - public String getLifecycleState() { - return lifecycleState; - } - - public void setLifecycleState(String lifecycleState) { - this.lifecycleState = lifecycleState; - } - - public String getLastUpdaterUserId() { - return lastUpdaterUserId; - } - - public void setLastUpdaterUserId(String lastUpdaterUserId) { - this.lastUpdaterUserId = lastUpdaterUserId; - } - - public String getDistributionStatus() { - return distributionStatus; - } - - public void setDistributionStatus(String distributionStatus) { - this.distributionStatus = distributionStatus; - } - - public String getLastUpdaterFullName() { - return lastUpdaterFullName; - } - - public void setLastUpdaterFullName(String lastUpdaterFullName) { - this.lastUpdaterFullName = lastUpdaterFullName; - } - - public List getResources() { - return resources; - } - - public void setResources(List resources) { - this.resources = resources; - } - - public List getArtifacts() { - return artifacts; - } - - public void setArtifacts(List artifacts) { - this.artifacts = artifacts; - } - -} diff --git a/src/main/java/org/onap/clamp/clds/model/CldsSdcServiceInfo.java b/src/main/java/org/onap/clamp/clds/model/CldsSdcServiceInfo.java deleted file mode 100644 index cf447c5c7..000000000 --- a/src/main/java/org/onap/clamp/clds/model/CldsSdcServiceInfo.java +++ /dev/null @@ -1,184 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP CLAMP - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights - * reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END============================================ - * =================================================================== - * ECOMP is a trademark and service mark of AT&T Intellectual Property. - */ - -package org.onap.clamp.clds.model; - -import com.att.eelf.configuration.EELFLogger; -import com.att.eelf.configuration.EELFManager; - -import java.math.BigDecimal; - -public class CldsSdcServiceInfo implements Comparable { - - protected static final EELFLogger logger = EELFManager.getInstance().getLogger(CldsSdcServiceInfo.class); - protected static final EELFLogger auditLogger = EELFManager.getInstance().getAuditLogger(); - - private String uuid; - private String invariantUUID; - private String name; - private String version; - private String toscaModelURL; - private String category; - private String lifecycleState; - private String lastUpdaterUserId; - private String distributionStatus; - - public String getUuid() { - return uuid; - } - - public void setUuid(String uuid) { - this.uuid = uuid; - } - - public String getInvariantUUID() { - return invariantUUID; - } - - public void setInvariantUUID(String invariantUUID) { - this.invariantUUID = invariantUUID; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public String getVersion() { - return version; - } - - public void setVersion(String version) { - this.version = version; - } - - public String getToscaModelURL() { - return toscaModelURL; - } - - public void setToscaModelURL(String toscaModelURL) { - this.toscaModelURL = toscaModelURL; - } - - public String getCategory() { - return category; - } - - public void setCategory(String category) { - this.category = category; - } - - public String getLifecycleState() { - return lifecycleState; - } - - public void setLifecycleState(String lifecycleState) { - this.lifecycleState = lifecycleState; - } - - public String getLastUpdaterUserId() { - return lastUpdaterUserId; - } - - public void setLastUpdaterUserId(String lastUpdaterUserId) { - this.lastUpdaterUserId = lastUpdaterUserId; - } - - public String getDistributionStatus() { - return distributionStatus; - } - - public void setDistributionStatus(String distributionStatus) { - this.distributionStatus = distributionStatus; - } - - /** - * Compare using name and then version. Version is converted to a decimal. - */ - @Override - public int compareTo(CldsSdcServiceInfo in) { - // Compares this object with the specified object for order. - // Returns a negative integer, zero, or a positive integer as this - // object is less than, equal to, or greater than the specified object. - // first compare based on name - int rtn = name.compareToIgnoreCase(in.name); - - if (rtn == 0) { - BigDecimal myVersion = convertVersion(version); - BigDecimal inVersion = convertVersion(in.version); - rtn = myVersion.compareTo(inVersion); - } - - return rtn; - } - - @Override - public int hashCode() { - final int prime = 31; - int result = 1; - result = prime * result + ((name == null) ? 0 : name.hashCode()); - result = prime * result + ((version == null) ? 0 : version.hashCode()); - return result; - } - - @Override - public boolean equals(Object obj) { - if (this == obj) - return true; - if (obj == null) - return false; - if (getClass() != obj.getClass()) - return false; - CldsSdcServiceInfo other = (CldsSdcServiceInfo) obj; - if (name == null) { - if (other.name != null) - return false; - } else if (!name.equals(other.name)) - return false; - if (version == null) { - if (other.version != null) - return false; - } else if (!version.equals(other.version)) - return false; - return true; - } - - /** - * Convert version String into a BigDecimal - * - * @param versionText - * @return - */ - private BigDecimal convertVersion(String versionText) { - try { - return new BigDecimal(versionText); - } catch (NumberFormatException nfe) { - logger.warn("SDC version=" + versionText + " is not decimal for name=" + name); - } - return BigDecimal.valueOf(0.0); - } - -} diff --git a/src/main/java/org/onap/clamp/clds/model/prop/AbstractModelElement.java b/src/main/java/org/onap/clamp/clds/model/prop/AbstractModelElement.java deleted file mode 100644 index a0685228b..000000000 --- a/src/main/java/org/onap/clamp/clds/model/prop/AbstractModelElement.java +++ /dev/null @@ -1,242 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP CLAMP - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights - * reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END============================================ - * =================================================================== - * ECOMP is a trademark and service mark of AT&T Intellectual Property. - */ - -package org.onap.clamp.clds.model.prop; - -import com.att.eelf.configuration.EELFLogger; -import com.att.eelf.configuration.EELFManager; -import com.fasterxml.jackson.databind.JsonNode; -import java.util.ArrayList; -import java.util.Iterator; -import java.util.List; - -/** - * Provide base ModelElement functionality. Perform base parsing of properties - * for a ModelElement (such as, VesCollector, Policy, Tca, Holmes, - * ...) - */ -public abstract class AbstractModelElement { - - protected static final EELFLogger logger = EELFManager.getInstance().getLogger(AbstractModelElement.class); - protected static final EELFLogger auditLogger = EELFManager.getInstance().getAuditLogger(); - - private final String type; - private final ModelBpmn modelBpmn; - private final String id; - protected String topicPublishes; - protected final JsonNode modelElementJsonNode; - private boolean isFound; - - private final ModelProperties modelProp; - - private static final String LOG_ELEMENT_NOT_FOUND = "Value '{}' for key 'name' not found in JSON"; - private static final String LOG_ELEMENT_NOT_FOUND_IN_JSON = "Value '{}' for key 'name' not found in JSON {}"; - - /** - * Perform base parsing of properties for a ModelElement (such as, - * VesCollector, Policy and Tca) - */ - protected AbstractModelElement(String type, ModelProperties modelProp, ModelBpmn modelBpmn, JsonNode modelJson) { - this.type = type; - this.modelProp = modelProp; - this.modelBpmn = modelBpmn; - this.id = modelBpmn.getId(type); - this.modelElementJsonNode = modelJson.get(id); - this.isFound = modelBpmn.isModelElementTypeInList(type); - } - - /** - * topicSubscribes is the topicPublishes of the from Model Element (the - * previous one in the chain). - * - * @return the topicSubscribes - */ - public String getTopicSubscribes() { - // get fromId for this type - String fromId = modelBpmn.getFromId(type); - // find the type of the from model element - String fromType = modelBpmn.getType(fromId); - // get the model element for the type - AbstractModelElement me = modelProp.getModelElementByType(fromType); - // get the topic publishes for the model element - return me.topicPublishes; - } - - /** - * @return the topicPublishes - */ - public String getTopicPublishes() { - return topicPublishes; - } - - /** - * Return the value field of the json node element that has a name field - * equals to the given name. - */ - public static String getValueByName(JsonNode nodeIn, String name) { - String value = null; - if (nodeIn != null) { - for (JsonNode node : nodeIn) { - if (node.path("name").asText().equals(name)) { - JsonNode vnode = node.path("value"); - if (vnode.isArray()) { - // if array, assume value is in first element - value = vnode.path(0).asText(); - } else { - // otherwise, just return text - value = vnode.asText(); - } - } - } - } - if (value == null || value.length() == 0) { - logger.warn(LOG_ELEMENT_NOT_FOUND, name); - } else { - logger.debug(LOG_ELEMENT_NOT_FOUND_IN_JSON, name, nodeIn.toString()); - } - return value; - } - - /** - * Return the value field of the json node element that has a name field - * that equals the given name. - */ - public static String getNodeValueByName(JsonNode nodeIn, String name) { - String value = null; - if (nodeIn != null) { - value = nodeIn.path(name).asText(); - } - if (value == null || value.length() == 0) { - logger.warn(LOG_ELEMENT_NOT_FOUND, name); - } else { - logger.debug(LOG_ELEMENT_NOT_FOUND_IN_JSON, name, nodeIn.toString()); - } - return value; - } - - /** - * Return the value field of the json node element that has a name field - * that equals the given name. - */ - public static List getNodeValuesByName(JsonNode nodeIn, String name) { - List values = new ArrayList<>(); - if (nodeIn != null) { - for (JsonNode node : nodeIn) { - if (node.path("name").asText().equals(name)) { - JsonNode vnode = node.path("value"); - if (vnode.isArray()) { - // if array, assume value is in first element - values.add(vnode.path(0).asText()); - } else { - // otherwise, just return text - values.add(vnode.asText()); - } - } - } - } - return values; - } - - /** - * Return the int value field of the json node element that has a name field - * equals to the given name. - */ - public static Integer getIntValueByName(JsonNode nodeIn, String name) { - String value = getValueByName(nodeIn, name); - return Integer.valueOf(value); - } - - /** - * Return an array of values for the field of the json node element that has - * a name field equals to the given name. - */ - public static List getValuesByName(JsonNode nodeIn, String name) { - List values = null; - if (nodeIn != null) { - for (JsonNode node : nodeIn) { - if (node.path("name").asText().equals(name)) { - values = getValuesList(node); - } - } - } - if (values == null || values.isEmpty()) { - logger.warn(LOG_ELEMENT_NOT_FOUND, name); - } else { - logger.debug(LOG_ELEMENT_NOT_FOUND_IN_JSON, name, nodeIn.toString()); - } - return values; - } - - /** - * Return an array of String values. - */ - public static List getValuesList(JsonNode nodeIn) { - ArrayList al = new ArrayList<>(); - if (nodeIn != null) { - Iterator itr = nodeIn.path("value").elements(); - while (itr.hasNext()) { - JsonNode node = itr.next(); - al.add(node.asText()); - } - } - return al; - } - - /** - * Return the value field of the json node element that has a name field - * equals to the given name. - */ - public String getValueByName(String name) { - return getValueByName(modelElementJsonNode, name); - } - - /** - * Return the int value field of the json node element that has a name field - * equals to the given name. - */ - public Integer getIntValueByName(String name) { - return getIntValueByName(modelElementJsonNode, name); - } - - /** - * Return an array of values for the field of the json node element that has - * a name field equals to the given name. - */ - public List getValuesByName(String name) { - return getValuesByName(modelElementJsonNode, name); - } - - /** - * @return the id - */ - public String getId() { - return id; - } - - /** - * @return the isFound - */ - public boolean isFound() { - return isFound; - } -} diff --git a/src/main/java/org/onap/clamp/clds/model/prop/Global.java b/src/main/java/org/onap/clamp/clds/model/prop/Global.java deleted file mode 100644 index 48c2fd9fb..000000000 --- a/src/main/java/org/onap/clamp/clds/model/prop/Global.java +++ /dev/null @@ -1,131 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP CLAMP - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights - * reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END============================================ - * =================================================================== - * ECOMP is a trademark and service mark of AT&T Intellectual Property. - */ - -package org.onap.clamp.clds.model.prop; - -import java.util.List; - -import com.att.eelf.configuration.EELFLogger; -import com.att.eelf.configuration.EELFManager; -import com.fasterxml.jackson.databind.JsonNode; - -/** - * Parse global json properties. - *

- * Example json: - * "global":[{"name":"service","value":["vUSP"]},{"name":"vnf","value":["vCTS", - * "v3CDB"]},{"name":"location","value":["san_diego","san_antonio","kansas_city" - * ,"kings_mountain","Secaucus","lisle","concord","houston","akron"]}] - */ -public class Global { - protected static final EELFLogger logger = EELFManager.getInstance().getLogger(Global.class); - protected static final EELFLogger auditLogger = EELFManager.getInstance().getAuditLogger(); - - private String service; - private String actionSet; - private List resourceVf; - private List resourceVfc; - private List location; - - /** - * Parse global given json node. - * - * @param modelJson - */ - public Global(JsonNode modelJson) { - JsonNode globalNode = modelJson.get("global"); - service = AbstractModelElement.getValueByName(globalNode, "service"); - actionSet = AbstractModelElement.getValueByName(globalNode, "actionSet"); - resourceVf = AbstractModelElement.getValuesByName(globalNode, "vf"); - resourceVfc = AbstractModelElement.getValuesByName(globalNode, "vfc"); - location = AbstractModelElement.getValuesByName(globalNode, "location"); - } - - /** - * @return the service - */ - public String getService() { - return service; - } - - /** - * @param service - * the service to set - */ - public void setService(String service) { - this.service = service; - } - - /** - * @return the actionSet - */ - public String getActionSet() { - return actionSet; - } - - /** - * @return the resourceVf - */ - public List getResourceVf() { - return resourceVf; - } - - /** - * @param resourceVf - * the resourceVf to set - */ - public void setResourceVf(List resourceVf) { - this.resourceVf = resourceVf; - } - - /** - * @return the resourceVfc - */ - public List getResourceVfc() { - return resourceVfc; - } - - /** - * @param resourceVfc - * the resourceVfc to set - */ - public void setResourceVfc(List resourceVfc) { - this.resourceVfc = resourceVfc; - } - - /** - * @return the location - */ - public List getLocation() { - return location; - } - - /** - * @param location - * the location to set - */ - public void setLocation(List location) { - this.location = location; - } - -} diff --git a/src/main/java/org/onap/clamp/clds/model/prop/Holmes.java b/src/main/java/org/onap/clamp/clds/model/prop/Holmes.java deleted file mode 100644 index bd47e8d78..000000000 --- a/src/main/java/org/onap/clamp/clds/model/prop/Holmes.java +++ /dev/null @@ -1,71 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP CLAMP - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights - * reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END============================================ - * =================================================================== - * ECOMP is a trademark and service mark of AT&T Intellectual Property. - */ - -package org.onap.clamp.clds.model.prop; - -import com.fasterxml.jackson.databind.JsonNode; - -/** - * Parse Holmes bpmn parameters json properties. - *

- * Example json: - * [{"name":"correlationalLogic","value":"vcwx"},{"name":"configPolicyName","value":"cccc"}] - * - */ -public class Holmes extends AbstractModelElement { - - private static final String TYPE_HOLMES = "holmes"; - - private String correlationLogic; - - private String configPolicyName; - - /** - * Default constructor for Holmes Element - * - * @param modelProp - * The ModelProperties containing the all the info, like bpmn, - * bpmn params, etc ... - * @param modelBpmn - * @param modelJson - */ - public Holmes(ModelProperties modelProp, ModelBpmn modelBpmn, JsonNode modelJson) { - super(TYPE_HOLMES, modelProp, modelBpmn, modelJson); - - correlationLogic = this.getValueByName("correlationalLogic"); - configPolicyName = this.getValueByName("configPolicyName"); - } - - public static final String getType() { - return TYPE_HOLMES; - } - - public String getCorrelationLogic() { - return correlationLogic; - } - - public String getConfigPolicyName() { - return configPolicyName; - } - -} diff --git a/src/main/java/org/onap/clamp/clds/model/prop/ModelBpmn.java b/src/main/java/org/onap/clamp/clds/model/prop/ModelBpmn.java deleted file mode 100644 index 9738396a9..000000000 --- a/src/main/java/org/onap/clamp/clds/model/prop/ModelBpmn.java +++ /dev/null @@ -1,171 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP CLAMP - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights - * reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END============================================ - * =================================================================== - * ECOMP is a trademark and service mark of AT&T Intellectual Property. - */ - -package org.onap.clamp.clds.model.prop; - -import com.att.eelf.configuration.EELFLogger; -import com.att.eelf.configuration.EELFManager; -import com.fasterxml.jackson.databind.JsonNode; -import com.fasterxml.jackson.databind.ObjectMapper; -import com.fasterxml.jackson.databind.node.ArrayNode; -import com.fasterxml.jackson.databind.node.ObjectNode; - -import java.io.IOException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Iterator; -import java.util.List; -import java.util.Map; -import java.util.Map.Entry; - -import org.onap.clamp.clds.exception.ModelBpmnException; -import org.onap.clamp.clds.service.CldsService; - -/** - * Parse Model BPMN properties. - *

- * Example json: {"policy" :[{"id":"Policy_0oxeocn", "from":"StartEvent_1"}]} - */ -public class ModelBpmn { - protected static final EELFLogger logger = EELFManager.getInstance() - .getLogger(CldsService.class); - protected static final EELFLogger auditLogger = EELFManager.getInstance().getAuditLogger(); - // for each type, an array of entries - private final Map> entriesByType = new HashMap<>(); - // for each id, an array of entries - private final Map> entriesById = new HashMap<>(); - // List of all elementIds - private List bpmnElementIds; - - /** - * Create ModelBpmn and populate maps from json - * - * @param modelBpmnPropText - * @return - */ - public static ModelBpmn create(String modelBpmnPropText) { - try { - ModelBpmn modelBpmn = new ModelBpmn(); - ObjectMapper objectMapper = new ObjectMapper(); - ObjectNode root = objectMapper.readValue(modelBpmnPropText, ObjectNode.class); - // iterate over each entry like: - // "Policy":[{"id":"Policy","from":"StartEvent_1"}] - Iterator> entryItr = root.fields(); - List bpmnElementIdList = new ArrayList<>(); - while (entryItr.hasNext()) { - // process the entry - Entry entry = entryItr.next(); - String type = entry.getKey(); - ArrayNode arrayNode = (ArrayNode) entry.getValue(); - // process each id/from object, like: - // {"id":"Policy","from":"StartEvent_1"} - for (JsonNode anArrayNode : arrayNode) { - ObjectNode node = (ObjectNode) anArrayNode; - String id = node.get("id").asText(); - String fromId = node.get("from").asText(); - ModelBpmnEntry modelBpmnEntry = new ModelBpmnEntry(type, id, fromId); - modelBpmn.addEntry(modelBpmnEntry); - bpmnElementIdList.add(id); - } - modelBpmn.setBpmnElementIds(bpmnElementIdList); - } - return modelBpmn; - } catch (IOException e) { - throw new ModelBpmnException("Exception occurred during the decoding of the bpmn JSON", e); - } - } - - /** - * Add entry to both maps. - * - * @param entry - */ - private void addEntry(ModelBpmnEntry entry) { - addEntry(entriesByType, entry, entry.getType()); - addEntry(entriesById, entry, entry.getId()); - } - - /** - * Add an entry to provided map with provided key. - * - * @param map - * @param entry - * @param key - */ - private static void addEntry(Map> map, ModelBpmnEntry entry, String key) { - List list = map.computeIfAbsent(key, k -> new ArrayList<>()); - list.add(entry); - } - - /** - * This method verifies if the ModelElement Type (holmes, tca, ...) is in - * the list. - * - * @param type - * A model Element type (tca, ...) - * @return true if the element is found or false otherwise - */ - public boolean isModelElementTypeInList(String type) { - return entriesByType.get(type) != null; - } - - /** - * @return the id field given the ModelElement type - */ - public String getId(String type) { - String modelElementId = ""; - if (entriesByType.get(type) != null) { - modelElementId = entriesByType.get(type).get(0).getId(); - } - return modelElementId; - } - - /** - * @return the fromId field given the ModelElement type - */ - public String getFromId(String type) { - String modelElementFromIdId = ""; - if (entriesByType.get(type) != null) { - modelElementFromIdId = entriesByType.get(type).get(0).getFromId(); - } - return modelElementFromIdId; - } - - /** - * @return the ModelElement type given the ModelElement id - */ - public String getType(String id) { - return entriesById.get(id).get(0).getType(); - } - - /** - * @return list of elementIds from bpmn - */ - public List getBpmnElementIds() { - return bpmnElementIds; - } - - public void setBpmnElementIds(List bpmnElementIds) { - this.bpmnElementIds = bpmnElementIds; - } -} diff --git a/src/main/java/org/onap/clamp/clds/model/prop/ModelBpmnEntry.java b/src/main/java/org/onap/clamp/clds/model/prop/ModelBpmnEntry.java deleted file mode 100644 index dc6682297..000000000 --- a/src/main/java/org/onap/clamp/clds/model/prop/ModelBpmnEntry.java +++ /dev/null @@ -1,102 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP CLAMP - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights - * reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END============================================ - * =================================================================== - * ECOMP is a trademark and service mark of AT&T Intellectual Property. - */ - -package org.onap.clamp.clds.model.prop; - -import com.att.eelf.configuration.EELFLogger; -import com.att.eelf.configuration.EELFManager; - -/** - * Model BPMN property entry - *

- * Example json: {"policy": - * [{"id":"Policy_0oxeocn", "from":"StartEvent_1"}]} - */ -public class ModelBpmnEntry { - protected static final EELFLogger logger = EELFManager.getInstance().getLogger(ModelBpmnEntry.class); - protected static final EELFLogger auditLogger = EELFManager.getInstance().getAuditLogger(); - - private String type; - private String id; - private String fromId; - - /** - * Parse the json so that the "id" and "from" fields can be retrieved on - * demand. - * - * @param type - * @param id - * @param fromId - */ - public ModelBpmnEntry(String type, String id, String fromId) { - this.type = type; - this.id = id; - this.fromId = fromId; - } - - /** - * @return the type - */ - public String getType() { - return type; - } - - /** - * @param type - * the type to set - */ - public void setType(String type) { - this.type = type; - } - - /** - * @return the id - */ - public String getId() { - return id; - } - - /** - * @param id - * the id to set - */ - public void setId(String id) { - this.id = id; - } - - /** - * @return the fromId - */ - public String getFromId() { - return fromId; - } - - /** - * @param fromId - * the fromId to set - */ - public void setFromId(String fromId) { - this.fromId = fromId; - } - -} diff --git a/src/main/java/org/onap/clamp/clds/model/prop/ModelProperties.java b/src/main/java/org/onap/clamp/clds/model/prop/ModelProperties.java deleted file mode 100644 index dca93e46d..000000000 --- a/src/main/java/org/onap/clamp/clds/model/prop/ModelProperties.java +++ /dev/null @@ -1,350 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP CLAMP - * ================================================================================ - * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights - * reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END============================================ - * =================================================================== - * ECOMP is a trademark and service mark of AT&T Intellectual Property. - */ - -package org.onap.clamp.clds.model.prop; - -import com.att.eelf.configuration.EELFLogger; -import com.att.eelf.configuration.EELFManager; -import com.fasterxml.jackson.databind.JsonNode; -import com.fasterxml.jackson.databind.ObjectMapper; - -import java.io.IOException; -import java.lang.reflect.InvocationTargetException; -import java.util.HashSet; -import java.util.List; -import java.util.Map; -import java.util.Set; -import java.util.concurrent.ConcurrentHashMap; - -import org.apache.camel.Exchange; -import org.onap.clamp.clds.exception.ModelBpmnException; -import org.onap.clamp.clds.model.CldsEvent; -import org.onap.clamp.clds.model.CldsModel; -import org.onap.clamp.clds.service.CldsService; - -/** - * Parse model properties. - */ -public class ModelProperties { - - protected static final EELFLogger logger = EELFManager.getInstance().getLogger(CldsService.class); - protected static final EELFLogger auditLogger = EELFManager.getInstance().getAuditLogger(); - private ModelBpmn modelBpmn; - private JsonNode modelJson; - private final String modelName; - private final String controlName; - private final String actionCd; - // Flag indicate whether it is triggered by Validation Test button from UI - private final boolean testOnly; - private Global global; - private final Map modelElements = new ConcurrentHashMap<>(); - private String currentModelElementId; - private String policyUniqueId; - private static final Object lock = new Object(); - private static Map, String> modelElementClasses = new ConcurrentHashMap<>(); - static { - synchronized (lock) { - modelElementClasses.put(Policy.class, Policy.getType()); - modelElementClasses.put(Tca.class, Tca.getType()); - modelElementClasses.put(Holmes.class, Holmes.getType()); - } - } - - /** - * Retain data required to parse the ModelElement objects. (Rather than - * parse them all - parse them on demand if requested.) - * - * @param modelName - * The model name coming form the UI - * @param controlName - * The closed loop name coming from the UI - * @param actionCd - * Type of operation PUT,UPDATE,DELETE - * @param isATest - * The test flag coming from the UI (for validation only, no - * query are physically executed) - * @param modelBpmnText - * The BPMN flow in JSON from the UI - * @param modelPropText - * The BPMN parameters for all boxes defined in modelBpmnTest - */ - public ModelProperties(String modelName, String controlName, String actionCd, boolean isATest, String modelBpmnText, - String modelPropText) { - try { - this.modelName = modelName; - this.controlName = controlName; - this.actionCd = actionCd; - this.testOnly = isATest; - modelBpmn = ModelBpmn.create(modelBpmnText); - modelJson = new ObjectMapper().readTree(modelPropText); - instantiateMissingModelElements(); - } catch (IOException e) { - throw new ModelBpmnException("Exception occurred when trying to decode the BPMN Properties JSON", e); - } - } - - /** - * This method is meant to ensure that one ModelElement instance exists for - * each ModelElement class. As new ModelElement classes could have been - * registered after instantiation of this ModelProperties, we need to build - * the missing ModelElement instances. - */ - private final void instantiateMissingModelElements() { - if (modelElementClasses.size() != modelElements.size()) { - Set missingTypes = new HashSet<>(modelElementClasses.values()); - missingTypes.removeAll(modelElements.keySet()); - // Parse the list of base Model Elements and build up the - // ModelElements - modelElementClasses.entrySet().stream().parallel() - .filter(entry -> (AbstractModelElement.class.isAssignableFrom(entry.getKey()) - && missingTypes.contains(entry.getValue()))) - .forEach(entry -> { - try { - modelElements.put(entry.getValue(), - (entry.getKey() - .getConstructor(ModelProperties.class, ModelBpmn.class, JsonNode.class) - .newInstance(this, modelBpmn, modelJson))); - } catch (InstantiationException | NoSuchMethodException | IllegalAccessException - | InvocationTargetException e) { - logger.warn("Unable to instantiate a ModelElement, exception follows: ", e); - } - }); - } - } - - /** - * Get the VF for a model. If return null if there is no VF. - * - * @param model - * @return - */ - public static String getVf(CldsModel model) { - List vfs = null; - try { - ObjectMapper mapper = new ObjectMapper(); - JsonNode modelJson = mapper.readTree(model.getPropText()); - Global global = new Global(modelJson); - vfs = global.getResourceVf(); - } catch (IOException e) { - logger.warn("no VF found", e); - } - String vf = null; - if (vfs != null && !vfs.isEmpty()) { - vf = vfs.get(0); - } - return vf; - } - - /** - * Create ModelProperties extracted from a CamelExchange. - * - * @param camelExchange - * The camel Exchange object that contains all info provided to - * the flow - * @return A model Properties created from the parameters found in - * camelExchange object - */ - public static ModelProperties create(Exchange camelExchange) { - String modelProp = (String) camelExchange.getProperty("modelProp"); - String modelBpmnProp = (String) camelExchange.getProperty("modelBpmnProp"); - String modelName = (String) camelExchange.getProperty("modelName"); - String controlName = (String) camelExchange.getProperty("controlName"); - String actionCd = (String) camelExchange.getProperty("actionCd"); - boolean isTest = (boolean) camelExchange.getProperty("isTest"); - return new ModelProperties(modelName, controlName, actionCd, isTest, modelBpmnProp, modelProp); - } - - /** - * return appropriate model element given the type - * - * @param type - * @return - */ - public AbstractModelElement getModelElementByType(String type) { - AbstractModelElement modelElement = modelElements.get(type); - if (modelElement == null) { - throw new IllegalArgumentException("Invalid or not found ModelElement type: " + type); - } - return modelElement; - } - - /** - * @return the modelName - */ - public String getModelName() { - return modelName; - } - - /** - * @return the controlName - */ - public String getControlName() { - return controlName; - } - - /** - * @return the controlNameAndPolicyUniqueId - */ - public String getControlNameAndPolicyUniqueId() { - return controlName + "_" + policyUniqueId; - } - - /** - * @return the currentPolicyName - */ - private String getCurrentPolicyName() { - return normalizePolicyScopeName(controlName + "_" + currentModelElementId); - } - - /** - * @return the currentPolicyScopeAndPolicyName - */ - public String getCurrentPolicyScopeAndPolicyName() { - return normalizePolicyScopeName(modelName + "." + getCurrentPolicyName()); - } - - /** - * @return the policyScopeAndNameWithUniqueId - */ - public String getPolicyScopeAndNameWithUniqueId() { - return normalizePolicyScopeName(modelName + "." + getCurrentPolicyName() + "_" + policyUniqueId); - } - - /** - * @return the currentPolicyScopeAndFullPolicyName - */ - public String getCurrentPolicyScopeAndFullPolicyName(String policyNamePrefix) { - return normalizePolicyScopeName(modelName + "." + policyNamePrefix + getCurrentPolicyName()); - } - - /** - * @return the currentPolicyScopeAndFullPolicyNameWithVersion - */ - public String getCurrentPolicyScopeAndFullPolicyNameWithVersion(String policyNamePrefix, int version) { - return normalizePolicyScopeName( - modelName + "." + policyNamePrefix + getCurrentPolicyName() + "." + version + ".xml"); - } - - /** - * Replace all '-' with '_' within policy scope and name. - * - * @param inName - * @return - */ - private String normalizePolicyScopeName(String inName) { - return inName.replaceAll("-", "_"); - } - - /** - * @return the currentModelElementId - */ - public String getCurrentModelElementId() { - return currentModelElementId; - } - - /** - * When generating a policy request for a model element, must set the id of - * that model element using this method. Used to generate the policy name. - * - * @param currentModelElementId - * the currentModelElementId to set - */ - public void setCurrentModelElementId(String currentModelElementId) { - this.currentModelElementId = currentModelElementId; - } - - /** - * @return the policyUniqueId - */ - public String getPolicyUniqueId() { - return policyUniqueId; - } - - /** - * When generating a policy request for a model element, must set the unique - * id of that policy using this method. Used to generate the policy name. - * - * @param policyUniqueId - * the policyUniqueId to set - */ - public void setPolicyUniqueId(String policyUniqueId) { - this.policyUniqueId = policyUniqueId; - } - - /** - * @return the actionCd - */ - public String getActionCd() { - return actionCd; - } - - /** - * @return the testOnly - */ - public boolean isTestOnly() { - return testOnly; - } - - /** - * @return the isCreateRequest - */ - public boolean isCreateRequest() { - switch (actionCd) { - case CldsEvent.ACTION_SUBMIT: - case CldsEvent.ACTION_RESTART: - return true; - } - return false; - } - - public boolean isStopRequest() { - switch (actionCd) { - case CldsEvent.ACTION_STOP: - return true; - } - return false; - } - - /** - * @return the global - */ - public Global getGlobal() { - if (global == null) { - global = new Global(modelJson); - } - return global; - } - - public static final synchronized void registerModelElement(Class modelElementClass, - String type) { - if (!modelElementClasses.containsKey(modelElementClass.getClass())) { - modelElementClasses.put(modelElementClass, type); - } - } - - public T getType(Class clazz) { - instantiateMissingModelElements(); - String type = modelElementClasses.get(clazz); - return (type != null ? (T) modelElements.get(type) : null); - } -} diff --git a/src/main/java/org/onap/clamp/clds/model/prop/Policy.java b/src/main/java/org/onap/clamp/clds/model/prop/Policy.java deleted file mode 100644 index 80d12aaba..000000000 --- a/src/main/java/org/onap/clamp/clds/model/prop/Policy.java +++ /dev/null @@ -1,90 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP CLAMP - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights - * reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END============================================ - * =================================================================== - * ECOMP is a trademark and service mark of AT&T Intellectual Property. - */ - -package org.onap.clamp.clds.model.prop; - -import com.att.eelf.configuration.EELFLogger; -import com.att.eelf.configuration.EELFManager; -import com.fasterxml.jackson.databind.JsonNode; - -import java.util.ArrayList; -import java.util.Iterator; -import java.util.List; - -/** - * Parse Policy json properties. - *

- * Example json: - * "Policy_005sny1":[[{"name":"timeout","value":"5"}],{"policyConfigurations":[[ - * {"name":"recipe","value":["restart"]},{"name":"maxRetries","value":["3"]},{ - * "name":"retryTimeLimit","value":["180"]},{"name":"_id","value":["vf3RtPi"]},{ - * "name":"location","value":["san_diego"]},{"name":"resource","value":["vCTS"]} - * ,{"name":"onMaxRetriesLimit","value":[""]},{"name":"onTimeLimit","value":[""] - * },{"name":"onOtherFailure","value":[""]},{"name":"policy_parent","value":[""] - * }],[{"name":"recipe","value":["rebuild"]},{"name":"maxRetries","value":["3"]} - * ,{"name":"retryTimeLimit","value":["180"]},{"name":"_id","value":["89z8Ncl"]} - * ,{"name":"location","value":["san_diego"]},{"name":"resource","value":["vCTS" - * ]},{"name":"onMaxRetriesLimit","value":[""]},{"name":"onTimeLimit","value":[ - * ""]},{"name":"onOtherFailure","value":[""]},{"name":"policy_parent","value":[ - * "vf3RtPi"]}]]}] - */ -public class Policy extends AbstractModelElement { - protected static final EELFLogger logger = EELFManager.getInstance().getLogger(Policy.class); - protected static final EELFLogger auditLogger = EELFManager.getInstance().getAuditLogger(); - - private List policyChains; - - private static final String TYPE_POLICY = "policy"; - - /** - * Parse Policy given json node. - * - * @param modelProp - * @param modelBpmn - * @param modelJson - */ - public Policy(ModelProperties modelProp, ModelBpmn modelBpmn, JsonNode modelJson) { - super(TYPE_POLICY, modelProp, modelBpmn, modelJson); - - // process policies - if (modelElementJsonNode != null) { - Iterator itr = modelElementJsonNode.elements(); - policyChains = new ArrayList<>(); - while (itr.hasNext()) { - policyChains.add(new PolicyChain(itr.next())); - } - } - } - - /** - * @return the policyChains - */ - public List getPolicyChains() { - return policyChains; - } - - public static final String getType() { - return TYPE_POLICY; - } - -} diff --git a/src/main/java/org/onap/clamp/clds/model/prop/PolicyChain.java b/src/main/java/org/onap/clamp/clds/model/prop/PolicyChain.java deleted file mode 100644 index 217f7fd2d..000000000 --- a/src/main/java/org/onap/clamp/clds/model/prop/PolicyChain.java +++ /dev/null @@ -1,114 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP CLAMP - * ================================================================================ - * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights - * reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END============================================ - * =================================================================== - * ECOMP is a trademark and service mark of AT&T Intellectual Property. - */ - -package org.onap.clamp.clds.model.prop; - -import com.att.eelf.configuration.EELFLogger; -import com.att.eelf.configuration.EELFManager; -import com.fasterxml.jackson.databind.JsonNode; - -import java.util.ArrayList; -import java.util.Iterator; -import java.util.List; - -/** - * Parse Policy json properties. - * - * Example json: - * {"Policy_1e33tn8":{"PolicyTest1":[{"name":"pname","value":"PolicyTest1"},{ - * "name":"pid","value":"1"},{"name":"timeout","value":"345"},{ - * "policyConfigurations":[[{"name":"recipe","value":["restart"]},{"name": - * "maxRetries","value":["3"]},{"name":"retryTimeLimit","value":["180"]},{"name" - * :"_id","value":["q2JmHD5"]},{"name":"parentPolicy","value":[""]}],[{"name": - * "recipe","value":["rebuild"]},{"name":"maxRetries","value":["3"]},{"name": - * "retryTimeLimit","value":["180"]},{"name":"_id","value":["0ZqHdrR"]},{"name": - * "parentPolicy","value":[""]},{"name": - * "targetResourceId","value":["Eace933104d443b496b8.nodes.heat.vpg"]}]]}], - * "PolicyTest2":[{"name":"pname","value": - * "PolicyTest2"},{"name":"pid","value":"2"},{"name":"timeout","value":"345"},{ - * "policyConfigurations":[[{"name":"recipe","value":["restart"]},{"name": - * "maxRetries","value":["3"]},{"name":"retryTimeLimit","value":["180"]},{"name" - * :"_id","value":["q2JmHD5"]},{"name":"parentPolicy","value":[""]}],[{"name": - * "recipe","value":["rebuild"]},{"name":"maxRetries","value":["3"]},{"name": - * "retryTimeLimit","value":["180"]},{"name":"_id","value":["0ZqHdrR"]},{"name": - * "parentPolicy","value":[""]},{"name": - * "targetResourceId","value":["Eace933104d443b496b8.nodes.heat.vpg"]}]]}]}} f - * - */ -public class PolicyChain { - - protected static final EELFLogger logger = EELFManager.getInstance().getLogger(PolicyChain.class); - protected static final EELFLogger auditLogger = EELFManager.getInstance().getAuditLogger(); - - private String policyId; - private Integer timeout; - private List policyItems; - private String policyType; - - public PolicyChain(JsonNode node) { - - policyId = AbstractModelElement.getValueByName(node, "pid"); - timeout = AbstractModelElement.getIntValueByName(node, "timeout"); - policyType = AbstractModelElement.getValueByName(node, "policyType"); - - if(node != null && node.size() > 0) { - JsonNode policyNode = node.get(node.size() - 1).get("policyConfigurations"); - if(policyNode != null) { - Iterator itr = policyNode.elements(); - policyItems = new ArrayList<>(); - while (itr.hasNext()) { - policyItems.add(new PolicyItem(itr.next())); - } - - } - } - } - /** - * @return the policyId - */ - public String getPolicyId() { - return policyId; - } - - /** - * @return the timeout - */ - public Integer getTimeout() { - return timeout; - } - - /** - * @return the policyItems - */ - public List getPolicyItems() { - return policyItems; - } - - /** - * @return the policyType - */ - public String getPolicyType() { - return policyType; - } - -} diff --git a/src/main/java/org/onap/clamp/clds/model/prop/PolicyItem.java b/src/main/java/org/onap/clamp/clds/model/prop/PolicyItem.java deleted file mode 100644 index 5fc829835..000000000 --- a/src/main/java/org/onap/clamp/clds/model/prop/PolicyItem.java +++ /dev/null @@ -1,189 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP CLAMP - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights - * reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END============================================ - * =================================================================== - * ECOMP is a trademark and service mark of AT&T Intellectual Property. - */ - -package org.onap.clamp.clds.model.prop; - -import com.att.eelf.configuration.EELFLogger; -import com.att.eelf.configuration.EELFManager; -import com.fasterxml.jackson.databind.JsonNode; - -import java.util.List; - -/** - * Parse policyConfigurations from Policy json properties. - *

- * Example json: - * "Policy_005sny1":[[{"name":"timeout","value":"5"}],{"policyConfigurations":[[ - * {"name":"recipe","value":["restart"]},{"name":"maxRetries","value":["3"]},{ - * "name":"retryTimeLimit","value":["180"]},{"name":"_id","value":["vf3RtPi"]},{ - * "name":"location","value":["san_diego"]},{"name":"resource","value":["vCTS"]} - * ,{"name":"onMaxRetriesLimit","value":[""]},{"name":"onTimeLimit","value":[""] - * },{"name":"onOtherFailure","value":[""]},{"name":"policy_parent","value":[""] - * }],[{"name":"recipe","value":["rebuild"]},{"name":"maxRetries","value":["3"]} - * ,{"name":"retryTimeLimit","value":["180"]},{"name":"_id","value":["89z8Ncl"]} - * ,{"name":"location","value":["san_diego"]},{"name":"resource","value":["vCTS" - * ]},{"name":"onMaxRetriesLimit","value":[""]},{"name":"onTimeLimit","value":[ - * ""]},{"name":"onOtherFailure","value":[""]},{"name":"policy_parent","value":[ - * "vf3RtPi"]},{"name": - * "targetResourceId","value":["Eace933104d443b496b8.nodes.heat.vpg"]}]]}] - */ -public class PolicyItem implements Cloneable { - protected static final EELFLogger logger = EELFManager.getInstance().getLogger(PolicyItem.class); - protected static final EELFLogger auditLogger = EELFManager.getInstance().getAuditLogger(); - - private String id; - private String recipe; - private int maxRetries; - private int retryTimeLimit; - private String parentPolicy; - private List parentPolicyConditions; - private String actor; - private String targetResourceId; - - /** - * Parse Policy given json node. - * - * @param node - */ - public PolicyItem(JsonNode node) { - id = AbstractModelElement.getValueByName(node, "_id"); - recipe = AbstractModelElement.getValueByName(node, "recipe"); - maxRetries = AbstractModelElement.getIntValueByName(node, "maxRetries"); - retryTimeLimit = AbstractModelElement.getIntValueByName(node, "retryTimeLimit"); - parentPolicy = AbstractModelElement.getValueByName(node, "parentPolicy"); - parentPolicyConditions = AbstractModelElement.getValuesByName(node, "parentPolicyConditions"); - targetResourceId = AbstractModelElement.getValueByName(node, "targetResourceId"); - - } - - /** - * @return the id - */ - public String getId() { - return id; - } - - /** - * @return the recipe - */ - public String getRecipe() { - return recipe; - } - - /** - * @set the id - */ - public void setId(String id) { - this.id = id; - } - - /** - * @set the recipe - */ - public void setRecipe(String recipe) { - this.recipe = recipe; - } - - /** - * @set the parentPolicy - */ - public void setParentPolicy(String parentPolicy) { - this.parentPolicy = parentPolicy; - } - - /** - * @set the maxRetries - */ - public void setMaxRetries(int maxRetries) { - this.maxRetries = maxRetries; - } - - /** - * @set the retryTimeLimit - */ - public void setRetryTimeLimit(int retryTimeLimit) { - this.retryTimeLimit = retryTimeLimit; - } - - /** - * @set the parentPolicyConditions - */ - public void setParentPolicyConditions(List parentPolicyConditions) { - this.parentPolicyConditions = parentPolicyConditions; - } - - /** - * @return the maxRetries - */ - public int getMaxRetries() { - return maxRetries; - } - - /** - * @return the retryTimeLimit - */ - public int getRetryTimeLimit() { - return retryTimeLimit; - } - - /** - * @return the parentPolicy - */ - public String getParentPolicy() { - return parentPolicy; - } - - /** - * @return the parentPolicyConditions - */ - public List getParentPolicyConditions() { - return parentPolicyConditions; - } - - /** - * @return the actor - */ - public String getActor() { - return actor; - } - - /** - * @set the actor - */ - public void setActor(String actor) { - this.actor = actor; - } - - public String getTargetResourceId() { - return targetResourceId; - } - - public void setTargetResourceId(String targetResourceId) { - this.targetResourceId = targetResourceId; - } - - @Override - public Object clone() throws CloneNotSupportedException { - return super.clone(); - } -} diff --git a/src/main/java/org/onap/clamp/clds/model/prop/ResourceGroup.java b/src/main/java/org/onap/clamp/clds/model/prop/ResourceGroup.java deleted file mode 100644 index 8b2dbeb83..000000000 --- a/src/main/java/org/onap/clamp/clds/model/prop/ResourceGroup.java +++ /dev/null @@ -1,114 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP CLAMP - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights - * reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END============================================ - * =================================================================== - * ECOMP is a trademark and service mark of AT&T Intellectual Property. - */ - -package org.onap.clamp.clds.model.prop; - -import com.att.eelf.configuration.EELFLogger; -import com.att.eelf.configuration.EELFManager; -import com.fasterxml.jackson.databind.JsonNode; - -import java.util.ArrayList; -import java.util.Iterator; -import java.util.List; - -/** - * Parse Resource Group json properties. - * - * Example json: - * {"TCA_0aji7go":{"Group1":[{"name":"rgname","value":"1493749598520"},{ - * "name":"rgfriendlyname","value":"Group1"},{"name":"policyName","value": - * "Policy1"},{"name":"policyId","value":"1"},{"serviceConfigurations":[[{"name" - * :"aaiMatchingFields","value":["complex.city","vserver.vserver-name"]},{"name" - * :"aaiSendFields","value":["complex.city","vserver.vserver-name"]},{"name": - * "eventSeverity","value":["OK"]},{"name":"eventSourceType","value":[""]},{ - * "name":"timeWindow","value":["100"]},{"name":"ageLimit","value":["100"]},{ - * "name":"createClosedLoopEventId","value":["Initial"]},{"name": - * "outputEventName","value":["ONSET"]}]]}],"Group2":[{"name":"rgname","value": - * "1493749665149"},{"name":"rgfriendlyname","value":"Group2"},{"name": - * "policyName","value":"Policy2"},{"name":"policyId","value":"2"},{ - * "serviceConfigurations":[[{"name":"aaiMatchingFields","value":[ - * "cloud-region.identity-url","vserver.vserver-name"]},{"name":"aaiSendFields", - * "value":["cloud-region.identity-url","vserver.vserver-name"]},{"name": - * "eventSeverity","value":["NORMAL"]},{"name":"eventSourceType","value":[""]},{ - * "name":"timeWindow","value":["1000"]},{"name":"ageLimit","value":["1000"]},{ - * "name":"createClosedLoopEventId","value":["Initial"]},{"name": - * "outputEventName","value":["ONSET"]}],[{"name":"aaiMatchingFields","value":[ - * "generic-vnf.vnf-name","vserver.vserver-name"]},{"name":"aaiSendFields", - * "value":["generic-vnf.vnf-name","vserver.vserver-name"]},{"name": - * "eventSeverity","value":["CRITICAL"]},{"name":"eventSourceType","value":[""]} - * ,{"name":"timeWindow","value":["3000"]},{"name":"ageLimit","value":["3000"]}, - * {"name":"createClosedLoopEventId","value":["Initial"]},{"name": - * "outputEventName","value":["ABATED"]}]]}]}} - * - */ -public class ResourceGroup { - - protected static final EELFLogger logger = EELFManager.getInstance().getLogger(ResourceGroup.class); - protected static final EELFLogger auditLogger = EELFManager.getInstance().getAuditLogger(); - - private String groupNumber; - private String policyId; - private List serviceConfigurations; - - /** - * Parse String Match Resource Group given json node. - * - * @param modelBpmn - * @param modelJson - */ - public ResourceGroup(JsonNode node) { - - groupNumber = AbstractModelElement.getValueByName(node, "rgname"); - policyId = AbstractModelElement.getValueByName(node, "policyId"); - - // process Server_Configurations - JsonNode serviceConfigurationsNode = node.get(node.size() - 1).get("serviceConfigurations"); - Iterator itr = serviceConfigurationsNode.elements(); - serviceConfigurations = new ArrayList<>(); - while (itr.hasNext()) { - serviceConfigurations.add(new ServiceConfiguration(itr.next())); - } - } - - /** - * @return the groupNumber - */ - public String getGroupNumber() { - return groupNumber; - } - - /** - * @return the policyId - */ - public String getPolicyId() { - return policyId; - } - - /** - * @return the serviceConfigurations - */ - public List getServiceConfigurations() { - return serviceConfigurations; - } - -} diff --git a/src/main/java/org/onap/clamp/clds/model/prop/ServiceConfiguration.java b/src/main/java/org/onap/clamp/clds/model/prop/ServiceConfiguration.java deleted file mode 100644 index 418afbb9f..000000000 --- a/src/main/java/org/onap/clamp/clds/model/prop/ServiceConfiguration.java +++ /dev/null @@ -1,181 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP CLAMP - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights - * reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END============================================ - * =================================================================== - * ECOMP is a trademark and service mark of AT&T Intellectual Property. - */ - -package org.onap.clamp.clds.model.prop; - -import java.util.HashMap; -import java.util.Iterator; -import java.util.List; -import java.util.Map; - -import com.att.eelf.configuration.EELFLogger; -import com.att.eelf.configuration.EELFManager; -import com.fasterxml.jackson.databind.JsonNode; - -/** - * Parse serviceConfigurations from Tca json properties. - *

- * Example json: - * {"Tca_0aji7go":{"Group1":[{"name":"rgname","value":"1493749598520"},{ - * "name":"rgfriendlyname","value":"Group1"},{"name":"policyName","value": - * "Policy1"},{"name":"policyId","value":"1"},{"serviceConfigurations":[[{"name" - * :"aaiMatchingFields","value":["complex.city","vserver.vserver-name"]},{"name" - * :"aaiSendFields","value":["complex.city","vserver.vserver-name"]},{"name": - * "eventSeverity","value":["OK"]},{"name":"eventSourceType","value":[""]},{ - * "name":"timeWindow","value":["100"]},{"name":"ageLimit","value":["100"]},{ - * "name":"createClosedLoopEventId","value":["Initial"]},{"name": - * "outputEventName","value":["ONSET"]}]]}],"Group2":[{"name":"rgname","value": - * "1493749665149"},{"name":"rgfriendlyname","value":"Group2"},{"name": - * "policyName","value":"Policy2"},{"name":"policyId","value":"2"},{ - * "serviceConfigurations":[[{"name":"aaiMatchingFields","value":[ - * "cloud-region.identity-url","vserver.vserver-name"]},{"name":"aaiSendFields", - * "value":["cloud-region.identity-url","vserver.vserver-name"]},{"name": - * "eventSeverity","value":["NORMAL"]},{"name":"eventSourceType","value":[""]},{ - * "name":"timeWindow","value":["1000"]},{"name":"ageLimit","value":["1000"]},{ - * "name":"createClosedLoopEventId","value":["Initial"]},{"name": - * "outputEventName","value":["ONSET"]}],[{"name":"aaiMatchingFields","value":[ - * "generic-vnf.vnf-name","vserver.vserver-name"]},{"name":"aaiSendFields", - * "value":["generic-vnf.vnf-name","vserver.vserver-name"]},{"name": - * "eventSeverity","value":["CRITICAL"]},{"name":"eventSourceType","value":[""]} - * ,{"name":"timeWindow","value":["3000"]},{"name":"ageLimit","value":["3000"]}, - * {"name":"createClosedLoopEventId","value":["Initial"]},{"name": - * "outputEventName","value":["ABATED"]}]]}]}} - * - */ -public class ServiceConfiguration { - - protected static final EELFLogger logger = EELFManager.getInstance().getLogger(ServiceConfiguration.class); - protected static final EELFLogger auditLogger = EELFManager.getInstance().getAuditLogger(); - - private final List aaiMatchingFields; - private final List aaiSendFields; - // private final String groupNumber; - private final List resourceVf; - private final List resourceVfc; - private final String timeWindow; - private final String ageLimit; - private final String createClosedLoopEventId; - private final String outputEventName; - private final Map stringSet; - - /** - * Parse serviceConfigurations given json node. - * - * @param node - */ - public ServiceConfiguration(JsonNode node) { - aaiMatchingFields = AbstractModelElement.getValuesByName(node, "aaiMatchingFields"); - aaiSendFields = AbstractModelElement.getValuesByName(node, "aaiSendFields"); - // groupNumber = ModelElement.getValueByName(node, "groupNumber"); - resourceVf = AbstractModelElement.getValuesByName(node, "vf"); - resourceVfc = AbstractModelElement.getValuesByName(node, "vfc"); - timeWindow = AbstractModelElement.getValueByName(node, "timeWindow"); - ageLimit = AbstractModelElement.getValueByName(node, "ageLimit"); - createClosedLoopEventId = AbstractModelElement.getValueByName(node, "createClosedLoopEventId"); - outputEventName = AbstractModelElement.getValueByName(node, "outputEventName"); - - // process the stringSet fields - JsonNode ssNodes = node.findPath("stringSet"); - Iterator itr = ssNodes.elements(); - stringSet = new HashMap<>(); - while (itr.hasNext()) { - JsonNode ssNode = itr.next(); - String key = ssNode.path("name").asText(); - String value = ssNode.path("value").path(0).asText(); - if (key.length() != 0 && value.length() != 0) { - // only add string set field if not null - logger.debug("stringSet: " + key + "=" + value); - stringSet.put(key, value); - } - } - } - - /** - * @return the aaiMatchingFields - */ - public List getaaiMatchingFields() { - return aaiMatchingFields; - } - - /** - * @return the aaiSendFields - */ - public List getaaiSendFields() { - return aaiSendFields; - } - - /** - * @return the groupNumber - */ /* - * public String getGroupNumber() { return groupNumber; } - */ - /** - * @return the resourceVf - */ - public List getResourceVf() { - return resourceVf; - } - - /** - * @return the resourceVfc - */ - public List getResourceVfc() { - return resourceVfc; - } - - /** - * @return the timeWindow - */ - public String getTimeWindow() { - return timeWindow; - } - - /** - * @return the ageLimit - */ - public String getAgeLimit() { - return ageLimit; - } - - /** - * @return the createClosedLoopEventId - */ - public String getCreateClosedLoopEventId() { - return createClosedLoopEventId; - } - - /** - * @return the outputEventName - */ - public String getOutputEventName() { - return outputEventName; - } - - /** - * @return the stringSet - */ - public Map getStringSet() { - return stringSet; - } - -} diff --git a/src/main/java/org/onap/clamp/clds/model/prop/Tca.java b/src/main/java/org/onap/clamp/clds/model/prop/Tca.java deleted file mode 100644 index 4fd6b595d..000000000 --- a/src/main/java/org/onap/clamp/clds/model/prop/Tca.java +++ /dev/null @@ -1,67 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP CLAMP - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights - * reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END============================================ - * =================================================================== - * ECOMP is a trademark and service mark of AT&T Intellectual Property. - */ - -package org.onap.clamp.clds.model.prop; - -import com.att.eelf.configuration.EELFLogger; -import com.att.eelf.configuration.EELFManager; -import com.fasterxml.jackson.databind.JsonNode; - -/** - * Parse ONAP Tca json properties. - * - */ -public class Tca extends AbstractModelElement { - - protected static final EELFLogger logger = EELFManager.getInstance().getLogger(Tca.class); - protected static final EELFLogger auditLogger = EELFManager.getInstance().getAuditLogger(); - - private TcaItem tcaItem; - - private static final String TYPE_TCA = "tca"; - - /** - * Parse Tca given json node - * - * @param modelProp - * @param modelBpmn - * @param modelJson - */ - public Tca(ModelProperties modelProp, ModelBpmn modelBpmn, JsonNode modelJson) { - super(TYPE_TCA, modelProp, modelBpmn, modelJson); - - // process Server_Configurations - if (modelElementJsonNode != null) { - tcaItem = new TcaItem(modelElementJsonNode.elements().next()); - } - } - - public TcaItem getTcaItem() { - return tcaItem; - } - - public static final String getType() { - return TYPE_TCA; - } - -} diff --git a/src/main/java/org/onap/clamp/clds/model/prop/TcaItem.java b/src/main/java/org/onap/clamp/clds/model/prop/TcaItem.java deleted file mode 100644 index 13bff0024..000000000 --- a/src/main/java/org/onap/clamp/clds/model/prop/TcaItem.java +++ /dev/null @@ -1,115 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP CLAMP - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights - * reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END============================================ - * =================================================================== - * ECOMP is a trademark and service mark of AT&T Intellectual Property. - */ - -package org.onap.clamp.clds.model.prop; - -import com.att.eelf.configuration.EELFLogger; -import com.att.eelf.configuration.EELFManager; -import com.fasterxml.jackson.databind.JsonNode; - -import java.util.ArrayList; -import java.util.Iterator; -import java.util.List; - -/** - * Parse ONAP Tca Item json properties. - * - */ -public class TcaItem { - - protected static final EELFLogger logger = EELFManager.getInstance().getLogger(TcaItem.class); - protected static final EELFLogger auditLogger = EELFManager.getInstance().getAuditLogger(); - - private String tcaName; - private String tcaUuId; - private String policyId; - private String eventName; - private String controlLoopSchemaType; - private List tcaThresholds; - - /** - * Parse Tca Item given json node - * - * @param node - */ - public TcaItem(JsonNode node) { - - tcaName = AbstractModelElement.getValueByName(node, "tname"); - tcaUuId = AbstractModelElement.getValueByName(node, "tuuid"); - policyId = AbstractModelElement.getValueByName(node, "tcaPolId"); - eventName = AbstractModelElement.getValueByName(node, "eventName"); - controlLoopSchemaType = AbstractModelElement.getValueByName(node, "controlLoopSchemaType"); - // process service Configurations - JsonNode serviceConfigurationsNode = node.get(node.size() - 1).get("serviceConfigurations"); - Iterator itr = serviceConfigurationsNode.elements(); - tcaThresholds = new ArrayList<>(); - while (itr.hasNext()) { - tcaThresholds.add(new TcaThreshold(itr.next())); - } - } - - public String getControlLoopSchemaType() { - return controlLoopSchemaType; - } - - public void setControlLoopSchemaType(String controlLoopSchemaType) { - this.controlLoopSchemaType = controlLoopSchemaType; - } - - public String getTcaName() { - return tcaName; - } - - public void setTcaName(String tcaName) { - this.tcaName = tcaName; - } - - public String getTcaUuId() { - return tcaUuId; - } - - public void setTcaUuId(String tcaUuId) { - this.tcaUuId = tcaUuId; - } - - public String getPolicyId() { - return policyId; - } - - public void setPolicyId(String policyId) { - this.policyId = policyId; - } - - public List getTcaThresholds() { - return tcaThresholds; - } - - public String getEventName() { - return eventName; - } - - public void setEventName(String eventName) { - this.eventName = eventName; - } - -} diff --git a/src/main/java/org/onap/clamp/clds/model/prop/TcaThreshold.java b/src/main/java/org/onap/clamp/clds/model/prop/TcaThreshold.java deleted file mode 100644 index d278c254f..000000000 --- a/src/main/java/org/onap/clamp/clds/model/prop/TcaThreshold.java +++ /dev/null @@ -1,96 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP CLAMP - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights - * reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END============================================ - * =================================================================== - * ECOMP is a trademark and service mark of AT&T Intellectual Property. - */ - -package org.onap.clamp.clds.model.prop; - -import com.att.eelf.configuration.EELFLogger; -import com.att.eelf.configuration.EELFManager; -import com.fasterxml.jackson.databind.JsonNode; - -/** - * Parse ONAP Tca Threshold json properties. - * - */ -public class TcaThreshold { - - protected static final EELFLogger logger = EELFManager.getInstance().getLogger(TcaThreshold.class); - protected static final EELFLogger auditLogger = EELFManager.getInstance().getAuditLogger(); - - private String fieldPath; - private String operator; - private Integer threshold; - private String closedLoopEventStatus; - - /** - * Parse Tca Threshhold given json node - * - * @param node - */ - public TcaThreshold(JsonNode node) { - - if (node.get(0) != null) { - fieldPath = node.get(0).asText(); - } - if (node.get(1) != null) { - operator = node.get(1).asText(); - } - if (node.get(2) != null) { - threshold = Integer.valueOf(node.get(2).asText()); - } - if (node.get(3) != null) { - closedLoopEventStatus = node.get(3).asText(); - } - } - - public String getFieldPath() { - return fieldPath; - } - - public void setFieldPath(String fieldPath) { - this.fieldPath = fieldPath; - } - - public String getOperator() { - return operator; - } - - public void setOperator(String operator) { - this.operator = operator; - } - - public Integer getThreshold() { - return threshold; - } - - public void setThreshold(Integer threshold) { - this.threshold = threshold; - } - - public String getClosedLoopEventStatus() { - return closedLoopEventStatus; - } - - public void setClosedLoopEventStatus(String closedLoopEventStatus) { - this.closedLoopEventStatus = closedLoopEventStatus; - } -} diff --git a/src/main/java/org/onap/clamp/clds/model/properties/AbstractModelElement.java b/src/main/java/org/onap/clamp/clds/model/properties/AbstractModelElement.java new file mode 100644 index 000000000..9b8d9d9ce --- /dev/null +++ b/src/main/java/org/onap/clamp/clds/model/properties/AbstractModelElement.java @@ -0,0 +1,242 @@ +/*- + * ============LICENSE_START======================================================= + * ONAP CLAMP + * ================================================================================ + * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights + * reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END============================================ + * =================================================================== + * ECOMP is a trademark and service mark of AT&T Intellectual Property. + */ + +package org.onap.clamp.clds.model.properties; + +import com.att.eelf.configuration.EELFLogger; +import com.att.eelf.configuration.EELFManager; +import com.fasterxml.jackson.databind.JsonNode; +import java.util.ArrayList; +import java.util.Iterator; +import java.util.List; + +/** + * Provide base ModelElement functionality. Perform base parsing of properties + * for a ModelElement (such as, VesCollector, Policy, Tca, Holmes, + * ...) + */ +public abstract class AbstractModelElement { + + protected static final EELFLogger logger = EELFManager.getInstance().getLogger(AbstractModelElement.class); + protected static final EELFLogger auditLogger = EELFManager.getInstance().getAuditLogger(); + + private final String type; + private final ModelBpmn modelBpmn; + private final String id; + protected String topicPublishes; + protected final JsonNode modelElementJsonNode; + private boolean isFound; + + private final ModelProperties modelProp; + + private static final String LOG_ELEMENT_NOT_FOUND = "Value '{}' for key 'name' not found in JSON"; + private static final String LOG_ELEMENT_NOT_FOUND_IN_JSON = "Value '{}' for key 'name' not found in JSON {}"; + + /** + * Perform base parsing of properties for a ModelElement (such as, + * VesCollector, Policy and Tca) + */ + protected AbstractModelElement(String type, ModelProperties modelProp, ModelBpmn modelBpmn, JsonNode modelJson) { + this.type = type; + this.modelProp = modelProp; + this.modelBpmn = modelBpmn; + this.id = modelBpmn.getId(type); + this.modelElementJsonNode = modelJson.get(id); + this.isFound = modelBpmn.isModelElementTypeInList(type); + } + + /** + * topicSubscribes is the topicPublishes of the from Model Element (the + * previous one in the chain). + * + * @return the topicSubscribes + */ + public String getTopicSubscribes() { + // get fromId for this type + String fromId = modelBpmn.getFromId(type); + // find the type of the from model element + String fromType = modelBpmn.getType(fromId); + // get the model element for the type + AbstractModelElement me = modelProp.getModelElementByType(fromType); + // get the topic publishes for the model element + return me.topicPublishes; + } + + /** + * @return the topicPublishes + */ + public String getTopicPublishes() { + return topicPublishes; + } + + /** + * Return the value field of the json node element that has a name field + * equals to the given name. + */ + public static String getValueByName(JsonNode nodeIn, String name) { + String value = null; + if (nodeIn != null) { + for (JsonNode node : nodeIn) { + if (node.path("name").asText().equals(name)) { + JsonNode vnode = node.path("value"); + if (vnode.isArray()) { + // if array, assume value is in first element + value = vnode.path(0).asText(); + } else { + // otherwise, just return text + value = vnode.asText(); + } + } + } + } + if (value == null || value.length() == 0) { + logger.warn(LOG_ELEMENT_NOT_FOUND, name); + } else { + logger.debug(LOG_ELEMENT_NOT_FOUND_IN_JSON, name, nodeIn.toString()); + } + return value; + } + + /** + * Return the value field of the json node element that has a name field + * that equals the given name. + */ + public static String getNodeValueByName(JsonNode nodeIn, String name) { + String value = null; + if (nodeIn != null) { + value = nodeIn.path(name).asText(); + } + if (value == null || value.length() == 0) { + logger.warn(LOG_ELEMENT_NOT_FOUND, name); + } else { + logger.debug(LOG_ELEMENT_NOT_FOUND_IN_JSON, name, nodeIn.toString()); + } + return value; + } + + /** + * Return the value field of the json node element that has a name field + * that equals the given name. + */ + public static List getNodeValuesByName(JsonNode nodeIn, String name) { + List values = new ArrayList<>(); + if (nodeIn != null) { + for (JsonNode node : nodeIn) { + if (node.path("name").asText().equals(name)) { + JsonNode vnode = node.path("value"); + if (vnode.isArray()) { + // if array, assume value is in first element + values.add(vnode.path(0).asText()); + } else { + // otherwise, just return text + values.add(vnode.asText()); + } + } + } + } + return values; + } + + /** + * Return the int value field of the json node element that has a name field + * equals to the given name. + */ + public static Integer getIntValueByName(JsonNode nodeIn, String name) { + String value = getValueByName(nodeIn, name); + return Integer.valueOf(value); + } + + /** + * Return an array of values for the field of the json node element that has + * a name field equals to the given name. + */ + public static List getValuesByName(JsonNode nodeIn, String name) { + List values = null; + if (nodeIn != null) { + for (JsonNode node : nodeIn) { + if (node.path("name").asText().equals(name)) { + values = getValuesList(node); + } + } + } + if (values == null || values.isEmpty()) { + logger.warn(LOG_ELEMENT_NOT_FOUND, name); + } else { + logger.debug(LOG_ELEMENT_NOT_FOUND_IN_JSON, name, nodeIn.toString()); + } + return values; + } + + /** + * Return an array of String values. + */ + public static List getValuesList(JsonNode nodeIn) { + ArrayList al = new ArrayList<>(); + if (nodeIn != null) { + Iterator itr = nodeIn.path("value").elements(); + while (itr.hasNext()) { + JsonNode node = itr.next(); + al.add(node.asText()); + } + } + return al; + } + + /** + * Return the value field of the json node element that has a name field + * equals to the given name. + */ + public String getValueByName(String name) { + return getValueByName(modelElementJsonNode, name); + } + + /** + * Return the int value field of the json node element that has a name field + * equals to the given name. + */ + public Integer getIntValueByName(String name) { + return getIntValueByName(modelElementJsonNode, name); + } + + /** + * Return an array of values for the field of the json node element that has + * a name field equals to the given name. + */ + public List getValuesByName(String name) { + return getValuesByName(modelElementJsonNode, name); + } + + /** + * @return the id + */ + public String getId() { + return id; + } + + /** + * @return the isFound + */ + public boolean isFound() { + return isFound; + } +} diff --git a/src/main/java/org/onap/clamp/clds/model/properties/Global.java b/src/main/java/org/onap/clamp/clds/model/properties/Global.java new file mode 100644 index 000000000..ef36fef91 --- /dev/null +++ b/src/main/java/org/onap/clamp/clds/model/properties/Global.java @@ -0,0 +1,131 @@ +/*- + * ============LICENSE_START======================================================= + * ONAP CLAMP + * ================================================================================ + * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights + * reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END============================================ + * =================================================================== + * ECOMP is a trademark and service mark of AT&T Intellectual Property. + */ + +package org.onap.clamp.clds.model.properties; + +import java.util.List; + +import com.att.eelf.configuration.EELFLogger; +import com.att.eelf.configuration.EELFManager; +import com.fasterxml.jackson.databind.JsonNode; + +/** + * Parse global json properties. + *

+ * Example json: + * "global":[{"name":"service","value":["vUSP"]},{"name":"vnf","value":["vCTS", + * "v3CDB"]},{"name":"location","value":["san_diego","san_antonio","kansas_city" + * ,"kings_mountain","Secaucus","lisle","concord","houston","akron"]}] + */ +public class Global { + protected static final EELFLogger logger = EELFManager.getInstance().getLogger(Global.class); + protected static final EELFLogger auditLogger = EELFManager.getInstance().getAuditLogger(); + + private String service; + private String actionSet; + private List resourceVf; + private List resourceVfc; + private List location; + + /** + * Parse global given json node. + * + * @param modelJson + */ + public Global(JsonNode modelJson) { + JsonNode globalNode = modelJson.get("global"); + service = AbstractModelElement.getValueByName(globalNode, "service"); + actionSet = AbstractModelElement.getValueByName(globalNode, "actionSet"); + resourceVf = AbstractModelElement.getValuesByName(globalNode, "vf"); + resourceVfc = AbstractModelElement.getValuesByName(globalNode, "vfc"); + location = AbstractModelElement.getValuesByName(globalNode, "location"); + } + + /** + * @return the service + */ + public String getService() { + return service; + } + + /** + * @param service + * the service to set + */ + public void setService(String service) { + this.service = service; + } + + /** + * @return the actionSet + */ + public String getActionSet() { + return actionSet; + } + + /** + * @return the resourceVf + */ + public List getResourceVf() { + return resourceVf; + } + + /** + * @param resourceVf + * the resourceVf to set + */ + public void setResourceVf(List resourceVf) { + this.resourceVf = resourceVf; + } + + /** + * @return the resourceVfc + */ + public List getResourceVfc() { + return resourceVfc; + } + + /** + * @param resourceVfc + * the resourceVfc to set + */ + public void setResourceVfc(List resourceVfc) { + this.resourceVfc = resourceVfc; + } + + /** + * @return the location + */ + public List getLocation() { + return location; + } + + /** + * @param location + * the location to set + */ + public void setLocation(List location) { + this.location = location; + } + +} diff --git a/src/main/java/org/onap/clamp/clds/model/properties/Holmes.java b/src/main/java/org/onap/clamp/clds/model/properties/Holmes.java new file mode 100644 index 000000000..db07cac4f --- /dev/null +++ b/src/main/java/org/onap/clamp/clds/model/properties/Holmes.java @@ -0,0 +1,71 @@ +/*- + * ============LICENSE_START======================================================= + * ONAP CLAMP + * ================================================================================ + * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights + * reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END============================================ + * =================================================================== + * ECOMP is a trademark and service mark of AT&T Intellectual Property. + */ + +package org.onap.clamp.clds.model.properties; + +import com.fasterxml.jackson.databind.JsonNode; + +/** + * Parse Holmes bpmn parameters json properties. + *

+ * Example json: + * [{"name":"correlationalLogic","value":"vcwx"},{"name":"configPolicyName","value":"cccc"}] + * + */ +public class Holmes extends AbstractModelElement { + + private static final String TYPE_HOLMES = "holmes"; + + private String correlationLogic; + + private String configPolicyName; + + /** + * Default constructor for Holmes Element + * + * @param modelProp + * The ModelProperties containing the all the info, like bpmn, + * bpmn params, etc ... + * @param modelBpmn + * @param modelJson + */ + public Holmes(ModelProperties modelProp, ModelBpmn modelBpmn, JsonNode modelJson) { + super(TYPE_HOLMES, modelProp, modelBpmn, modelJson); + + correlationLogic = this.getValueByName("correlationalLogic"); + configPolicyName = this.getValueByName("configPolicyName"); + } + + public static final String getType() { + return TYPE_HOLMES; + } + + public String getCorrelationLogic() { + return correlationLogic; + } + + public String getConfigPolicyName() { + return configPolicyName; + } + +} diff --git a/src/main/java/org/onap/clamp/clds/model/properties/ModelBpmn.java b/src/main/java/org/onap/clamp/clds/model/properties/ModelBpmn.java new file mode 100644 index 000000000..2b86b3fdc --- /dev/null +++ b/src/main/java/org/onap/clamp/clds/model/properties/ModelBpmn.java @@ -0,0 +1,171 @@ +/*- + * ============LICENSE_START======================================================= + * ONAP CLAMP + * ================================================================================ + * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights + * reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END============================================ + * =================================================================== + * ECOMP is a trademark and service mark of AT&T Intellectual Property. + */ + +package org.onap.clamp.clds.model.properties; + +import com.att.eelf.configuration.EELFLogger; +import com.att.eelf.configuration.EELFManager; +import com.fasterxml.jackson.databind.JsonNode; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.node.ArrayNode; +import com.fasterxml.jackson.databind.node.ObjectNode; + +import java.io.IOException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; +import java.util.Map.Entry; + +import org.onap.clamp.clds.exception.ModelBpmnException; +import org.onap.clamp.clds.service.CldsService; + +/** + * Parse Model BPMN properties. + *

+ * Example json: {"policy" :[{"id":"Policy_0oxeocn", "from":"StartEvent_1"}]} + */ +public class ModelBpmn { + protected static final EELFLogger logger = EELFManager.getInstance() + .getLogger(CldsService.class); + protected static final EELFLogger auditLogger = EELFManager.getInstance().getAuditLogger(); + // for each type, an array of entries + private final Map> entriesByType = new HashMap<>(); + // for each id, an array of entries + private final Map> entriesById = new HashMap<>(); + // List of all elementIds + private List bpmnElementIds; + + /** + * Create ModelBpmn and populate maps from json + * + * @param modelBpmnPropText + * @return + */ + public static ModelBpmn create(String modelBpmnPropText) { + try { + ModelBpmn modelBpmn = new ModelBpmn(); + ObjectMapper objectMapper = new ObjectMapper(); + ObjectNode root = objectMapper.readValue(modelBpmnPropText, ObjectNode.class); + // iterate over each entry like: + // "Policy":[{"id":"Policy","from":"StartEvent_1"}] + Iterator> entryItr = root.fields(); + List bpmnElementIdList = new ArrayList<>(); + while (entryItr.hasNext()) { + // process the entry + Entry entry = entryItr.next(); + String type = entry.getKey(); + ArrayNode arrayNode = (ArrayNode) entry.getValue(); + // process each id/from object, like: + // {"id":"Policy","from":"StartEvent_1"} + for (JsonNode anArrayNode : arrayNode) { + ObjectNode node = (ObjectNode) anArrayNode; + String id = node.get("id").asText(); + String fromId = node.get("from").asText(); + ModelBpmnEntry modelBpmnEntry = new ModelBpmnEntry(type, id, fromId); + modelBpmn.addEntry(modelBpmnEntry); + bpmnElementIdList.add(id); + } + modelBpmn.setBpmnElementIds(bpmnElementIdList); + } + return modelBpmn; + } catch (IOException e) { + throw new ModelBpmnException("Exception occurred during the decoding of the bpmn JSON", e); + } + } + + /** + * Add entry to both maps. + * + * @param entry + */ + private void addEntry(ModelBpmnEntry entry) { + addEntry(entriesByType, entry, entry.getType()); + addEntry(entriesById, entry, entry.getId()); + } + + /** + * Add an entry to provided map with provided key. + * + * @param map + * @param entry + * @param key + */ + private static void addEntry(Map> map, ModelBpmnEntry entry, String key) { + List list = map.computeIfAbsent(key, k -> new ArrayList<>()); + list.add(entry); + } + + /** + * This method verifies if the ModelElement Type (holmes, tca, ...) is in + * the list. + * + * @param type + * A model Element type (tca, ...) + * @return true if the element is found or false otherwise + */ + public boolean isModelElementTypeInList(String type) { + return entriesByType.get(type) != null; + } + + /** + * @return the id field given the ModelElement type + */ + public String getId(String type) { + String modelElementId = ""; + if (entriesByType.get(type) != null) { + modelElementId = entriesByType.get(type).get(0).getId(); + } + return modelElementId; + } + + /** + * @return the fromId field given the ModelElement type + */ + public String getFromId(String type) { + String modelElementFromIdId = ""; + if (entriesByType.get(type) != null) { + modelElementFromIdId = entriesByType.get(type).get(0).getFromId(); + } + return modelElementFromIdId; + } + + /** + * @return the ModelElement type given the ModelElement id + */ + public String getType(String id) { + return entriesById.get(id).get(0).getType(); + } + + /** + * @return list of elementIds from bpmn + */ + public List getBpmnElementIds() { + return bpmnElementIds; + } + + public void setBpmnElementIds(List bpmnElementIds) { + this.bpmnElementIds = bpmnElementIds; + } +} diff --git a/src/main/java/org/onap/clamp/clds/model/properties/ModelBpmnEntry.java b/src/main/java/org/onap/clamp/clds/model/properties/ModelBpmnEntry.java new file mode 100644 index 000000000..81cc48d63 --- /dev/null +++ b/src/main/java/org/onap/clamp/clds/model/properties/ModelBpmnEntry.java @@ -0,0 +1,102 @@ +/*- + * ============LICENSE_START======================================================= + * ONAP CLAMP + * ================================================================================ + * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights + * reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END============================================ + * =================================================================== + * ECOMP is a trademark and service mark of AT&T Intellectual Property. + */ + +package org.onap.clamp.clds.model.properties; + +import com.att.eelf.configuration.EELFLogger; +import com.att.eelf.configuration.EELFManager; + +/** + * Model BPMN property entry + *

+ * Example json: {"policy": + * [{"id":"Policy_0oxeocn", "from":"StartEvent_1"}]} + */ +public class ModelBpmnEntry { + protected static final EELFLogger logger = EELFManager.getInstance().getLogger(ModelBpmnEntry.class); + protected static final EELFLogger auditLogger = EELFManager.getInstance().getAuditLogger(); + + private String type; + private String id; + private String fromId; + + /** + * Parse the json so that the "id" and "from" fields can be retrieved on + * demand. + * + * @param type + * @param id + * @param fromId + */ + public ModelBpmnEntry(String type, String id, String fromId) { + this.type = type; + this.id = id; + this.fromId = fromId; + } + + /** + * @return the type + */ + public String getType() { + return type; + } + + /** + * @param type + * the type to set + */ + public void setType(String type) { + this.type = type; + } + + /** + * @return the id + */ + public String getId() { + return id; + } + + /** + * @param id + * the id to set + */ + public void setId(String id) { + this.id = id; + } + + /** + * @return the fromId + */ + public String getFromId() { + return fromId; + } + + /** + * @param fromId + * the fromId to set + */ + public void setFromId(String fromId) { + this.fromId = fromId; + } + +} diff --git a/src/main/java/org/onap/clamp/clds/model/properties/ModelProperties.java b/src/main/java/org/onap/clamp/clds/model/properties/ModelProperties.java new file mode 100644 index 000000000..f9b1c25a4 --- /dev/null +++ b/src/main/java/org/onap/clamp/clds/model/properties/ModelProperties.java @@ -0,0 +1,350 @@ +/*- + * ============LICENSE_START======================================================= + * ONAP CLAMP + * ================================================================================ + * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights + * reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END============================================ + * =================================================================== + * ECOMP is a trademark and service mark of AT&T Intellectual Property. + */ + +package org.onap.clamp.clds.model.properties; + +import com.att.eelf.configuration.EELFLogger; +import com.att.eelf.configuration.EELFManager; +import com.fasterxml.jackson.databind.JsonNode; +import com.fasterxml.jackson.databind.ObjectMapper; + +import java.io.IOException; +import java.lang.reflect.InvocationTargetException; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Set; +import java.util.concurrent.ConcurrentHashMap; + +import org.apache.camel.Exchange; +import org.onap.clamp.clds.exception.ModelBpmnException; +import org.onap.clamp.clds.model.CldsEvent; +import org.onap.clamp.clds.model.CldsModel; +import org.onap.clamp.clds.service.CldsService; + +/** + * Parse model properties. + */ +public class ModelProperties { + + protected static final EELFLogger logger = EELFManager.getInstance().getLogger(CldsService.class); + protected static final EELFLogger auditLogger = EELFManager.getInstance().getAuditLogger(); + private ModelBpmn modelBpmn; + private JsonNode modelJson; + private final String modelName; + private final String controlName; + private final String actionCd; + // Flag indicate whether it is triggered by Validation Test button from UI + private final boolean testOnly; + private Global global; + private final Map modelElements = new ConcurrentHashMap<>(); + private String currentModelElementId; + private String policyUniqueId; + private static final Object lock = new Object(); + private static Map, String> modelElementClasses = new ConcurrentHashMap<>(); + static { + synchronized (lock) { + modelElementClasses.put(Policy.class, Policy.getType()); + modelElementClasses.put(Tca.class, Tca.getType()); + modelElementClasses.put(Holmes.class, Holmes.getType()); + } + } + + /** + * Retain data required to parse the ModelElement objects. (Rather than + * parse them all - parse them on demand if requested.) + * + * @param modelName + * The model name coming form the UI + * @param controlName + * The closed loop name coming from the UI + * @param actionCd + * Type of operation PUT,UPDATE,DELETE + * @param isATest + * The test flag coming from the UI (for validation only, no + * query are physically executed) + * @param modelBpmnText + * The BPMN flow in JSON from the UI + * @param modelPropText + * The BPMN parameters for all boxes defined in modelBpmnTest + */ + public ModelProperties(String modelName, String controlName, String actionCd, boolean isATest, String modelBpmnText, + String modelPropText) { + try { + this.modelName = modelName; + this.controlName = controlName; + this.actionCd = actionCd; + this.testOnly = isATest; + modelBpmn = ModelBpmn.create(modelBpmnText); + modelJson = new ObjectMapper().readTree(modelPropText); + instantiateMissingModelElements(); + } catch (IOException e) { + throw new ModelBpmnException("Exception occurred when trying to decode the BPMN Properties JSON", e); + } + } + + /** + * This method is meant to ensure that one ModelElement instance exists for + * each ModelElement class. As new ModelElement classes could have been + * registered after instantiation of this ModelProperties, we need to build + * the missing ModelElement instances. + */ + private final void instantiateMissingModelElements() { + if (modelElementClasses.size() != modelElements.size()) { + Set missingTypes = new HashSet<>(modelElementClasses.values()); + missingTypes.removeAll(modelElements.keySet()); + // Parse the list of base Model Elements and build up the + // ModelElements + modelElementClasses.entrySet().stream().parallel() + .filter(entry -> (AbstractModelElement.class.isAssignableFrom(entry.getKey()) + && missingTypes.contains(entry.getValue()))) + .forEach(entry -> { + try { + modelElements.put(entry.getValue(), + (entry.getKey() + .getConstructor(ModelProperties.class, ModelBpmn.class, JsonNode.class) + .newInstance(this, modelBpmn, modelJson))); + } catch (InstantiationException | NoSuchMethodException | IllegalAccessException + | InvocationTargetException e) { + logger.warn("Unable to instantiate a ModelElement, exception follows: ", e); + } + }); + } + } + + /** + * Get the VF for a model. If return null if there is no VF. + * + * @param model + * @return + */ + public static String getVf(CldsModel model) { + List vfs = null; + try { + ObjectMapper mapper = new ObjectMapper(); + JsonNode modelJson = mapper.readTree(model.getPropText()); + Global global = new Global(modelJson); + vfs = global.getResourceVf(); + } catch (IOException e) { + logger.warn("no VF found", e); + } + String vf = null; + if (vfs != null && !vfs.isEmpty()) { + vf = vfs.get(0); + } + return vf; + } + + /** + * Create ModelProperties extracted from a CamelExchange. + * + * @param camelExchange + * The camel Exchange object that contains all info provided to + * the flow + * @return A model Properties created from the parameters found in + * camelExchange object + */ + public static ModelProperties create(Exchange camelExchange) { + String modelProp = (String) camelExchange.getProperty("modelProp"); + String modelBpmnProp = (String) camelExchange.getProperty("modelBpmnProp"); + String modelName = (String) camelExchange.getProperty("modelName"); + String controlName = (String) camelExchange.getProperty("controlName"); + String actionCd = (String) camelExchange.getProperty("actionCd"); + boolean isTest = (boolean) camelExchange.getProperty("isTest"); + return new ModelProperties(modelName, controlName, actionCd, isTest, modelBpmnProp, modelProp); + } + + /** + * return appropriate model element given the type + * + * @param type + * @return + */ + public AbstractModelElement getModelElementByType(String type) { + AbstractModelElement modelElement = modelElements.get(type); + if (modelElement == null) { + throw new IllegalArgumentException("Invalid or not found ModelElement type: " + type); + } + return modelElement; + } + + /** + * @return the modelName + */ + public String getModelName() { + return modelName; + } + + /** + * @return the controlName + */ + public String getControlName() { + return controlName; + } + + /** + * @return the controlNameAndPolicyUniqueId + */ + public String getControlNameAndPolicyUniqueId() { + return controlName + "_" + policyUniqueId; + } + + /** + * @return the currentPolicyName + */ + private String getCurrentPolicyName() { + return normalizePolicyScopeName(controlName + "_" + currentModelElementId); + } + + /** + * @return the currentPolicyScopeAndPolicyName + */ + public String getCurrentPolicyScopeAndPolicyName() { + return normalizePolicyScopeName(modelName + "." + getCurrentPolicyName()); + } + + /** + * @return the policyScopeAndNameWithUniqueId + */ + public String getPolicyScopeAndNameWithUniqueId() { + return normalizePolicyScopeName(modelName + "." + getCurrentPolicyName() + "_" + policyUniqueId); + } + + /** + * @return the currentPolicyScopeAndFullPolicyName + */ + public String getCurrentPolicyScopeAndFullPolicyName(String policyNamePrefix) { + return normalizePolicyScopeName(modelName + "." + policyNamePrefix + getCurrentPolicyName()); + } + + /** + * @return the currentPolicyScopeAndFullPolicyNameWithVersion + */ + public String getCurrentPolicyScopeAndFullPolicyNameWithVersion(String policyNamePrefix, int version) { + return normalizePolicyScopeName( + modelName + "." + policyNamePrefix + getCurrentPolicyName() + "." + version + ".xml"); + } + + /** + * Replace all '-' with '_' within policy scope and name. + * + * @param inName + * @return + */ + private String normalizePolicyScopeName(String inName) { + return inName.replaceAll("-", "_"); + } + + /** + * @return the currentModelElementId + */ + public String getCurrentModelElementId() { + return currentModelElementId; + } + + /** + * When generating a policy request for a model element, must set the id of + * that model element using this method. Used to generate the policy name. + * + * @param currentModelElementId + * the currentModelElementId to set + */ + public void setCurrentModelElementId(String currentModelElementId) { + this.currentModelElementId = currentModelElementId; + } + + /** + * @return the policyUniqueId + */ + public String getPolicyUniqueId() { + return policyUniqueId; + } + + /** + * When generating a policy request for a model element, must set the unique + * id of that policy using this method. Used to generate the policy name. + * + * @param policyUniqueId + * the policyUniqueId to set + */ + public void setPolicyUniqueId(String policyUniqueId) { + this.policyUniqueId = policyUniqueId; + } + + /** + * @return the actionCd + */ + public String getActionCd() { + return actionCd; + } + + /** + * @return the testOnly + */ + public boolean isTestOnly() { + return testOnly; + } + + /** + * @return the isCreateRequest + */ + public boolean isCreateRequest() { + switch (actionCd) { + case CldsEvent.ACTION_SUBMIT: + case CldsEvent.ACTION_RESTART: + return true; + } + return false; + } + + public boolean isStopRequest() { + switch (actionCd) { + case CldsEvent.ACTION_STOP: + return true; + } + return false; + } + + /** + * @return the global + */ + public Global getGlobal() { + if (global == null) { + global = new Global(modelJson); + } + return global; + } + + public static final synchronized void registerModelElement(Class modelElementClass, + String type) { + if (!modelElementClasses.containsKey(modelElementClass.getClass())) { + modelElementClasses.put(modelElementClass, type); + } + } + + public T getType(Class clazz) { + instantiateMissingModelElements(); + String type = modelElementClasses.get(clazz); + return (type != null ? (T) modelElements.get(type) : null); + } +} diff --git a/src/main/java/org/onap/clamp/clds/model/properties/Policy.java b/src/main/java/org/onap/clamp/clds/model/properties/Policy.java new file mode 100644 index 000000000..438936f75 --- /dev/null +++ b/src/main/java/org/onap/clamp/clds/model/properties/Policy.java @@ -0,0 +1,90 @@ +/*- + * ============LICENSE_START======================================================= + * ONAP CLAMP + * ================================================================================ + * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights + * reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END============================================ + * =================================================================== + * ECOMP is a trademark and service mark of AT&T Intellectual Property. + */ + +package org.onap.clamp.clds.model.properties; + +import com.att.eelf.configuration.EELFLogger; +import com.att.eelf.configuration.EELFManager; +import com.fasterxml.jackson.databind.JsonNode; + +import java.util.ArrayList; +import java.util.Iterator; +import java.util.List; + +/** + * Parse Policy json properties. + *

+ * Example json: + * "Policy_005sny1":[[{"name":"timeout","value":"5"}],{"policyConfigurations":[[ + * {"name":"recipe","value":["restart"]},{"name":"maxRetries","value":["3"]},{ + * "name":"retryTimeLimit","value":["180"]},{"name":"_id","value":["vf3RtPi"]},{ + * "name":"location","value":["san_diego"]},{"name":"resource","value":["vCTS"]} + * ,{"name":"onMaxRetriesLimit","value":[""]},{"name":"onTimeLimit","value":[""] + * },{"name":"onOtherFailure","value":[""]},{"name":"policy_parent","value":[""] + * }],[{"name":"recipe","value":["rebuild"]},{"name":"maxRetries","value":["3"]} + * ,{"name":"retryTimeLimit","value":["180"]},{"name":"_id","value":["89z8Ncl"]} + * ,{"name":"location","value":["san_diego"]},{"name":"resource","value":["vCTS" + * ]},{"name":"onMaxRetriesLimit","value":[""]},{"name":"onTimeLimit","value":[ + * ""]},{"name":"onOtherFailure","value":[""]},{"name":"policy_parent","value":[ + * "vf3RtPi"]}]]}] + */ +public class Policy extends AbstractModelElement { + protected static final EELFLogger logger = EELFManager.getInstance().getLogger(Policy.class); + protected static final EELFLogger auditLogger = EELFManager.getInstance().getAuditLogger(); + + private List policyChains; + + private static final String TYPE_POLICY = "policy"; + + /** + * Parse Policy given json node. + * + * @param modelProp + * @param modelBpmn + * @param modelJson + */ + public Policy(ModelProperties modelProp, ModelBpmn modelBpmn, JsonNode modelJson) { + super(TYPE_POLICY, modelProp, modelBpmn, modelJson); + + // process policies + if (modelElementJsonNode != null) { + Iterator itr = modelElementJsonNode.elements(); + policyChains = new ArrayList<>(); + while (itr.hasNext()) { + policyChains.add(new PolicyChain(itr.next())); + } + } + } + + /** + * @return the policyChains + */ + public List getPolicyChains() { + return policyChains; + } + + public static final String getType() { + return TYPE_POLICY; + } + +} diff --git a/src/main/java/org/onap/clamp/clds/model/properties/PolicyChain.java b/src/main/java/org/onap/clamp/clds/model/properties/PolicyChain.java new file mode 100644 index 000000000..dddd73506 --- /dev/null +++ b/src/main/java/org/onap/clamp/clds/model/properties/PolicyChain.java @@ -0,0 +1,114 @@ +/*- + * ============LICENSE_START======================================================= + * ONAP CLAMP + * ================================================================================ + * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights + * reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END============================================ + * =================================================================== + * ECOMP is a trademark and service mark of AT&T Intellectual Property. + */ + +package org.onap.clamp.clds.model.properties; + +import com.att.eelf.configuration.EELFLogger; +import com.att.eelf.configuration.EELFManager; +import com.fasterxml.jackson.databind.JsonNode; + +import java.util.ArrayList; +import java.util.Iterator; +import java.util.List; + +/** + * Parse Policy json properties. + * + * Example json: + * {"Policy_1e33tn8":{"PolicyTest1":[{"name":"pname","value":"PolicyTest1"},{ + * "name":"pid","value":"1"},{"name":"timeout","value":"345"},{ + * "policyConfigurations":[[{"name":"recipe","value":["restart"]},{"name": + * "maxRetries","value":["3"]},{"name":"retryTimeLimit","value":["180"]},{"name" + * :"_id","value":["q2JmHD5"]},{"name":"parentPolicy","value":[""]}],[{"name": + * "recipe","value":["rebuild"]},{"name":"maxRetries","value":["3"]},{"name": + * "retryTimeLimit","value":["180"]},{"name":"_id","value":["0ZqHdrR"]},{"name": + * "parentPolicy","value":[""]},{"name": + * "targetResourceId","value":["Eace933104d443b496b8.nodes.heat.vpg"]}]]}], + * "PolicyTest2":[{"name":"pname","value": + * "PolicyTest2"},{"name":"pid","value":"2"},{"name":"timeout","value":"345"},{ + * "policyConfigurations":[[{"name":"recipe","value":["restart"]},{"name": + * "maxRetries","value":["3"]},{"name":"retryTimeLimit","value":["180"]},{"name" + * :"_id","value":["q2JmHD5"]},{"name":"parentPolicy","value":[""]}],[{"name": + * "recipe","value":["rebuild"]},{"name":"maxRetries","value":["3"]},{"name": + * "retryTimeLimit","value":["180"]},{"name":"_id","value":["0ZqHdrR"]},{"name": + * "parentPolicy","value":[""]},{"name": + * "targetResourceId","value":["Eace933104d443b496b8.nodes.heat.vpg"]}]]}]}} f + * + */ +public class PolicyChain { + + protected static final EELFLogger logger = EELFManager.getInstance().getLogger(PolicyChain.class); + protected static final EELFLogger auditLogger = EELFManager.getInstance().getAuditLogger(); + + private String policyId; + private Integer timeout; + private List policyItems; + private String policyType; + + public PolicyChain(JsonNode node) { + + policyId = AbstractModelElement.getValueByName(node, "pid"); + timeout = AbstractModelElement.getIntValueByName(node, "timeout"); + policyType = AbstractModelElement.getValueByName(node, "policyType"); + + if(node != null && node.size() > 0) { + JsonNode policyNode = node.get(node.size() - 1).get("policyConfigurations"); + if(policyNode != null) { + Iterator itr = policyNode.elements(); + policyItems = new ArrayList<>(); + while (itr.hasNext()) { + policyItems.add(new PolicyItem(itr.next())); + } + + } + } + } + /** + * @return the policyId + */ + public String getPolicyId() { + return policyId; + } + + /** + * @return the timeout + */ + public Integer getTimeout() { + return timeout; + } + + /** + * @return the policyItems + */ + public List getPolicyItems() { + return policyItems; + } + + /** + * @return the policyType + */ + public String getPolicyType() { + return policyType; + } + +} diff --git a/src/main/java/org/onap/clamp/clds/model/properties/PolicyItem.java b/src/main/java/org/onap/clamp/clds/model/properties/PolicyItem.java new file mode 100644 index 000000000..d1c1906a2 --- /dev/null +++ b/src/main/java/org/onap/clamp/clds/model/properties/PolicyItem.java @@ -0,0 +1,189 @@ +/*- + * ============LICENSE_START======================================================= + * ONAP CLAMP + * ================================================================================ + * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights + * reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END============================================ + * =================================================================== + * ECOMP is a trademark and service mark of AT&T Intellectual Property. + */ + +package org.onap.clamp.clds.model.properties; + +import com.att.eelf.configuration.EELFLogger; +import com.att.eelf.configuration.EELFManager; +import com.fasterxml.jackson.databind.JsonNode; + +import java.util.List; + +/** + * Parse policyConfigurations from Policy json properties. + *

+ * Example json: + * "Policy_005sny1":[[{"name":"timeout","value":"5"}],{"policyConfigurations":[[ + * {"name":"recipe","value":["restart"]},{"name":"maxRetries","value":["3"]},{ + * "name":"retryTimeLimit","value":["180"]},{"name":"_id","value":["vf3RtPi"]},{ + * "name":"location","value":["san_diego"]},{"name":"resource","value":["vCTS"]} + * ,{"name":"onMaxRetriesLimit","value":[""]},{"name":"onTimeLimit","value":[""] + * },{"name":"onOtherFailure","value":[""]},{"name":"policy_parent","value":[""] + * }],[{"name":"recipe","value":["rebuild"]},{"name":"maxRetries","value":["3"]} + * ,{"name":"retryTimeLimit","value":["180"]},{"name":"_id","value":["89z8Ncl"]} + * ,{"name":"location","value":["san_diego"]},{"name":"resource","value":["vCTS" + * ]},{"name":"onMaxRetriesLimit","value":[""]},{"name":"onTimeLimit","value":[ + * ""]},{"name":"onOtherFailure","value":[""]},{"name":"policy_parent","value":[ + * "vf3RtPi"]},{"name": + * "targetResourceId","value":["Eace933104d443b496b8.nodes.heat.vpg"]}]]}] + */ +public class PolicyItem implements Cloneable { + protected static final EELFLogger logger = EELFManager.getInstance().getLogger(PolicyItem.class); + protected static final EELFLogger auditLogger = EELFManager.getInstance().getAuditLogger(); + + private String id; + private String recipe; + private int maxRetries; + private int retryTimeLimit; + private String parentPolicy; + private List parentPolicyConditions; + private String actor; + private String targetResourceId; + + /** + * Parse Policy given json node. + * + * @param node + */ + public PolicyItem(JsonNode node) { + id = AbstractModelElement.getValueByName(node, "_id"); + recipe = AbstractModelElement.getValueByName(node, "recipe"); + maxRetries = AbstractModelElement.getIntValueByName(node, "maxRetries"); + retryTimeLimit = AbstractModelElement.getIntValueByName(node, "retryTimeLimit"); + parentPolicy = AbstractModelElement.getValueByName(node, "parentPolicy"); + parentPolicyConditions = AbstractModelElement.getValuesByName(node, "parentPolicyConditions"); + targetResourceId = AbstractModelElement.getValueByName(node, "targetResourceId"); + + } + + /** + * @return the id + */ + public String getId() { + return id; + } + + /** + * @return the recipe + */ + public String getRecipe() { + return recipe; + } + + /** + * @set the id + */ + public void setId(String id) { + this.id = id; + } + + /** + * @set the recipe + */ + public void setRecipe(String recipe) { + this.recipe = recipe; + } + + /** + * @set the parentPolicy + */ + public void setParentPolicy(String parentPolicy) { + this.parentPolicy = parentPolicy; + } + + /** + * @set the maxRetries + */ + public void setMaxRetries(int maxRetries) { + this.maxRetries = maxRetries; + } + + /** + * @set the retryTimeLimit + */ + public void setRetryTimeLimit(int retryTimeLimit) { + this.retryTimeLimit = retryTimeLimit; + } + + /** + * @set the parentPolicyConditions + */ + public void setParentPolicyConditions(List parentPolicyConditions) { + this.parentPolicyConditions = parentPolicyConditions; + } + + /** + * @return the maxRetries + */ + public int getMaxRetries() { + return maxRetries; + } + + /** + * @return the retryTimeLimit + */ + public int getRetryTimeLimit() { + return retryTimeLimit; + } + + /** + * @return the parentPolicy + */ + public String getParentPolicy() { + return parentPolicy; + } + + /** + * @return the parentPolicyConditions + */ + public List getParentPolicyConditions() { + return parentPolicyConditions; + } + + /** + * @return the actor + */ + public String getActor() { + return actor; + } + + /** + * @set the actor + */ + public void setActor(String actor) { + this.actor = actor; + } + + public String getTargetResourceId() { + return targetResourceId; + } + + public void setTargetResourceId(String targetResourceId) { + this.targetResourceId = targetResourceId; + } + + @Override + public Object clone() throws CloneNotSupportedException { + return super.clone(); + } +} diff --git a/src/main/java/org/onap/clamp/clds/model/properties/ResourceGroup.java b/src/main/java/org/onap/clamp/clds/model/properties/ResourceGroup.java new file mode 100644 index 000000000..d3280876a --- /dev/null +++ b/src/main/java/org/onap/clamp/clds/model/properties/ResourceGroup.java @@ -0,0 +1,114 @@ +/*- + * ============LICENSE_START======================================================= + * ONAP CLAMP + * ================================================================================ + * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights + * reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END============================================ + * =================================================================== + * ECOMP is a trademark and service mark of AT&T Intellectual Property. + */ + +package org.onap.clamp.clds.model.properties; + +import com.att.eelf.configuration.EELFLogger; +import com.att.eelf.configuration.EELFManager; +import com.fasterxml.jackson.databind.JsonNode; + +import java.util.ArrayList; +import java.util.Iterator; +import java.util.List; + +/** + * Parse Resource Group json properties. + * + * Example json: + * {"TCA_0aji7go":{"Group1":[{"name":"rgname","value":"1493749598520"},{ + * "name":"rgfriendlyname","value":"Group1"},{"name":"policyName","value": + * "Policy1"},{"name":"policyId","value":"1"},{"serviceConfigurations":[[{"name" + * :"aaiMatchingFields","value":["complex.city","vserver.vserver-name"]},{"name" + * :"aaiSendFields","value":["complex.city","vserver.vserver-name"]},{"name": + * "eventSeverity","value":["OK"]},{"name":"eventSourceType","value":[""]},{ + * "name":"timeWindow","value":["100"]},{"name":"ageLimit","value":["100"]},{ + * "name":"createClosedLoopEventId","value":["Initial"]},{"name": + * "outputEventName","value":["ONSET"]}]]}],"Group2":[{"name":"rgname","value": + * "1493749665149"},{"name":"rgfriendlyname","value":"Group2"},{"name": + * "policyName","value":"Policy2"},{"name":"policyId","value":"2"},{ + * "serviceConfigurations":[[{"name":"aaiMatchingFields","value":[ + * "cloud-region.identity-url","vserver.vserver-name"]},{"name":"aaiSendFields", + * "value":["cloud-region.identity-url","vserver.vserver-name"]},{"name": + * "eventSeverity","value":["NORMAL"]},{"name":"eventSourceType","value":[""]},{ + * "name":"timeWindow","value":["1000"]},{"name":"ageLimit","value":["1000"]},{ + * "name":"createClosedLoopEventId","value":["Initial"]},{"name": + * "outputEventName","value":["ONSET"]}],[{"name":"aaiMatchingFields","value":[ + * "generic-vnf.vnf-name","vserver.vserver-name"]},{"name":"aaiSendFields", + * "value":["generic-vnf.vnf-name","vserver.vserver-name"]},{"name": + * "eventSeverity","value":["CRITICAL"]},{"name":"eventSourceType","value":[""]} + * ,{"name":"timeWindow","value":["3000"]},{"name":"ageLimit","value":["3000"]}, + * {"name":"createClosedLoopEventId","value":["Initial"]},{"name": + * "outputEventName","value":["ABATED"]}]]}]}} + * + */ +public class ResourceGroup { + + protected static final EELFLogger logger = EELFManager.getInstance().getLogger(ResourceGroup.class); + protected static final EELFLogger auditLogger = EELFManager.getInstance().getAuditLogger(); + + private String groupNumber; + private String policyId; + private List serviceConfigurations; + + /** + * Parse String Match Resource Group given json node. + * + * @param modelBpmn + * @param modelJson + */ + public ResourceGroup(JsonNode node) { + + groupNumber = AbstractModelElement.getValueByName(node, "rgname"); + policyId = AbstractModelElement.getValueByName(node, "policyId"); + + // process Server_Configurations + JsonNode serviceConfigurationsNode = node.get(node.size() - 1).get("serviceConfigurations"); + Iterator itr = serviceConfigurationsNode.elements(); + serviceConfigurations = new ArrayList<>(); + while (itr.hasNext()) { + serviceConfigurations.add(new ServiceConfiguration(itr.next())); + } + } + + /** + * @return the groupNumber + */ + public String getGroupNumber() { + return groupNumber; + } + + /** + * @return the policyId + */ + public String getPolicyId() { + return policyId; + } + + /** + * @return the serviceConfigurations + */ + public List getServiceConfigurations() { + return serviceConfigurations; + } + +} diff --git a/src/main/java/org/onap/clamp/clds/model/properties/ServiceConfiguration.java b/src/main/java/org/onap/clamp/clds/model/properties/ServiceConfiguration.java new file mode 100644 index 000000000..4b80ac68a --- /dev/null +++ b/src/main/java/org/onap/clamp/clds/model/properties/ServiceConfiguration.java @@ -0,0 +1,181 @@ +/*- + * ============LICENSE_START======================================================= + * ONAP CLAMP + * ================================================================================ + * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights + * reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END============================================ + * =================================================================== + * ECOMP is a trademark and service mark of AT&T Intellectual Property. + */ + +package org.onap.clamp.clds.model.properties; + +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; + +import com.att.eelf.configuration.EELFLogger; +import com.att.eelf.configuration.EELFManager; +import com.fasterxml.jackson.databind.JsonNode; + +/** + * Parse serviceConfigurations from Tca json properties. + *

+ * Example json: + * {"Tca_0aji7go":{"Group1":[{"name":"rgname","value":"1493749598520"},{ + * "name":"rgfriendlyname","value":"Group1"},{"name":"policyName","value": + * "Policy1"},{"name":"policyId","value":"1"},{"serviceConfigurations":[[{"name" + * :"aaiMatchingFields","value":["complex.city","vserver.vserver-name"]},{"name" + * :"aaiSendFields","value":["complex.city","vserver.vserver-name"]},{"name": + * "eventSeverity","value":["OK"]},{"name":"eventSourceType","value":[""]},{ + * "name":"timeWindow","value":["100"]},{"name":"ageLimit","value":["100"]},{ + * "name":"createClosedLoopEventId","value":["Initial"]},{"name": + * "outputEventName","value":["ONSET"]}]]}],"Group2":[{"name":"rgname","value": + * "1493749665149"},{"name":"rgfriendlyname","value":"Group2"},{"name": + * "policyName","value":"Policy2"},{"name":"policyId","value":"2"},{ + * "serviceConfigurations":[[{"name":"aaiMatchingFields","value":[ + * "cloud-region.identity-url","vserver.vserver-name"]},{"name":"aaiSendFields", + * "value":["cloud-region.identity-url","vserver.vserver-name"]},{"name": + * "eventSeverity","value":["NORMAL"]},{"name":"eventSourceType","value":[""]},{ + * "name":"timeWindow","value":["1000"]},{"name":"ageLimit","value":["1000"]},{ + * "name":"createClosedLoopEventId","value":["Initial"]},{"name": + * "outputEventName","value":["ONSET"]}],[{"name":"aaiMatchingFields","value":[ + * "generic-vnf.vnf-name","vserver.vserver-name"]},{"name":"aaiSendFields", + * "value":["generic-vnf.vnf-name","vserver.vserver-name"]},{"name": + * "eventSeverity","value":["CRITICAL"]},{"name":"eventSourceType","value":[""]} + * ,{"name":"timeWindow","value":["3000"]},{"name":"ageLimit","value":["3000"]}, + * {"name":"createClosedLoopEventId","value":["Initial"]},{"name": + * "outputEventName","value":["ABATED"]}]]}]}} + * + */ +public class ServiceConfiguration { + + protected static final EELFLogger logger = EELFManager.getInstance().getLogger(ServiceConfiguration.class); + protected static final EELFLogger auditLogger = EELFManager.getInstance().getAuditLogger(); + + private final List aaiMatchingFields; + private final List aaiSendFields; + // private final String groupNumber; + private final List resourceVf; + private final List resourceVfc; + private final String timeWindow; + private final String ageLimit; + private final String createClosedLoopEventId; + private final String outputEventName; + private final Map stringSet; + + /** + * Parse serviceConfigurations given json node. + * + * @param node + */ + public ServiceConfiguration(JsonNode node) { + aaiMatchingFields = AbstractModelElement.getValuesByName(node, "aaiMatchingFields"); + aaiSendFields = AbstractModelElement.getValuesByName(node, "aaiSendFields"); + // groupNumber = ModelElement.getValueByName(node, "groupNumber"); + resourceVf = AbstractModelElement.getValuesByName(node, "vf"); + resourceVfc = AbstractModelElement.getValuesByName(node, "vfc"); + timeWindow = AbstractModelElement.getValueByName(node, "timeWindow"); + ageLimit = AbstractModelElement.getValueByName(node, "ageLimit"); + createClosedLoopEventId = AbstractModelElement.getValueByName(node, "createClosedLoopEventId"); + outputEventName = AbstractModelElement.getValueByName(node, "outputEventName"); + + // process the stringSet fields + JsonNode ssNodes = node.findPath("stringSet"); + Iterator itr = ssNodes.elements(); + stringSet = new HashMap<>(); + while (itr.hasNext()) { + JsonNode ssNode = itr.next(); + String key = ssNode.path("name").asText(); + String value = ssNode.path("value").path(0).asText(); + if (key.length() != 0 && value.length() != 0) { + // only add string set field if not null + logger.debug("stringSet: " + key + "=" + value); + stringSet.put(key, value); + } + } + } + + /** + * @return the aaiMatchingFields + */ + public List getaaiMatchingFields() { + return aaiMatchingFields; + } + + /** + * @return the aaiSendFields + */ + public List getaaiSendFields() { + return aaiSendFields; + } + + /** + * @return the groupNumber + */ /* + * public String getGroupNumber() { return groupNumber; } + */ + /** + * @return the resourceVf + */ + public List getResourceVf() { + return resourceVf; + } + + /** + * @return the resourceVfc + */ + public List getResourceVfc() { + return resourceVfc; + } + + /** + * @return the timeWindow + */ + public String getTimeWindow() { + return timeWindow; + } + + /** + * @return the ageLimit + */ + public String getAgeLimit() { + return ageLimit; + } + + /** + * @return the createClosedLoopEventId + */ + public String getCreateClosedLoopEventId() { + return createClosedLoopEventId; + } + + /** + * @return the outputEventName + */ + public String getOutputEventName() { + return outputEventName; + } + + /** + * @return the stringSet + */ + public Map getStringSet() { + return stringSet; + } + +} diff --git a/src/main/java/org/onap/clamp/clds/model/properties/Tca.java b/src/main/java/org/onap/clamp/clds/model/properties/Tca.java new file mode 100644 index 000000000..90a8a1ab4 --- /dev/null +++ b/src/main/java/org/onap/clamp/clds/model/properties/Tca.java @@ -0,0 +1,67 @@ +/*- + * ============LICENSE_START======================================================= + * ONAP CLAMP + * ================================================================================ + * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights + * reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END============================================ + * =================================================================== + * ECOMP is a trademark and service mark of AT&T Intellectual Property. + */ + +package org.onap.clamp.clds.model.properties; + +import com.att.eelf.configuration.EELFLogger; +import com.att.eelf.configuration.EELFManager; +import com.fasterxml.jackson.databind.JsonNode; + +/** + * Parse ONAP Tca json properties. + * + */ +public class Tca extends AbstractModelElement { + + protected static final EELFLogger logger = EELFManager.getInstance().getLogger(Tca.class); + protected static final EELFLogger auditLogger = EELFManager.getInstance().getAuditLogger(); + + private TcaItem tcaItem; + + private static final String TYPE_TCA = "tca"; + + /** + * Parse Tca given json node + * + * @param modelProp + * @param modelBpmn + * @param modelJson + */ + public Tca(ModelProperties modelProp, ModelBpmn modelBpmn, JsonNode modelJson) { + super(TYPE_TCA, modelProp, modelBpmn, modelJson); + + // process Server_Configurations + if (modelElementJsonNode != null) { + tcaItem = new TcaItem(modelElementJsonNode.elements().next()); + } + } + + public TcaItem getTcaItem() { + return tcaItem; + } + + public static final String getType() { + return TYPE_TCA; + } + +} diff --git a/src/main/java/org/onap/clamp/clds/model/properties/TcaItem.java b/src/main/java/org/onap/clamp/clds/model/properties/TcaItem.java new file mode 100644 index 000000000..299143c72 --- /dev/null +++ b/src/main/java/org/onap/clamp/clds/model/properties/TcaItem.java @@ -0,0 +1,115 @@ +/*- + * ============LICENSE_START======================================================= + * ONAP CLAMP + * ================================================================================ + * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights + * reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END============================================ + * =================================================================== + * ECOMP is a trademark and service mark of AT&T Intellectual Property. + */ + +package org.onap.clamp.clds.model.properties; + +import com.att.eelf.configuration.EELFLogger; +import com.att.eelf.configuration.EELFManager; +import com.fasterxml.jackson.databind.JsonNode; + +import java.util.ArrayList; +import java.util.Iterator; +import java.util.List; + +/** + * Parse ONAP Tca Item json properties. + * + */ +public class TcaItem { + + protected static final EELFLogger logger = EELFManager.getInstance().getLogger(TcaItem.class); + protected static final EELFLogger auditLogger = EELFManager.getInstance().getAuditLogger(); + + private String tcaName; + private String tcaUuId; + private String policyId; + private String eventName; + private String controlLoopSchemaType; + private List tcaThresholds; + + /** + * Parse Tca Item given json node + * + * @param node + */ + public TcaItem(JsonNode node) { + + tcaName = AbstractModelElement.getValueByName(node, "tname"); + tcaUuId = AbstractModelElement.getValueByName(node, "tuuid"); + policyId = AbstractModelElement.getValueByName(node, "tcaPolId"); + eventName = AbstractModelElement.getValueByName(node, "eventName"); + controlLoopSchemaType = AbstractModelElement.getValueByName(node, "controlLoopSchemaType"); + // process service Configurations + JsonNode serviceConfigurationsNode = node.get(node.size() - 1).get("serviceConfigurations"); + Iterator itr = serviceConfigurationsNode.elements(); + tcaThresholds = new ArrayList<>(); + while (itr.hasNext()) { + tcaThresholds.add(new TcaThreshold(itr.next())); + } + } + + public String getControlLoopSchemaType() { + return controlLoopSchemaType; + } + + public void setControlLoopSchemaType(String controlLoopSchemaType) { + this.controlLoopSchemaType = controlLoopSchemaType; + } + + public String getTcaName() { + return tcaName; + } + + public void setTcaName(String tcaName) { + this.tcaName = tcaName; + } + + public String getTcaUuId() { + return tcaUuId; + } + + public void setTcaUuId(String tcaUuId) { + this.tcaUuId = tcaUuId; + } + + public String getPolicyId() { + return policyId; + } + + public void setPolicyId(String policyId) { + this.policyId = policyId; + } + + public List getTcaThresholds() { + return tcaThresholds; + } + + public String getEventName() { + return eventName; + } + + public void setEventName(String eventName) { + this.eventName = eventName; + } + +} diff --git a/src/main/java/org/onap/clamp/clds/model/properties/TcaThreshold.java b/src/main/java/org/onap/clamp/clds/model/properties/TcaThreshold.java new file mode 100644 index 000000000..6cd13f2ee --- /dev/null +++ b/src/main/java/org/onap/clamp/clds/model/properties/TcaThreshold.java @@ -0,0 +1,96 @@ +/*- + * ============LICENSE_START======================================================= + * ONAP CLAMP + * ================================================================================ + * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights + * reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END============================================ + * =================================================================== + * ECOMP is a trademark and service mark of AT&T Intellectual Property. + */ + +package org.onap.clamp.clds.model.properties; + +import com.att.eelf.configuration.EELFLogger; +import com.att.eelf.configuration.EELFManager; +import com.fasterxml.jackson.databind.JsonNode; + +/** + * Parse ONAP Tca Threshold json properties. + * + */ +public class TcaThreshold { + + protected static final EELFLogger logger = EELFManager.getInstance().getLogger(TcaThreshold.class); + protected static final EELFLogger auditLogger = EELFManager.getInstance().getAuditLogger(); + + private String fieldPath; + private String operator; + private Integer threshold; + private String closedLoopEventStatus; + + /** + * Parse Tca Threshhold given json node + * + * @param node + */ + public TcaThreshold(JsonNode node) { + + if (node.get(0) != null) { + fieldPath = node.get(0).asText(); + } + if (node.get(1) != null) { + operator = node.get(1).asText(); + } + if (node.get(2) != null) { + threshold = Integer.valueOf(node.get(2).asText()); + } + if (node.get(3) != null) { + closedLoopEventStatus = node.get(3).asText(); + } + } + + public String getFieldPath() { + return fieldPath; + } + + public void setFieldPath(String fieldPath) { + this.fieldPath = fieldPath; + } + + public String getOperator() { + return operator; + } + + public void setOperator(String operator) { + this.operator = operator; + } + + public Integer getThreshold() { + return threshold; + } + + public void setThreshold(Integer threshold) { + this.threshold = threshold; + } + + public String getClosedLoopEventStatus() { + return closedLoopEventStatus; + } + + public void setClosedLoopEventStatus(String closedLoopEventStatus) { + this.closedLoopEventStatus = closedLoopEventStatus; + } +} diff --git a/src/main/java/org/onap/clamp/clds/model/refprop/RefProp.java b/src/main/java/org/onap/clamp/clds/model/refprop/RefProp.java deleted file mode 100644 index f0cf71c1e..000000000 --- a/src/main/java/org/onap/clamp/clds/model/refprop/RefProp.java +++ /dev/null @@ -1,110 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP CLAMP - * ================================================================================ - * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights - * reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END============================================ - * =================================================================== - * ECOMP is a trademark and service mark of AT&T Intellectual Property. - */ - -package org.onap.clamp.clds.model.refprop; - -import com.fasterxml.jackson.databind.JsonNode; -import com.fasterxml.jackson.databind.ObjectMapper; - -import java.io.IOException; -import java.util.Properties; - -import javax.annotation.PostConstruct; - -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.context.ApplicationContext; -import org.springframework.core.io.Resource; -import org.springframework.stereotype.Component; - -/** - * Holds reference properties. - */ -@Component -public class RefProp { - - @Autowired - private ApplicationContext appContext; - private Properties prop; - @Value("${org.onap.clamp.config.files.cldsReference:'classpath:/clds/clds-reference.properties'}") - private String cldsReferenceValuesFile; - - @PostConstruct - public void loadConfig() throws IOException { - prop = new Properties(); - Resource resource = appContext.getResource(cldsReferenceValuesFile); - prop.load(resource.getInputStream()); - } - - /** - * get property value - * - * @param key - * @return - */ - public String getStringValue(String key) { - return prop.getProperty(key); - } - - /** - * get property value for a combo key (key1 + "." + key2). If not found just - * use key1. - * - * @param key1 - * @param key2 - * @return - */ - public String getStringValue(String key1, String key2) { - String value = getStringValue(key1 + "." + key2); - if (value == null || value.length() == 0) { - value = getStringValue(key1); - } - return value; - } - - /** - * Return json as objects that can be updated - * - * @param key - * @return - * @throws IOException - */ - public JsonNode getJsonTemplate(String key) throws IOException { - ObjectMapper objectMapper = new ObjectMapper(); - return objectMapper.readValue(getStringValue(key), JsonNode.class); - } - - /** - * Return json as objects that can be updated. First try with combo key - * (key1 + "." + key2), otherwise default to just key1. - * - * @param key1 - * @param key2 - * @return - * @throws IOException - */ - public JsonNode getJsonTemplate(String key1, String key2) throws IOException { - ObjectMapper objectMapper = new ObjectMapper(); - return objectMapper.readValue(getStringValue(key1, key2), JsonNode.class); - } -} diff --git a/src/main/java/org/onap/clamp/clds/model/sdc/SdcArtifact.java b/src/main/java/org/onap/clamp/clds/model/sdc/SdcArtifact.java new file mode 100644 index 000000000..0f7b391f6 --- /dev/null +++ b/src/main/java/org/onap/clamp/clds/model/sdc/SdcArtifact.java @@ -0,0 +1,112 @@ +/*- + * ============LICENSE_START======================================================= + * ONAP CLAMP + * ================================================================================ + * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights + * reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END============================================ + * =================================================================== + * ECOMP is a trademark and service mark of AT&T Intellectual Property. + */ + +package org.onap.clamp.clds.model.sdc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; + +@JsonIgnoreProperties(ignoreUnknown = true) +public class SdcArtifact { + + private String artifactName; + private String artifactType; + private String artifactUrl; + private String artifactDescription; + private String artifactTimeout; + private String artifactChecksum; + private String artifactUuid; + private String artifactVersion; + private String generatedFromUuid; + + public String getArtifactName() { + return artifactName; + } + + public void setArtifactName(String artifactName) { + this.artifactName = artifactName; + } + + public String getArtifactType() { + return artifactType; + } + + public void setArtifactType(String artifactType) { + this.artifactType = artifactType; + } + + public String getArtifactURL() { + return artifactUrl; + } + + public void setArtifactURL(String artifactURL) { + this.artifactUrl = artifactURL; + } + + public String getArtifactDescription() { + return artifactDescription; + } + + public void setArtifactDescription(String artifactDescription) { + this.artifactDescription = artifactDescription; + } + + public String getArtifactTimeout() { + return artifactTimeout; + } + + public void setArtifactTimeout(String artifactTimeout) { + this.artifactTimeout = artifactTimeout; + } + + public String getArtifactChecksum() { + return artifactChecksum; + } + + public void setArtifactChecksum(String artifactChecksum) { + this.artifactChecksum = artifactChecksum; + } + + public String getArtifactUUID() { + return artifactUuid; + } + + public void setArtifactUUID(String artifactUUID) { + this.artifactUuid = artifactUUID; + } + + public String getArtifactVersion() { + return artifactVersion; + } + + public void setArtifactVersion(String artifactVersion) { + this.artifactVersion = artifactVersion; + } + + public String getGeneratedFromUUID() { + return generatedFromUuid; + } + + public void setGeneratedFromUUID(String generatedFromUUID) { + this.generatedFromUuid = generatedFromUUID; + } +} diff --git a/src/main/java/org/onap/clamp/clds/model/sdc/SdcResource.java b/src/main/java/org/onap/clamp/clds/model/sdc/SdcResource.java new file mode 100644 index 000000000..9717d7c8e --- /dev/null +++ b/src/main/java/org/onap/clamp/clds/model/sdc/SdcResource.java @@ -0,0 +1,166 @@ +/*- + * ============LICENSE_START======================================================= + * ONAP CLAMP + * ================================================================================ + * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights + * reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END============================================ + * =================================================================== + * ECOMP is a trademark and service mark of AT&T Intellectual Property. + */ + +package org.onap.clamp.clds.model.sdc; + +import com.att.eelf.configuration.EELFLogger; +import com.att.eelf.configuration.EELFManager; +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; + +import java.math.BigDecimal; +import java.util.List; + +@JsonIgnoreProperties(ignoreUnknown = true) +public class SdcResource implements Comparable { + + protected static final EELFLogger logger = EELFManager.getInstance().getLogger(SdcResource.class); + protected static final EELFLogger metricsLogger = EELFManager.getInstance().getMetricsLogger(); + + private String resourceInstanceName; + private String resourceName; + private String resourceInvariantUUID; + private String resourceVersion; + private String resoucreType; + private String resourceUuid; + private List artifacts; + + public String getResourceInstanceName() { + return resourceInstanceName; + } + + public void setResourceInstanceName(String resourceInstanceName) { + this.resourceInstanceName = resourceInstanceName; + } + + public String getResourceName() { + return resourceName; + } + + public void setResourceName(String resourceName) { + this.resourceName = resourceName; + } + + public String getResourceInvariantUUID() { + return resourceInvariantUUID; + } + + public void setResourceInvariantUUID(String resourceInvUuid) { + this.resourceInvariantUUID = resourceInvUuid; + } + + public String getResourceVersion() { + return resourceVersion; + } + + public void setResourceVersion(String resourceVersion) { + this.resourceVersion = resourceVersion; + } + + public String getResoucreType() { + return resoucreType; + } + + public void setResoucreType(String resoucreType) { + this.resoucreType = resoucreType; + } + + public String getResourceUUID() { + return resourceUuid; + } + + public void setResourceUUID(String resourceUUID) { + this.resourceUuid = resourceUUID; + } + + public List getArtifacts() { + return artifacts; + } + + public void setArtifacts(List artifacts) { + this.artifacts = artifacts; + } + + @Override + public int compareTo(SdcResource in) { + // Compares this object with the specified object for order. + // Returns a negative integer, zero, or a positive integer as this + // object is less than, equal to, or greater than the specified object. + + // first compare based on name + int rtn = resourceInstanceName.compareToIgnoreCase(in.resourceInstanceName); + + if (rtn == 0) { + BigDecimal myVersion = convertVersion(resourceVersion); + BigDecimal inVersion = convertVersion(in.resourceVersion); + rtn = myVersion.compareTo(inVersion); + } + return rtn; + } + + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + ((resourceInstanceName == null) ? 0 : resourceInstanceName.hashCode()); + result = prime * result + ((resourceVersion == null) ? 0 : resourceVersion.hashCode()); + return result; + } + + @Override + public boolean equals(Object obj) { + if (this == obj) + return true; + if (obj == null) + return false; + if (getClass() != obj.getClass()) + return false; + SdcResource other = (SdcResource) obj; + if (resourceInstanceName == null) { + if (other.resourceInstanceName != null) + return false; + } else if (!resourceInstanceName.equals(other.resourceInstanceName)) + return false; + if (resourceVersion == null) { + if (other.resourceVersion != null) + return false; + } else if (!resourceVersion.equals(other.resourceVersion)) + return false; + return true; + } + + /** + * Convert version String into a BigDecimal + * + * @param versionText + * @return + */ + private BigDecimal convertVersion(String versionText) { + BigDecimal rtn = BigDecimal.valueOf(0.0); + try { + rtn = new BigDecimal(versionText); + } catch (NumberFormatException nfe) { + logger.warn("SDC version=" + versionText + " is not decimal for name=" + resourceInstanceName); + } + return rtn; + } +} diff --git a/src/main/java/org/onap/clamp/clds/model/sdc/SdcResourceBasicInfo.java b/src/main/java/org/onap/clamp/clds/model/sdc/SdcResourceBasicInfo.java new file mode 100644 index 000000000..3a60f6dcc --- /dev/null +++ b/src/main/java/org/onap/clamp/clds/model/sdc/SdcResourceBasicInfo.java @@ -0,0 +1,196 @@ +/*- + * ============LICENSE_START======================================================= + * ONAP CLAMP + * ================================================================================ + * Copyright (C) 2017 AT&T Intellectual Property. All rights + * reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END============================================ + * =================================================================== + * ECOMP is a trademark and service mark of AT&T Intellectual Property. + */ + +package org.onap.clamp.clds.model.sdc; + +import com.att.eelf.configuration.EELFLogger; +import com.att.eelf.configuration.EELFManager; +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; + +import java.math.BigDecimal; + +@JsonIgnoreProperties(ignoreUnknown = true) +public class SdcResourceBasicInfo implements Comparable { + + protected static final EELFLogger logger = EELFManager.getInstance() + .getLogger(SdcResourceBasicInfo.class); + protected static final EELFLogger metricsLogger = EELFManager.getInstance().getMetricsLogger(); + + private String uuid; + private String invariantUUID; + private String name; + private String version; + private String toscaModelURL; + private String category; + private String subCategory; + private String resourceType; + private String lifecycleState; + private String lastUpdaterUserId; + + @Override + public int compareTo(SdcResourceBasicInfo in) { + // Compares this object with the specified object for order. + // Returns a negative integer, zero, or a positive integer as this + // object is less than, equal to, or greater than the specified object. + // first compare based on name + int rtn = name.compareToIgnoreCase(in.name); + + if (rtn == 0) { + BigDecimal myVersion = convertVersion(version); + BigDecimal inVersion = convertVersion(in.version); + rtn = myVersion.compareTo(inVersion); + } + return rtn; + } + + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + ((name == null) ? 0 : name.hashCode()); + result = prime * result + ((version == null) ? 0 : version.hashCode()); + return result; + } + + @Override + public boolean equals(Object obj) { + if (this == obj) + return true; + if (obj == null) + return false; + if (getClass() != obj.getClass()) + return false; + SdcResourceBasicInfo other = (SdcResourceBasicInfo) obj; + if (name == null) { + if (other.name != null) + return false; + } else if (!name.equals(other.name)) + return false; + if (version == null) { + if (other.version != null) + return false; + } else if (!version.equals(other.version)) + return false; + return true; + } + + /** + * Convert version String into a BigDecimal + * + * @param version + * @return + */ + private BigDecimal convertVersion(String version) { + BigDecimal rtn = BigDecimal.valueOf(0.0); + try { + rtn = new BigDecimal(version); + } catch (NumberFormatException nfe) { + logger.warn("SDC version=" + version + " is not decimal for name=" + name); + } + return rtn; + } + + public String getUuid() { + return uuid; + } + + public void setUuid(String uuid) { + this.uuid = uuid; + } + + public String getInvariantUUID() { + return invariantUUID; + } + + public void setInvariantUUID(String invariantUUID) { + this.invariantUUID = invariantUUID; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getVersion() { + return version; + } + + public void setVersion(String version) { + this.version = version; + } + + public String getToscaModelURL() { + return toscaModelURL; + } + + public void setToscaModelURL(String toscaModelURL) { + this.toscaModelURL = toscaModelURL; + } + + public String getCategory() { + return category; + } + + public void setCategory(String category) { + this.category = category; + } + + public String getSubCategory() { + return subCategory; + } + + public void setSubCategory(String subCategory) { + this.subCategory = subCategory; + } + + public String getResourceType() { + return resourceType; + } + + public void setResourceType(String resourceType) { + this.resourceType = resourceType; + } + + public String getLifecycleState() { + return lifecycleState; + } + + public void setLifecycleState(String lifecycleState) { + this.lifecycleState = lifecycleState; + } + + public String getLastUpdaterUserId() { + return lastUpdaterUserId; + } + + public void setLastUpdaterUserId(String lastUpdaterUserId) { + this.lastUpdaterUserId = lastUpdaterUserId; + } + + public EELFLogger getLOGGER() { + return logger; + } +} diff --git a/src/main/java/org/onap/clamp/clds/model/sdc/SdcServiceDetail.java b/src/main/java/org/onap/clamp/clds/model/sdc/SdcServiceDetail.java new file mode 100644 index 000000000..8113ea546 --- /dev/null +++ b/src/main/java/org/onap/clamp/clds/model/sdc/SdcServiceDetail.java @@ -0,0 +1,142 @@ +/*- + * ============LICENSE_START======================================================= + * ONAP CLAMP + * ================================================================================ + * Copyright (C) 2017 AT&T Intellectual Property. All rights + * reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END============================================ + * =================================================================== + * ECOMP is a trademark and service mark of AT&T Intellectual Property. + */ + +package org.onap.clamp.clds.model.sdc; + +import java.util.List; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; + +@JsonIgnoreProperties(ignoreUnknown = true) +public class SdcServiceDetail { + + private String uuid; + private String invariantUUID; + private String name; + private String version; + private String toscaModelURL; + private String category; + private String lifecycleState; + private String lastUpdaterUserId; + private String distributionStatus; + private String lastUpdaterFullName; + private List resources; + private List artifacts; + + public String getUuid() { + return uuid; + } + + public void setUuid(String uuid) { + this.uuid = uuid; + } + + public String getInvariantUUID() { + return invariantUUID; + } + + public void setInvariantUUID(String invariantUUID) { + this.invariantUUID = invariantUUID; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getVersion() { + return version; + } + + public void setVersion(String version) { + this.version = version; + } + + public String getToscaModelURL() { + return toscaModelURL; + } + + public void setToscaModelURL(String toscaModelURL) { + this.toscaModelURL = toscaModelURL; + } + + public String getCategory() { + return category; + } + + public void setCategory(String category) { + this.category = category; + } + + public String getLifecycleState() { + return lifecycleState; + } + + public void setLifecycleState(String lifecycleState) { + this.lifecycleState = lifecycleState; + } + + public String getLastUpdaterUserId() { + return lastUpdaterUserId; + } + + public void setLastUpdaterUserId(String lastUpdaterUserId) { + this.lastUpdaterUserId = lastUpdaterUserId; + } + + public String getDistributionStatus() { + return distributionStatus; + } + + public void setDistributionStatus(String distributionStatus) { + this.distributionStatus = distributionStatus; + } + + public String getLastUpdaterFullName() { + return lastUpdaterFullName; + } + + public void setLastUpdaterFullName(String lastUpdaterFullName) { + this.lastUpdaterFullName = lastUpdaterFullName; + } + + public List getResources() { + return resources; + } + + public void setResources(List resources) { + this.resources = resources; + } + + public List getArtifacts() { + return artifacts; + } + + public void setArtifacts(List artifacts) { + this.artifacts = artifacts; + } + +} diff --git a/src/main/java/org/onap/clamp/clds/model/sdc/SdcServiceInfo.java b/src/main/java/org/onap/clamp/clds/model/sdc/SdcServiceInfo.java new file mode 100644 index 000000000..c829726a3 --- /dev/null +++ b/src/main/java/org/onap/clamp/clds/model/sdc/SdcServiceInfo.java @@ -0,0 +1,184 @@ +/*- + * ============LICENSE_START======================================================= + * ONAP CLAMP + * ================================================================================ + * Copyright (C) 2017 AT&T Intellectual Property. All rights + * reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END============================================ + * =================================================================== + * ECOMP is a trademark and service mark of AT&T Intellectual Property. + */ + +package org.onap.clamp.clds.model.sdc; + +import com.att.eelf.configuration.EELFLogger; +import com.att.eelf.configuration.EELFManager; + +import java.math.BigDecimal; + +public class SdcServiceInfo implements Comparable { + + protected static final EELFLogger logger = EELFManager.getInstance().getLogger(SdcServiceInfo.class); + protected static final EELFLogger auditLogger = EELFManager.getInstance().getAuditLogger(); + + private String uuid; + private String invariantUUID; + private String name; + private String version; + private String toscaModelURL; + private String category; + private String lifecycleState; + private String lastUpdaterUserId; + private String distributionStatus; + + public String getUuid() { + return uuid; + } + + public void setUuid(String uuid) { + this.uuid = uuid; + } + + public String getInvariantUUID() { + return invariantUUID; + } + + public void setInvariantUUID(String invariantUUID) { + this.invariantUUID = invariantUUID; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getVersion() { + return version; + } + + public void setVersion(String version) { + this.version = version; + } + + public String getToscaModelURL() { + return toscaModelURL; + } + + public void setToscaModelURL(String toscaModelURL) { + this.toscaModelURL = toscaModelURL; + } + + public String getCategory() { + return category; + } + + public void setCategory(String category) { + this.category = category; + } + + public String getLifecycleState() { + return lifecycleState; + } + + public void setLifecycleState(String lifecycleState) { + this.lifecycleState = lifecycleState; + } + + public String getLastUpdaterUserId() { + return lastUpdaterUserId; + } + + public void setLastUpdaterUserId(String lastUpdaterUserId) { + this.lastUpdaterUserId = lastUpdaterUserId; + } + + public String getDistributionStatus() { + return distributionStatus; + } + + public void setDistributionStatus(String distributionStatus) { + this.distributionStatus = distributionStatus; + } + + /** + * Compare using name and then version. Version is converted to a decimal. + */ + @Override + public int compareTo(SdcServiceInfo in) { + // Compares this object with the specified object for order. + // Returns a negative integer, zero, or a positive integer as this + // object is less than, equal to, or greater than the specified object. + // first compare based on name + int rtn = name.compareToIgnoreCase(in.name); + + if (rtn == 0) { + BigDecimal myVersion = convertVersion(version); + BigDecimal inVersion = convertVersion(in.version); + rtn = myVersion.compareTo(inVersion); + } + + return rtn; + } + + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + ((name == null) ? 0 : name.hashCode()); + result = prime * result + ((version == null) ? 0 : version.hashCode()); + return result; + } + + @Override + public boolean equals(Object obj) { + if (this == obj) + return true; + if (obj == null) + return false; + if (getClass() != obj.getClass()) + return false; + SdcServiceInfo other = (SdcServiceInfo) obj; + if (name == null) { + if (other.name != null) + return false; + } else if (!name.equals(other.name)) + return false; + if (version == null) { + if (other.version != null) + return false; + } else if (!version.equals(other.version)) + return false; + return true; + } + + /** + * Convert version String into a BigDecimal + * + * @param versionText + * @return + */ + private BigDecimal convertVersion(String versionText) { + try { + return new BigDecimal(versionText); + } catch (NumberFormatException nfe) { + logger.warn("SDC version=" + versionText + " is not decimal for name=" + name); + } + return BigDecimal.valueOf(0.0); + } + +} diff --git a/src/main/java/org/onap/clamp/clds/service/CldsService.java b/src/main/java/org/onap/clamp/clds/service/CldsService.java index a139de115..14e65627f 100644 --- a/src/main/java/org/onap/clamp/clds/service/CldsService.java +++ b/src/main/java/org/onap/clamp/clds/service/CldsService.java @@ -64,6 +64,7 @@ import org.onap.clamp.clds.camel.CamelProxy; import org.onap.clamp.clds.client.DcaeDispatcherServices; import org.onap.clamp.clds.client.DcaeInventoryServices; import org.onap.clamp.clds.client.req.sdc.SdcCatalogServices; +import org.onap.clamp.clds.config.CldsReferenceProperties; import org.onap.clamp.clds.dao.CldsDao; import org.onap.clamp.clds.exception.CldsConfigException; import org.onap.clamp.clds.exception.SdcCommunicationException; @@ -75,16 +76,15 @@ import org.onap.clamp.clds.model.CldsHealthCheck; import org.onap.clamp.clds.model.CldsInfo; import org.onap.clamp.clds.model.CldsModel; import org.onap.clamp.clds.model.CldsModelProp; -import org.onap.clamp.clds.model.CldsSdcResource; -import org.onap.clamp.clds.model.CldsSdcServiceDetail; -import org.onap.clamp.clds.model.CldsSdcServiceInfo; import org.onap.clamp.clds.model.CldsServiceData; import org.onap.clamp.clds.model.CldsTemplate; import org.onap.clamp.clds.model.DcaeEvent; import org.onap.clamp.clds.model.ValueItem; -import org.onap.clamp.clds.model.prop.AbstractModelElement; -import org.onap.clamp.clds.model.prop.ModelProperties; -import org.onap.clamp.clds.model.refprop.RefProp; +import org.onap.clamp.clds.model.properties.AbstractModelElement; +import org.onap.clamp.clds.model.properties.ModelProperties; +import org.onap.clamp.clds.model.sdc.SdcResource; +import org.onap.clamp.clds.model.sdc.SdcServiceDetail; +import org.onap.clamp.clds.model.sdc.SdcServiceInfo; import org.onap.clamp.clds.transform.XslTransformer; import org.onap.clamp.clds.util.LoggingUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -142,7 +142,7 @@ public class CldsService extends SecureServiceBase { @Autowired private XslTransformer cldsBpmnTransformer; @Autowired - private RefProp refProp; + private CldsReferenceProperties refProp; @Autowired private SdcCatalogServices sdcCatalogServices; @Autowired @@ -680,14 +680,14 @@ public class CldsService extends SecureServiceBase { return ""; } ObjectMapper objectMapper = new ObjectMapper(); - List rawList = objectMapper.readValue(responseStr, - objectMapper.getTypeFactory().constructCollectionType(List.class, CldsSdcServiceInfo.class)); + List rawList = objectMapper.readValue(responseStr, + objectMapper.getTypeFactory().constructCollectionType(List.class, SdcServiceInfo.class)); ObjectNode invariantIdServiceNode = objectMapper.createObjectNode(); ObjectNode serviceNode = objectMapper.createObjectNode(); logger.info("value of cldsserviceiNfolist: {}", rawList); if (rawList != null && !rawList.isEmpty()) { - List cldsSdcServiceInfoList = sdcCatalogServices.removeDuplicateServices(rawList); - for (CldsSdcServiceInfo currCldsSdcServiceInfo : cldsSdcServiceInfoList) { + List cldsSdcServiceInfoList = sdcCatalogServices.removeDuplicateServices(rawList); + for (SdcServiceInfo currCldsSdcServiceInfo : cldsSdcServiceInfoList) { if (currCldsSdcServiceInfo != null) { invariantIdServiceNode.put(currCldsSdcServiceInfo.getInvariantUUID(), currCldsSdcServiceInfo.getName()); @@ -700,7 +700,7 @@ public class CldsService extends SecureServiceBase { private String createPropertiesObjectByUUID(String globalProps, String cldsResponseStr) throws IOException { ObjectMapper mapper = new ObjectMapper(); - CldsSdcServiceDetail cldsSdcServiceDetail = mapper.readValue(cldsResponseStr, CldsSdcServiceDetail.class); + SdcServiceDetail cldsSdcServiceDetail = mapper.readValue(cldsResponseStr, SdcServiceDetail.class); ObjectNode globalPropsJson = null; if (cldsSdcServiceDetail != null && cldsSdcServiceDetail.getUuid() != null) { /** @@ -745,18 +745,18 @@ public class CldsService extends SecureServiceBase { } private void createVfObjectNode(ObjectNode vfObjectNode2, ObjectMapper mapper, - List rawCldsSdcResourceList) { + List rawCldsSdcResourceList) { ObjectNode vfNode = mapper.createObjectNode(); vfNode.put("", ""); // To remove repeated resource instance name from // resourceInstanceList - List cldsSdcResourceList = sdcCatalogServices + List cldsSdcResourceList = sdcCatalogServices .removeDuplicateSdcResourceInstances(rawCldsSdcResourceList); /** * Creating vf resource node using cldsSdcResource Object */ if (cldsSdcResourceList != null && !cldsSdcResourceList.isEmpty()) { - for (CldsSdcResource cldsSdcResource : cldsSdcResourceList) { + for (SdcResource cldsSdcResource : cldsSdcResourceList) { if (cldsSdcResource != null && "VF".equalsIgnoreCase(cldsSdcResource.getResoucreType())) { vfNode.put(cldsSdcResource.getResourceUUID(), cldsSdcResource.getResourceName()); } @@ -792,7 +792,7 @@ public class CldsService extends SecureServiceBase { vfObjectNode2.putPOJO("alarmCondition", alarmStringJsonNode); } - private ObjectNode createByVFCObjectNode(ObjectMapper mapper, List cldsSdcResourceList) { + private ObjectNode createByVFCObjectNode(ObjectMapper mapper, List cldsSdcResourceList) { ObjectNode emptyObjectNode = mapper.createObjectNode(); ObjectNode emptyvfcobjectNode = mapper.createObjectNode(); ObjectNode vfCObjectNode = mapper.createObjectNode(); @@ -800,7 +800,7 @@ public class CldsService extends SecureServiceBase { ObjectNode subVfCObjectNode = mapper.createObjectNode(); subVfCObjectNode.putPOJO("vfc", emptyObjectNode); if (cldsSdcResourceList != null && !cldsSdcResourceList.isEmpty()) { - for (CldsSdcResource cldsSdcResource : cldsSdcResourceList) { + for (SdcResource cldsSdcResource : cldsSdcResourceList) { if (cldsSdcResource != null && "VF".equalsIgnoreCase(cldsSdcResource.getResoucreType())) { vfCObjectNode.putPOJO(cldsSdcResource.getResourceUUID(), subVfCObjectNode); } diff --git a/src/test/java/org/onap/clamp/clds/AbstractItCase.java b/src/test/java/org/onap/clamp/clds/AbstractItCase.java index 2903248b6..7e2908841 100644 --- a/src/test/java/org/onap/clamp/clds/AbstractItCase.java +++ b/src/test/java/org/onap/clamp/clds/AbstractItCase.java @@ -25,7 +25,7 @@ package org.onap.clamp.clds; import org.junit.BeforeClass; import org.onap.clamp.clds.client.req.policy.PolicyClient; -import org.onap.clamp.clds.model.refprop.RefProp; +import org.onap.clamp.clds.config.CldsReferenceProperties; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.test.context.ActiveProfiles; @@ -33,7 +33,7 @@ import org.springframework.test.context.ActiveProfiles; public abstract class AbstractItCase { @Autowired - protected RefProp refProp; + protected CldsReferenceProperties refProp; @Autowired protected PolicyClient policyClient; diff --git a/src/test/java/org/onap/clamp/clds/it/CldsReferencePropertiesItCase.java b/src/test/java/org/onap/clamp/clds/it/CldsReferencePropertiesItCase.java new file mode 100644 index 000000000..6c94fc16f --- /dev/null +++ b/src/test/java/org/onap/clamp/clds/it/CldsReferencePropertiesItCase.java @@ -0,0 +1,63 @@ +/*- + * ============LICENSE_START======================================================= + * ONAP CLAMP + * ================================================================================ + * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights + * reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END============================================ + * =================================================================== + * ECOMP is a trademark and service mark of AT&T Intellectual Property. + */ + +package org.onap.clamp.clds.it; + +import com.att.eelf.configuration.EELFLogger; +import com.att.eelf.configuration.EELFManager; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.node.ObjectNode; + +import java.io.IOException; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.onap.clamp.clds.AbstractItCase; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.junit4.SpringRunner; + +/** + * Test corg.onap.clamp.ClampDesigner.model.refprop package using RefProp. + */ +@RunWith(SpringRunner.class) +@SpringBootTest +public class CldsReferencePropertiesItCase extends AbstractItCase { + + protected static final EELFLogger logger = EELFManager.getInstance().getLogger(CldsReferencePropertiesItCase.class); + + /** + * Test getting prop value as a JSON Node / template. + * + * @throws IOException + * when JSON parsing fails + */ + @Test + public void testJsonTemplate() throws IOException { + ObjectNode root = (ObjectNode) refProp.getJsonTemplate("tca.template"); + root.put("closedLoopControlName", "ClosedLoop-FRWL-SIG-1582f840-2881-11e6-b4ec-005056a9d756"); + ObjectMapper mapper = new ObjectMapper(); + String jsonText = mapper.writeValueAsString(root); + logger.error("Exception caught IllegalArgumentException as expected"); + // assertEquals(topicsJson, ref.getTopicsToJson()); + } +} diff --git a/src/test/java/org/onap/clamp/clds/it/HolmesPolicyDelegateItCase.java b/src/test/java/org/onap/clamp/clds/it/HolmesPolicyDelegateItCase.java index 6f5c24d5e..c530a059f 100644 --- a/src/test/java/org/onap/clamp/clds/it/HolmesPolicyDelegateItCase.java +++ b/src/test/java/org/onap/clamp/clds/it/HolmesPolicyDelegateItCase.java @@ -31,8 +31,8 @@ import org.junit.Test; import org.junit.runner.RunWith; import org.onap.clamp.clds.AbstractItCase; import org.onap.clamp.clds.client.HolmesPolicyDelegate; -import org.onap.clamp.clds.model.prop.Holmes; -import org.onap.clamp.clds.model.prop.ModelProperties; +import org.onap.clamp.clds.model.properties.Holmes; +import org.onap.clamp.clds.model.properties.ModelProperties; import org.onap.clamp.clds.util.ResourceFileUtil; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringRunner; diff --git a/src/test/java/org/onap/clamp/clds/it/OperationPolicyReqItCase.java b/src/test/java/org/onap/clamp/clds/it/OperationPolicyReqItCase.java index 9013e0c41..873b01922 100644 --- a/src/test/java/org/onap/clamp/clds/it/OperationPolicyReqItCase.java +++ b/src/test/java/org/onap/clamp/clds/it/OperationPolicyReqItCase.java @@ -38,9 +38,9 @@ import org.junit.runner.RunWith; import org.onap.clamp.clds.AbstractItCase; import org.onap.clamp.clds.client.req.policy.OperationalPolicyReq; import org.onap.clamp.clds.model.CldsEvent; -import org.onap.clamp.clds.model.prop.ModelProperties; -import org.onap.clamp.clds.model.prop.Policy; -import org.onap.clamp.clds.model.prop.PolicyChain; +import org.onap.clamp.clds.model.properties.ModelProperties; +import org.onap.clamp.clds.model.properties.Policy; +import org.onap.clamp.clds.model.properties.PolicyChain; import org.onap.clamp.clds.util.ResourceFileUtil; import org.onap.policy.api.AttributeType; import org.onap.policy.controlloop.policy.builder.BuilderException; diff --git a/src/test/java/org/onap/clamp/clds/it/PolicyClientItCase.java b/src/test/java/org/onap/clamp/clds/it/PolicyClientItCase.java index 71bd2d521..0e8a21772 100644 --- a/src/test/java/org/onap/clamp/clds/it/PolicyClientItCase.java +++ b/src/test/java/org/onap/clamp/clds/it/PolicyClientItCase.java @@ -37,10 +37,10 @@ import org.onap.clamp.clds.AbstractItCase; import org.onap.clamp.clds.client.req.policy.OperationalPolicyReq; import org.onap.clamp.clds.client.req.tca.TcaRequestFormatter; import org.onap.clamp.clds.model.CldsEvent; -import org.onap.clamp.clds.model.prop.ModelProperties; -import org.onap.clamp.clds.model.prop.Policy; -import org.onap.clamp.clds.model.prop.PolicyChain; -import org.onap.clamp.clds.model.prop.Tca; +import org.onap.clamp.clds.model.properties.ModelProperties; +import org.onap.clamp.clds.model.properties.Policy; +import org.onap.clamp.clds.model.properties.PolicyChain; +import org.onap.clamp.clds.model.properties.Tca; import org.onap.clamp.clds.util.ResourceFileUtil; import org.onap.policy.api.AttributeType; import org.springframework.boot.test.context.SpringBootTest; diff --git a/src/test/java/org/onap/clamp/clds/it/RefPropItCase.java b/src/test/java/org/onap/clamp/clds/it/RefPropItCase.java deleted file mode 100644 index 8f76b1822..000000000 --- a/src/test/java/org/onap/clamp/clds/it/RefPropItCase.java +++ /dev/null @@ -1,63 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP CLAMP - * ================================================================================ - * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights - * reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END============================================ - * =================================================================== - * ECOMP is a trademark and service mark of AT&T Intellectual Property. - */ - -package org.onap.clamp.clds.it; - -import com.att.eelf.configuration.EELFLogger; -import com.att.eelf.configuration.EELFManager; -import com.fasterxml.jackson.databind.ObjectMapper; -import com.fasterxml.jackson.databind.node.ObjectNode; - -import java.io.IOException; - -import org.junit.Test; -import org.junit.runner.RunWith; -import org.onap.clamp.clds.AbstractItCase; -import org.springframework.boot.test.context.SpringBootTest; -import org.springframework.test.context.junit4.SpringRunner; - -/** - * Test corg.onap.clamp.ClampDesigner.model.refprop package using RefProp. - */ -@RunWith(SpringRunner.class) -@SpringBootTest -public class RefPropItCase extends AbstractItCase { - - protected static final EELFLogger logger = EELFManager.getInstance().getLogger(RefPropItCase.class); - - /** - * Test getting prop value as a JSON Node / template. - * - * @throws IOException - * when JSON parsing fails - */ - @Test - public void testJsonTemplate() throws IOException { - ObjectNode root = (ObjectNode) refProp.getJsonTemplate("tca.template"); - root.put("closedLoopControlName", "ClosedLoop-FRWL-SIG-1582f840-2881-11e6-b4ec-005056a9d756"); - ObjectMapper mapper = new ObjectMapper(); - String jsonText = mapper.writeValueAsString(root); - logger.error("Exception caught IllegalArgumentException as expected"); - // assertEquals(topicsJson, ref.getTopicsToJson()); - } -} diff --git a/src/test/java/org/onap/clamp/clds/it/SdcCatalogServicesItCase.java b/src/test/java/org/onap/clamp/clds/it/SdcCatalogServicesItCase.java index 548212ef8..7f962215b 100644 --- a/src/test/java/org/onap/clamp/clds/it/SdcCatalogServicesItCase.java +++ b/src/test/java/org/onap/clamp/clds/it/SdcCatalogServicesItCase.java @@ -35,10 +35,10 @@ import org.mockito.Mockito; import org.onap.clamp.clds.AbstractItCase; import org.onap.clamp.clds.client.req.sdc.SdcCatalogServices; import org.onap.clamp.clds.model.CldsAlarmCondition; -import org.onap.clamp.clds.model.CldsSdcResource; -import org.onap.clamp.clds.model.CldsSdcResourceBasicInfo; -import org.onap.clamp.clds.model.CldsSdcServiceInfo; import org.onap.clamp.clds.model.CldsServiceData; +import org.onap.clamp.clds.model.sdc.SdcResource; +import org.onap.clamp.clds.model.sdc.SdcResourceBasicInfo; +import org.onap.clamp.clds.model.sdc.SdcServiceInfo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringRunner; @@ -55,33 +55,33 @@ public class SdcCatalogServicesItCase extends AbstractItCase { @Test public void removeDuplicateServicesTest() { - CldsSdcServiceInfo service1a = new CldsSdcServiceInfo(); + SdcServiceInfo service1a = new SdcServiceInfo(); service1a.setName("service1"); service1a.setVersion("1.0"); service1a.setInvariantUUID("invariantUUID1.0"); - List rawCldsSdcServiceList = new LinkedList<>(); + List rawCldsSdcServiceList = new LinkedList<>(); rawCldsSdcServiceList.add(service1a); rawCldsSdcServiceList.add(service1a); - CldsSdcServiceInfo service1b = new CldsSdcServiceInfo(); + SdcServiceInfo service1b = new SdcServiceInfo(); service1b.setName("service1"); service1b.setVersion("1.1"); service1b.setInvariantUUID("invariantUUID1.1"); rawCldsSdcServiceList.add(service1b); - CldsSdcServiceInfo service1c = new CldsSdcServiceInfo(); + SdcServiceInfo service1c = new SdcServiceInfo(); service1c.setName("service1"); service1c.setVersion("1.2"); service1c.setInvariantUUID("invariantUUID1.2"); rawCldsSdcServiceList.add(service1c); - CldsSdcServiceInfo service2 = new CldsSdcServiceInfo(); + SdcServiceInfo service2 = new SdcServiceInfo(); service2.setName("service2"); service2.setVersion("1.0"); service2.setInvariantUUID("invariantUUID2.0"); rawCldsSdcServiceList.add(service2); SdcCatalogServices catalogServices = new SdcCatalogServices(); - List resultList = catalogServices.removeDuplicateServices(rawCldsSdcServiceList); + List resultList = catalogServices.removeDuplicateServices(rawCldsSdcServiceList); assertTrue(resultList.size() == 2); - CldsSdcServiceInfo res1; - CldsSdcServiceInfo res2; + SdcServiceInfo res1; + SdcServiceInfo res2; if ("service1".equals(resultList.get(0).getName())) { res1 = resultList.get(0); res2 = resultList.get(1); @@ -97,27 +97,27 @@ public class SdcCatalogServicesItCase extends AbstractItCase { @Test public void removeDuplicateSdcResourceInstancesTest() { - List rawCldsSdcResourceList = new LinkedList<>(); - CldsSdcResource sdcResource1a = new CldsSdcResource(); + List rawCldsSdcResourceList = new LinkedList<>(); + SdcResource sdcResource1a = new SdcResource(); sdcResource1a.setResourceInstanceName("resource1"); sdcResource1a.setResourceVersion("1.0"); rawCldsSdcResourceList.add(sdcResource1a); - CldsSdcResource sdcResource1b = new CldsSdcResource(); + SdcResource sdcResource1b = new SdcResource(); sdcResource1b.setResourceInstanceName("resource1"); sdcResource1b.setResourceVersion("1.1"); rawCldsSdcResourceList.add(sdcResource1b); - CldsSdcResource sdcResource1c = new CldsSdcResource(); + SdcResource sdcResource1c = new SdcResource(); sdcResource1c.setResourceInstanceName("resource1"); sdcResource1c.setResourceVersion("1.2"); rawCldsSdcResourceList.add(sdcResource1c); - CldsSdcResource sdcResource2 = new CldsSdcResource(); + SdcResource sdcResource2 = new SdcResource(); sdcResource2.setResourceInstanceName("resource2"); sdcResource2.setResourceVersion("1.0"); rawCldsSdcResourceList.add(sdcResource2); SdcCatalogServices catalogServices = new SdcCatalogServices(); - List resultList = catalogServices.removeDuplicateSdcResourceInstances(rawCldsSdcResourceList); - CldsSdcResource res1; - CldsSdcResource res2; + List resultList = catalogServices.removeDuplicateSdcResourceInstances(rawCldsSdcResourceList); + SdcResource res1; + SdcResource res2; if ("resource1".equals(resultList.get(0).getResourceInstanceName())) { res1 = resultList.get(0); res2 = resultList.get(1); @@ -133,28 +133,28 @@ public class SdcCatalogServicesItCase extends AbstractItCase { @Test public void removeDuplicateSdcResourceBasicInfoTest() { - List rawCldsSdcResourceList = new LinkedList<>(); - CldsSdcResourceBasicInfo sdcResource1a = new CldsSdcResourceBasicInfo(); + List rawCldsSdcResourceList = new LinkedList<>(); + SdcResourceBasicInfo sdcResource1a = new SdcResourceBasicInfo(); sdcResource1a.setName("resource1"); sdcResource1a.setVersion("1.0"); rawCldsSdcResourceList.add(sdcResource1a); - CldsSdcResourceBasicInfo sdcResource1b = new CldsSdcResourceBasicInfo(); + SdcResourceBasicInfo sdcResource1b = new SdcResourceBasicInfo(); sdcResource1b.setName("resource1"); sdcResource1b.setVersion("1.1"); rawCldsSdcResourceList.add(sdcResource1b); - CldsSdcResourceBasicInfo sdcResource1c = new CldsSdcResourceBasicInfo(); + SdcResourceBasicInfo sdcResource1c = new SdcResourceBasicInfo(); sdcResource1c.setName("resource1"); sdcResource1c.setVersion("1.2"); rawCldsSdcResourceList.add(sdcResource1c); - CldsSdcResourceBasicInfo sdcResource2 = new CldsSdcResourceBasicInfo(); + SdcResourceBasicInfo sdcResource2 = new SdcResourceBasicInfo(); sdcResource2.setName("resource2"); sdcResource2.setVersion("1.0"); rawCldsSdcResourceList.add(sdcResource2); SdcCatalogServices catalogServices = new SdcCatalogServices(); - List resultList = catalogServices + List resultList = catalogServices .removeDuplicateSdcResourceBasicInfo(rawCldsSdcResourceList); - CldsSdcResourceBasicInfo res1; - CldsSdcResourceBasicInfo res2; + SdcResourceBasicInfo res1; + SdcResourceBasicInfo res2; if ("resource1".equals(resultList.get(0).getName())) { res1 = resultList.get(0); res2 = resultList.get(1); diff --git a/src/test/java/org/onap/clamp/clds/it/SdcReqItCase.java b/src/test/java/org/onap/clamp/clds/it/SdcReqItCase.java index afff9dd7d..2efc52866 100644 --- a/src/test/java/org/onap/clamp/clds/it/SdcReqItCase.java +++ b/src/test/java/org/onap/clamp/clds/it/SdcReqItCase.java @@ -36,9 +36,9 @@ import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.onap.clamp.clds.AbstractItCase; -import org.onap.clamp.clds.client.req.sdc.SdcReq; +import org.onap.clamp.clds.client.req.sdc.SdcRequests; import org.onap.clamp.clds.model.CldsEvent; -import org.onap.clamp.clds.model.prop.ModelProperties; +import org.onap.clamp.clds.model.properties.ModelProperties; import org.onap.clamp.clds.util.ResourceFileUtil; import org.skyscreamer.jsonassert.JSONAssert; import org.springframework.beans.factory.annotation.Autowired; @@ -50,7 +50,7 @@ import org.springframework.test.context.junit4.SpringRunner; public class SdcReqItCase extends AbstractItCase { @Autowired - private SdcReq sdcReq; + private SdcRequests sdcReq; private String modelBpmnProp; private String modelBpmn; private String modelName; @@ -98,7 +98,7 @@ public class SdcReqItCase extends AbstractItCase { @Test public void getSdcReqUrlsListTest() throws GeneralSecurityException, DecoderException { - List listUrls = sdcReq.getSdcReqUrlsList(modelProperties, refProp.getStringValue("sdc.serviceUrl")); + List listUrls = sdcReq.getSdcReqUrlsList(modelProperties); assertNotNull(listUrls); assertTrue(listUrls.size() == 1); assertTrue(listUrls.get(0).contains( diff --git a/src/test/java/org/onap/clamp/clds/it/TcaRequestFormatterItCase.java b/src/test/java/org/onap/clamp/clds/it/TcaRequestFormatterItCase.java index 419bfde22..c290a386b 100644 --- a/src/test/java/org/onap/clamp/clds/it/TcaRequestFormatterItCase.java +++ b/src/test/java/org/onap/clamp/clds/it/TcaRequestFormatterItCase.java @@ -35,7 +35,7 @@ import org.junit.runner.RunWith; import org.onap.clamp.clds.AbstractItCase; import org.onap.clamp.clds.client.req.tca.TcaRequestFormatter; import org.onap.clamp.clds.model.CldsEvent; -import org.onap.clamp.clds.model.prop.ModelProperties; +import org.onap.clamp.clds.model.properties.ModelProperties; import org.onap.clamp.clds.util.ResourceFileUtil; import org.skyscreamer.jsonassert.JSONAssert; import org.springframework.boot.test.context.SpringBootTest; diff --git a/src/test/java/org/onap/clamp/clds/model/prop/CustomModelElement.java b/src/test/java/org/onap/clamp/clds/model/prop/CustomModelElement.java index 138d727c0..d3694aea4 100644 --- a/src/test/java/org/onap/clamp/clds/model/prop/CustomModelElement.java +++ b/src/test/java/org/onap/clamp/clds/model/prop/CustomModelElement.java @@ -25,6 +25,10 @@ package org.onap.clamp.clds.model.prop; import com.fasterxml.jackson.databind.JsonNode; +import org.onap.clamp.clds.model.properties.AbstractModelElement; +import org.onap.clamp.clds.model.properties.ModelBpmn; +import org.onap.clamp.clds.model.properties.ModelProperties; + /** * A CustomModelElement to test the capability to add new elements on the fly. */ diff --git a/src/test/java/org/onap/clamp/clds/model/prop/CustomModelElementTest.java b/src/test/java/org/onap/clamp/clds/model/prop/CustomModelElementTest.java index 46c70e55e..851556a6c 100644 --- a/src/test/java/org/onap/clamp/clds/model/prop/CustomModelElementTest.java +++ b/src/test/java/org/onap/clamp/clds/model/prop/CustomModelElementTest.java @@ -27,6 +27,7 @@ import java.io.IOException; import org.junit.Assert; import org.junit.Test; +import org.onap.clamp.clds.model.properties.ModelProperties; import org.onap.clamp.clds.util.ResourceFileUtil; public class CustomModelElementTest { diff --git a/src/test/java/org/onap/clamp/clds/model/prop/ModelPropertiesTest.java b/src/test/java/org/onap/clamp/clds/model/prop/ModelPropertiesTest.java index 7bb11a9ef..a7ab94c57 100644 --- a/src/test/java/org/onap/clamp/clds/model/prop/ModelPropertiesTest.java +++ b/src/test/java/org/onap/clamp/clds/model/prop/ModelPropertiesTest.java @@ -32,6 +32,10 @@ import java.io.IOException; import org.junit.Before; import org.junit.Test; import org.onap.clamp.clds.model.CldsModel; +import org.onap.clamp.clds.model.properties.Holmes; +import org.onap.clamp.clds.model.properties.ModelProperties; +import org.onap.clamp.clds.model.properties.Policy; +import org.onap.clamp.clds.model.properties.Tca; import org.onap.clamp.clds.util.ResourceFileUtil; /** diff --git a/src/test/resources/http-cache/start_http_cache.sh b/src/test/resources/http-cache/start_http_cache.sh index 591fd5047..f318256aa 100755 --- a/src/test/resources/http-cache/start_http_cache.sh +++ b/src/test/resources/http-cache/start_http_cache.sh @@ -34,4 +34,4 @@ fi echo 'Installing requests packages for Python' pip install requests echo 'Executing the Http proxy in Cache mode only' -python sdc_proxy.py --port 8080 --root /usr/src/http-cache-app/data-cache \ No newline at end of file +python sdc_proxy.py --port 2080 --root /usr/src/http-cache-app/data-cache -- cgit 1.2.3-korg From 6347e3fd0c2285d65992c03a3ae536957bfb46c8 Mon Sep 17 00:00:00 2001 From: "Determe, Sebastien (sd378r)" Date: Thu, 15 Feb 2018 16:24:09 +0100 Subject: Revert back wrong code Revert back policyClient client and port used by sdc cache Issue-ID: CLAMP-85 Change-Id: Ifd59e8530dea6032449d4c868286533cbcac8739 Signed-off-by: Determe, Sebastien (sd378r) --- src/main/java/org/onap/clamp/clds/client/req/policy/PolicyClient.java | 2 +- src/test/resources/http-cache/start_http_cache.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'src/test/resources/http-cache') diff --git a/src/main/java/org/onap/clamp/clds/client/req/policy/PolicyClient.java b/src/main/java/org/onap/clamp/clds/client/req/policy/PolicyClient.java index ee78b45f8..06eff4ef7 100644 --- a/src/main/java/org/onap/clamp/clds/client/req/policy/PolicyClient.java +++ b/src/main/java/org/onap/clamp/clds/client/req/policy/PolicyClient.java @@ -353,7 +353,7 @@ public class PolicyClient { private PolicyEngine getPolicyEngine() { PolicyEngine policyEngine; try { - policyEngine = new PolicyEngine(appContext.getResource(cldsPolicyConfigFile).getURL().getPath()); + policyEngine = new PolicyEngine(appContext.getResource(cldsPolicyConfigFile).getFile().getAbsolutePath()); } catch (IOException e1) { throw new PolicyClientException("Exception when opening policy config file", e1); } catch (PolicyEngineException e) { diff --git a/src/test/resources/http-cache/start_http_cache.sh b/src/test/resources/http-cache/start_http_cache.sh index f318256aa..36829dde6 100755 --- a/src/test/resources/http-cache/start_http_cache.sh +++ b/src/test/resources/http-cache/start_http_cache.sh @@ -34,4 +34,4 @@ fi echo 'Installing requests packages for Python' pip install requests echo 'Executing the Http proxy in Cache mode only' -python sdc_proxy.py --port 2080 --root /usr/src/http-cache-app/data-cache +python sdc_proxy.py --port 8080 --root /usr/src/http-cache-app/data-cache -- cgit 1.2.3-korg From 153c829cfc5608b8b6a2d9312eb270540f5f2d9f Mon Sep 17 00:00:00 2001 From: ehautot Date: Thu, 15 Mar 2018 17:49:50 +0100 Subject: Modify third party proxy to test the SUBMIT Change-Id: I86dad99c141ef78b23e28cbb3eab6516d04000a8 Signed-off-by: ehautot Issue-ID: CLAMP-100 --- .../config/clds-policy-config-sdc_proxy.properties | 37 --- ...clds-policy-config-third_party_proxy.properties | 37 +++ .../config/clds-reference-sdc_proxy.properties | 108 --------- extra/docker/clamp/docker-compose.yml | 6 +- pom.xml | 6 +- .../http-cache/example/pdp/api/getConfig/.file | 2 + .../http-cache/example/pdp/api/getConfig/.header | 1 + .../http-cache/example/pdp/api/pushPolicy/.file | 1 + .../http-cache/example/pdp/api/pushPolicy/.header | 1 + .../http-cache/example/pdp/api/updatePolicy/.file | 1 + .../example/pdp/api/updatePolicy/.header | 1 + .../catalog/resources?resourceType=CVFC/.file | 1 + .../resources?resourceType=CVFC/.header | 1 + .../v1/catalog/resources?resourceType=VF/.file | 1 + .../catalog/resources?resourceType=VF/.header | 1 + .../catalog/resources?resourceType=VFC/.file | 1 + .../catalog/resources?resourceType=VFC/.header | 1 + .../metadata/.file | 1 + .../metadata/.header | 1 + .../metadata/.file | 1 + .../metadata/.header | 1 + .../metadata/.file | 1 + .../metadata/.header | 1 + .../metadata/.file | 1 + .../metadata/.header | 1 + .../metadata/.file | 1 + .../metadata/.header | 1 + .../metadata/.file | 1 + .../metadata/.header | 1 + .../metadata/.file | 1 + .../metadata/.header | 1 + .../metadata/.file | 1 + .../metadata/.header | 1 + .../metadata/.file | 1 + .../metadata/.header | 1 + .../metadata/.file | 1 + .../metadata/.header | 1 + .../metadata/.file | 1 + .../metadata/.header | 1 + .../metadata/.file | 1 + .../metadata/.header | 1 + .../metadata/.file | 1 + .../metadata/.header | 1 + .../metadata/.file | 1 + .../metadata/.header | 1 + .../metadata/.file | 1 + .../metadata/.header | 1 + .../metadata/.file | 1 + .../metadata/.header | 1 + .../example/sdc/v1/catalog/services/.file | 1 + .../example/sdc/v1/catalog/services/.header | 1 + .../metadata/.file | 1 + .../metadata/.header | 1 + .../resourceInstances/vpacketgen0/artifacts/.file | 1 + .../vpacketgen0/artifacts/.header | 1 + .../metadata/.file | 1 + .../metadata/.header | 1 + .../catalog/resources?resourceType=CVFC/.file | 1 - .../resources?resourceType=CVFC/.header | 1 - .../v1/catalog/resources?resourceType=VF/.file | 1 - .../catalog/resources?resourceType=VF/.header | 1 - .../catalog/resources?resourceType=VFC/.file | 1 - .../catalog/resources?resourceType=VFC/.header | 1 - .../metadata/.file | 1 - .../metadata/.header | 1 - .../metadata/.file | 1 - .../metadata/.header | 1 - .../metadata/.file | 1 - .../metadata/.header | 1 - .../metadata/.file | 1 - .../metadata/.header | 1 - .../metadata/.file | 1 - .../metadata/.header | 1 - .../metadata/.file | 1 - .../metadata/.header | 1 - .../metadata/.file | 1 - .../metadata/.header | 1 - .../metadata/.file | 1 - .../metadata/.header | 1 - .../metadata/.file | 1 - .../metadata/.header | 1 - .../metadata/.file | 1 - .../metadata/.header | 1 - .../metadata/.file | 1 - .../metadata/.header | 1 - .../metadata/.file | 1 - .../metadata/.header | 1 - .../metadata/.file | 1 - .../metadata/.header | 1 - .../metadata/.file | 1 - .../metadata/.header | 1 - .../metadata/.file | 1 - .../metadata/.header | 1 - .../metadata/.file | 1 - .../metadata/.header | 1 - .../sdc-example/sdc/v1/catalog/services/.file | 1 - .../sdc-example/sdc/v1/catalog/services/.header | 1 - .../metadata/.file | 1 - .../metadata/.header | 1 - .../metadata/.file | 1 - .../metadata/.header | 1 - src/test/resources/http-cache/sdc_proxy.py | 127 ----------- src/test/resources/http-cache/start_http_cache.sh | 4 +- src/test/resources/http-cache/third_party_proxy.py | 251 +++++++++++++++++++++ 104 files changed, 349 insertions(+), 324 deletions(-) delete mode 100644 extra/docker/clamp/config/clds-policy-config-sdc_proxy.properties create mode 100644 extra/docker/clamp/config/clds-policy-config-third_party_proxy.properties delete mode 100644 extra/docker/clamp/config/clds-reference-sdc_proxy.properties create mode 100644 src/test/resources/http-cache/example/pdp/api/getConfig/.file create mode 100644 src/test/resources/http-cache/example/pdp/api/getConfig/.header create mode 100644 src/test/resources/http-cache/example/pdp/api/pushPolicy/.file create mode 100644 src/test/resources/http-cache/example/pdp/api/pushPolicy/.header create mode 100644 src/test/resources/http-cache/example/pdp/api/updatePolicy/.file create mode 100644 src/test/resources/http-cache/example/pdp/api/updatePolicy/.header create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources?resourceType=CVFC/.file create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources?resourceType=CVFC/.header create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources?resourceType=VF/.file create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources?resourceType=VF/.header create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources?resourceType=VFC/.file create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources?resourceType=VFC/.header create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources/228aac11-6e48-4412-afbf-327c5c3b04fb/metadata/.file create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources/228aac11-6e48-4412-afbf-327c5c3b04fb/metadata/.header create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources/2bbcbcce-f9e2-4f5d-b975-1f1122d3226c/metadata/.file create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources/2bbcbcce-f9e2-4f5d-b975-1f1122d3226c/metadata/.header create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources/38b62ebd-276a-48e8-948b-de76c81d6686/metadata/.file create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources/38b62ebd-276a-48e8-948b-de76c81d6686/metadata/.header create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources/68bb176c-8d5f-4d27-8407-fd8d9e5910eb/metadata/.file create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources/68bb176c-8d5f-4d27-8407-fd8d9e5910eb/metadata/.header create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources/701bf7b7-ddf1-4658-af5f-66c815348fd3/metadata/.file create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources/701bf7b7-ddf1-4658-af5f-66c815348fd3/metadata/.header create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources/8fb4db8b-1d1f-4369-8611-0375d86f0051/metadata/.file create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources/8fb4db8b-1d1f-4369-8611-0375d86f0051/metadata/.header create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources/948da0c9-536e-4688-85eb-d906fe7324b3/metadata/.file create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources/948da0c9-536e-4688-85eb-d906fe7324b3/metadata/.header create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/metadata/.file create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/metadata/.header create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/metadata/.file create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/metadata/.header create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources/a01ebd00-4b64-4607-8422-c3733735800d/metadata/.file create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources/a01ebd00-4b64-4607-8422-c3733735800d/metadata/.header create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources/b339e576-e433-4be4-8a43-258f629c4e79/metadata/.file create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources/b339e576-e433-4be4-8a43-258f629c4e79/metadata/.header create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/metadata/.file create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/metadata/.header create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources/c8a01686-2762-483c-98ad-a66606b9947f/metadata/.file create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources/c8a01686-2762-483c-98ad-a66606b9947f/metadata/.header create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources/cca286e8-5ac0-451c-b874-8cc307181e10/metadata/.file create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources/cca286e8-5ac0-451c-b874-8cc307181e10/metadata/.header create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources/d6a5add1-162a-4966-80a6-8ba53d83b17f/metadata/.file create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources/d6a5add1-162a-4966-80a6-8ba53d83b17f/metadata/.header create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources/f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d/metadata/.file create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/resources/f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d/metadata/.header create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/services/.file create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/services/.header create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/metadata/.file create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/metadata/.header create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vpacketgen0/artifacts/.file create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vpacketgen0/artifacts/.header create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/metadata/.file create mode 100644 src/test/resources/http-cache/example/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/metadata/.header delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=CVFC/.file delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=CVFC/.header delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VF/.file delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VF/.header delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VFC/.file delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VFC/.header delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/228aac11-6e48-4412-afbf-327c5c3b04fb/metadata/.file delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/228aac11-6e48-4412-afbf-327c5c3b04fb/metadata/.header delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/2bbcbcce-f9e2-4f5d-b975-1f1122d3226c/metadata/.file delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/2bbcbcce-f9e2-4f5d-b975-1f1122d3226c/metadata/.header delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/38b62ebd-276a-48e8-948b-de76c81d6686/metadata/.file delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/38b62ebd-276a-48e8-948b-de76c81d6686/metadata/.header delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/68bb176c-8d5f-4d27-8407-fd8d9e5910eb/metadata/.file delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/68bb176c-8d5f-4d27-8407-fd8d9e5910eb/metadata/.header delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/701bf7b7-ddf1-4658-af5f-66c815348fd3/metadata/.file delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/701bf7b7-ddf1-4658-af5f-66c815348fd3/metadata/.header delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/8fb4db8b-1d1f-4369-8611-0375d86f0051/metadata/.file delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/8fb4db8b-1d1f-4369-8611-0375d86f0051/metadata/.header delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/948da0c9-536e-4688-85eb-d906fe7324b3/metadata/.file delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/948da0c9-536e-4688-85eb-d906fe7324b3/metadata/.header delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/metadata/.file delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/metadata/.header delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/metadata/.file delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/metadata/.header delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/a01ebd00-4b64-4607-8422-c3733735800d/metadata/.file delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/a01ebd00-4b64-4607-8422-c3733735800d/metadata/.header delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/b339e576-e433-4be4-8a43-258f629c4e79/metadata/.file delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/b339e576-e433-4be4-8a43-258f629c4e79/metadata/.header delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/metadata/.file delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/metadata/.header delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/c8a01686-2762-483c-98ad-a66606b9947f/metadata/.file delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/c8a01686-2762-483c-98ad-a66606b9947f/metadata/.header delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/cca286e8-5ac0-451c-b874-8cc307181e10/metadata/.file delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/cca286e8-5ac0-451c-b874-8cc307181e10/metadata/.header delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/d6a5add1-162a-4966-80a6-8ba53d83b17f/metadata/.file delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/d6a5add1-162a-4966-80a6-8ba53d83b17f/metadata/.header delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d/metadata/.file delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d/metadata/.header delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/.file delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/.header delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/metadata/.file delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/metadata/.header delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/metadata/.file delete mode 100644 src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/metadata/.header delete mode 100755 src/test/resources/http-cache/sdc_proxy.py create mode 100755 src/test/resources/http-cache/third_party_proxy.py (limited to 'src/test/resources/http-cache') diff --git a/extra/docker/clamp/config/clds-policy-config-sdc_proxy.properties b/extra/docker/clamp/config/clds-policy-config-sdc_proxy.properties deleted file mode 100644 index 3786c1636..000000000 --- a/extra/docker/clamp/config/clds-policy-config-sdc_proxy.properties +++ /dev/null @@ -1,37 +0,0 @@ -### -# ============LICENSE_START======================================================= -# ONAP CLAMP -# ================================================================================ -# Copyright (C) 2017 AT&T Intellectual Property. All rights -# reserved. -# ================================================================================ -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# ============LICENSE_END============================================ -# =================================================================== -# ECOMP is a trademark and service mark of AT&T Intellectual Property. -### - -# Configuration Settings for Policy Engine Components -PDP_URL1=http://sdc_proxy:8085/pdp/ , testpdp, alpha123 -PDP_URL2=http://sdc_proxy:8085/pdp/ , testpdp, alpha123 -NOTIFICATION_TYPE=websocket -NOTIFICATION_UEB_SERVERS=localhost -NOTIFICATION_TOPIC= -CLIENT_ID=myclientid -# base64 encoding -#CLIENT_KEY=ChlakDuk -CLIENT_KEY=5CE79532B3A2CB4D132FC0C04BF916A7 -#DEVL for development -#TEST for Test environments -#PROD for prod environments -ENVIRONMENT=TEST \ No newline at end of file diff --git a/extra/docker/clamp/config/clds-policy-config-third_party_proxy.properties b/extra/docker/clamp/config/clds-policy-config-third_party_proxy.properties new file mode 100644 index 000000000..58a89f4d5 --- /dev/null +++ b/extra/docker/clamp/config/clds-policy-config-third_party_proxy.properties @@ -0,0 +1,37 @@ +### +# ============LICENSE_START======================================================= +# ONAP CLAMP +# ================================================================================ +# Copyright (C) 2017 AT&T Intellectual Property. All rights +# reserved. +# ================================================================================ +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============LICENSE_END============================================ +# =================================================================== +# ECOMP is a trademark and service mark of AT&T Intellectual Property. +### + +# Configuration Settings for Policy Engine Components +PDP_URL1=http://third_party_proxy:8085/pdp/ , testpdp, alpha123 +PDP_URL2=http://third_party_proxy:8085/pdp/ , testpdp, alpha123 +NOTIFICATION_TYPE=websocket +NOTIFICATION_UEB_SERVERS=localhost +NOTIFICATION_TOPIC= +CLIENT_ID=python +# base64 encoding +#CLIENT_KEY=ChlakDuk +CLIENT_KEY=dGVzdA== +#DEVL for development +#TEST for Test environments +#PROD for prod environments +ENVIRONMENT=TEST \ No newline at end of file diff --git a/extra/docker/clamp/config/clds-reference-sdc_proxy.properties b/extra/docker/clamp/config/clds-reference-sdc_proxy.properties deleted file mode 100644 index a97a043c7..000000000 --- a/extra/docker/clamp/config/clds-reference-sdc_proxy.properties +++ /dev/null @@ -1,108 +0,0 @@ -### -# ============LICENSE_START======================================================= -# ONAP CLAMP -# ================================================================================ -# Copyright (C) 2017-2018 AT&T Intellectual Property. All rights -# reserved. -# ================================================================================ -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# ============LICENSE_END============================================ -# =================================================================== -# ECOMP is a trademark and service mark of AT&T Intellectual Property. -### - -# -# Poperties for CLDS -# -# -# DCAE request build properties -# -dcae.template={"properties":{"service_name":"","service_ids":[],"vnf_ids":[],"location_ids":[]},"template":{"tca":{"dcae":{"inputTopic":"","outputTopic":"","closedLoopControlName":"","closedLoopEventClient":"configuration.dcae.microservice.tca.xml","policyName":"","policyScope":"service=vSCP;resource=F5;type=configuration","policyVersion":"v0.0.1","serviceConfigurations":{}}}}} -dcae.decode.service_ids={"vUSP":["vUSP - vCTS"],"Trinity":["ASBGv TLS VNF","ASBGv No TLS","ASBGv (NO TLS) VNF","ASBGv TLS","NSBGv VNF","NSBGv"],"vSCP":["AKRON_vSCP_F5_FW-SVC/vSCP_F5_FW 1","ALLEN_vSCP_F5_FW-SVC/vSCP_F5_FW 1"],"vProbes":["vProbes - FW"]} -dcae.deployment.template={"serviceTypeId": "???", "inputs": {"aaiEnrichmentHost": "10.0.1.1", "enableAAIEnrichment": "true", "subscriberHostName" : "10.0.11.1", "publisherHostName" : "10.0.11.1"}} -# -# SDC request blueprint properties -# -sdc.template={} -sdc.decode.service_ids={} -# -# -# General Policy request properties -# -policy.onap.name=DCAE -policy.pdp.group=default -policy.ms.type=MicroService -policy.ms.policyNamePrefix=Config_MS_ -policy.op.type=BRMS_Param -policy.op.policyNamePrefix=Config_BRMS_Param_ - -# TCA MicroService Policy request build properties -# -tca.policyid.prefix=DCAE.Config_ -tca.policy.template={"service": "tca_policy", "version": "1.0.0", "location": "SampleServiceLocation", "configName": "SampleConfigName", "uuid": "test", "policyScope": "resource=SampleResource,service=SampleService,type=SampleType,closedLoopControlName=ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e", "templateVersion": "OpenSource.version.1", "policyName": "MicroServicevCPE", "description": "MicroService Policy", "priority": "1", "riskType": "SampleRiskType", "riskLevel": "1", "guard": "False","content":{"tca_policy": {}}} -tca.template= {"domain": "measurementsForVfScaling", "metricsPerEventName": [{"eventName": "???", "controlLoopSchemaType":"VNF","policyScope": "DCAE","policyName": "???","policyVersion": "v0.0.1","thresholds": []}]} -tca.thresholds.template={"closedLoopControlName": "???", "version": "1.0.2","fieldPath": "?????", "thresholdValue": 0,"direction": "???","severity": "MAJOR", "closedLoopEventStatus": "???"} - -# -# -# Operational Policy request build properties -# -op.policyDescription=from clds -# default -op.templateName=ClosedLoopvUSP -op.operationTopic=APPC-CL -op.notificationTopic=POLICY-CL-MGT -op.controller=amsterdam -op.policy.appc=APPC -# by service: vSCP -op.templateName.vSCP=ClosedLoopTemplate -op.controller.vSCP=1607-f5fw -op.eNodeB.templateName=ClosedLoopControlName -op.eNodeB.operationTopic=com.onap.sdnr.RanCLRequest-v00 -op.eNodeB.notificationTopic=com.onap-policy.IST-ENODEB-CL -op.eNodeB.controller=amsterdam -op.eNodeB.recipe={"eNodeBRecipes":[{"Actor":"AOTS","Recipe":"checkENodeBTicketHours","ParentPolicy":"","PPConditions":"","Retry":"0","TimeLimit":"120"},{"Actor":"AOTS","Recipe":"checkEquipmentStatus","ParentPolicy":"checkENodeBTicketHours","PPConditions":"Success","Retry":"0","TimeLimit":"120"},{"Actor":"AOTS","Recipe":"checkEimStatus","ParentPolicy":"checkEquipmentStatus","PPConditions":"Success","Retry":"0","TimeLimit":"120"},{"Actor":"AOTS","Recipe":"checkMaintenanceWindow","ParentPolicy":"checkEimStatus","PPConditions":"Success","Retry":"0","TimeLimit":"120"},{"Actor":"SDNR","Recipe":"Reset","ParentPolicy":"checkMaintenanceWindow","PPConditions":"Success","Retry":"","TimeLimit":""}]} -op.eNodeB.timeWindow=35 -op.eNodeB.limit=2 -op.eNodeB.period=10s -# -# Sdc service properties -sdc.catalog.url=http://sdc_proxy:8085/sdc/v1/catalog/ -sdc.hostUrl=http://sdc_proxy:8085 -sdc.serviceUrl=http://sdc_proxy:8085/sdc/v1/catalog/services -sdc.serviceUsername=clamp -sdc.servicePassword=b7acccda32b98c5bb7acccda32b98c5b05D511BD6D93626E90D18E9D24D9B78CD34C7EE8012F0A189A28763E82271E50A5D4EC10C7D93E06E0A2D27CAE66B981 -sdc.artifactLabel=blueprintclampcockpit -sdc.sdcX-InstanceID=CLAMP -sdc.artifactType=DCAE_INVENTORY_BLUEPRINT -sdc.locationArtifactLabel=locationclampcockpit -sdc.locationArtifactType=DCAE_INVENTORY_JSON -sdc.InstanceID=X-ECOMP-InstanceID -sdc.header.requestId = X-ECOMP-RequestID -# -# -ui.location.default={"DC1":"Data Center 1","DC2":"Data Center 2","DC3":"Data Center 3"} -ui.alarm.default={"Reports a transient alarm condition when an incoming CDR cannot be decoded successfully":"vCCF: Reports a transient alarm condition when an incoming CDR cannot be decoded successfully","Reports a transient alarm condition when an incoming ACR message cannot be decoded successfully":"vCCF: Reports a transient alarm condition when an incoming ACR message cannot be decoded successfully","Reports a transient alarm condition when a CDR validation fails":"vCCF: Reports a transient alarm condition when a CDR validation fails","Reports a transient alarm condition when an incoming GTP' message cannot be decoded successfully":"vCCF: Reports a transient alarm condition when an incoming GTP' message cannot be decoded successfully","Reports a transient alarm condition when an incoming CDR file cannot be decoded successfully":"vCCF: Reports a transient alarm condition when an incoming CDR file cannot be decoded successfully","Reports a transient alarm condition when an incoming Sh/Dh file cannot be decoded successfully":"vCCF: Reports a transient alarm condition when an incoming Sh/Dh file cannot be decoded successfully","Reports a transient alarm condition when an incoming ACR message is in conflict with former ACR in one diameter session":"vCCF: Reports a transient alarm condition when an incoming ACR message is in conflict with former ACR in one diameter session","Reports a transient alarm condition when an outgoing Ro message send fails":"vCCF: Reports a transient alarm condition when an outgoing Ro message send fails","Reports a transient alarm condition when an outgoing GTP' message send fails":"vCCF: Reports a transient alarm condition when an outgoing GTP' message send fails","Reports a transient alarm condition when an outgoing Sh/Dh message send fails":"vCCF: Reports a transient alarm condition when an outgoing Sh/Dh message send fails","Reports an alarm when build or send Rf message fail":"vCCF: Reports an alarm when build or send Rf message fail","Reports a transient alarm condition when an abnormal incoming CCA message":"vCCF: Reports a transient alarm condition when an abnormal incoming CCA message","Reports a transient alarm condition when there is an abnormal incoming Sh/Dh message":"vCCF: Reports a transient alarm condition when there is an abnormal incoming Sh/Dh message","For Rf interface, if IeCCF receives a message with incorrect value for session id.":"vCCF: For Rf interface, if IeCCF receives a message with incorrect value for session id.","Reports an alarm when CPU usage exceeds the major threshold, the local database exceeds the critical threshold, or the ACR partition exceeds the major threshold":"vCCF: Reports an alarm when CPU usage exceeds the major threshold, the local database exceeds the critical threshold, or the ACR partition exceeds the major threshold","Reports an alarm when CPU usage exceeds the minor threshold, the local database exceeds the major threshold, or the ACR partition exceeds the minor threshold":"vCCF: Reports an alarm when CPU usage exceeds the minor threshold, the local database exceeds the major threshold, or the ACR partition exceeds the minor threshold","Reports an alarm when CPU usage exceeds the critical threshold, the local database exceeds the major threshold, or the CDR partition exceeds the critical threshold":"vCCF: Reports an alarm when CPU usage exceeds the critical threshold, the local database exceeds the major threshold, or the CDR partition exceeds the critical threshold","Reports an alarm when CPU usage exceeds the major threshold or CDR partition exceeds the major threshold":"vCCF: Reports an alarm when CPU usage exceeds the major threshold or CDR partition exceeds the major threshold","Reports an alarm when external DB usage exceeds the major threshold":"vCCF: Reports an alarm when external DB usage exceeds the major threshold","If IeCCF comes to the status \\"Stop processing ACR records in ACRDB\\".":"vCCF: If IeCCF comes to the status \\"Stop processing ACR records in ACRDB\\".","If IeCCF comes to the status \\"Flush ACR is invoked\\".":"vCCF: If IeCCF comes to the status \\"Flush ACR is invoked\\".","Reports a transient alarm condition when the workflow definition table is provisioned wrongly":"vCCF: Reports a transient alarm condition when the workflow definition table is provisioned wrongly","Reports a transient alarm condition when the Action Definition table is provisioned wrongly":"vCCF: Reports a transient alarm condition when the Action Definition table is provisioned wrongly","Reports a transient alarm condition when the Ro Host Configuration is provisioned wrongly":"vCCF: Reports a transient alarm condition when the Ro Host Configuration is provisioned wrongly","Reports a transient alarm condition when the Sh Host Configuration is provisioned wrongly":"vCCF: Reports a transient alarm condition when the Sh Host Configuration is provisioned wrongly","Reports a transient alarm condition when a specific dictionary or rule does not exist":"vCCF: Reports a transient alarm condition when a specific dictionary or rule does not exist","Reports a transient alarm condition when failure occurs when mapping Rf message to XDR":"vCCF: Reports a transient alarm condition when failure occurs when mapping Rf message to XDR","Reports a transient alarm condition when failure occurs in aggregating process":"vCCF: Reports a transient alarm condition when failure occurs in aggregating process","Reports a transient alarm condition when failure happens in correlating process":"vCCF: Reports a transient alarm condition when failure happens in correlating process","Reports a transient alarm condition when failure occurs in generating CDR":"vCCF: Reports a transient alarm condition when failure occurs in generating CDR","Reports a transient alarm condition when failure occurs in constructing CCR message from XDR":"vCCF: Reports a transient alarm condition when failure occurs in constructing CCR message from XDR","Reports a transient alarm condition when an ACR/XER/BER/INC record write to bad file":"vCCF: Reports a transient alarm condition when an ACR/XER/BER/INC record write to bad file","Reports an alarm condition when aggregation or correlation central database connection is lost":"vCCF: Reports an alarm condition when aggregation or correlation central database connection is lost","Reports an alarm condition when a specific failure happens in database operations":"vCCF: Reports an alarm condition when a specific failure happens in database operations","Reports an alarm condition when DB capacity has been consumed to critical threshold":"vCCF: Reports an alarm condition when DB capacity has been consumed to critical threshold","Reports an alarm condition when DB capacity has been consumed to major threshold":"vCCF: Reports an alarm condition when DB capacity has been consumed to major threshold","Reports an alarm condition when DB capacity has been consumed to minor threshold.":"vCCF: Reports an alarm condition when DB capacity has been consumed to minor threshold.","Reports an alarm condition when application cannot deliver CDR to CDRSCH subsystem":"vCCF: Reports an alarm condition when application cannot deliver CDR to CDRSCH subsystem","Reports an alarm condition when some fields of ACR file header have error value and this ACR file cannot be processed further":"vCCF: Reports an alarm condition when some fields of ACR file header have error value and this ACR file cannot be processed further","Reports an alarm condition when some fields of ACR file header have invalid value and this ACR file can be processed further":"vCCF: Reports an alarm condition when some fields of ACR file header have invalid value and this ACR file can be processed further","Reports an alarm condition when the ACR file loses some ACR records":"vCCF: Reports an alarm condition when the ACR file loses some ACR records","Reports an alarm condition when some fields of ACR record header have error value and this ACR record and the following ACR records cannot be processed further":"vCCF: Reports an alarm condition when some fields of ACR record header have error value and this ACR record and the following ACR records cannot be processed further","Reports an alarm condition when error occurs in processing CDR/ACR files":"vCCF: Reports an alarm condition when error occurs in processing CDR/ACR files","Reports an alarm condition when CDR partition has been consumed to critical threshold":"vCCF: Reports an alarm condition when CDR partition has been consumed to critical threshold","Reports an alarm condition when CDR partition has been consumed to major threshold.":"vCCF: Reports an alarm condition when CDR partition has been consumed to major threshold.","Reports an alarm condition when CDR partition has been consumed to minor threshold":"vCCF: Reports an alarm condition when CDR partition has been consumed to minor threshold","Reports an alarm condition when ACR partition has been consumed to critical threshold":"vCCF: Reports an alarm condition when ACR partition has been consumed to critical threshold","Reports an alarm condition when ACR partition has been consumed to major threshold":"vCCF: Reports an alarm condition when ACR partition has been consumed to major threshold","Reports an alarm condition when ACR partition has been consumed to minor threshold":"vCCF: Reports an alarm condition when ACR partition has been consumed to minor threshold","Reports an alarm condition when CPU consumption reaches critical threshold":"vCCF: Reports an alarm condition when CPU consumption reaches critical threshold","Reports an alarm condition when CPU consumption reaches major threshold":"vCCF: Reports an alarm condition when CPU consumption reaches major threshold","Reports an alarm condition when CPU consumption reaches minor threshold":"vCCF: Reports an alarm condition when CPU consumption reaches minor threshold","Service shall monitor * number of partial CDR * number of incompleted CDR * number of unacceptable CDR If any one exceeds a configurable threshold in a configrable interval.":"vCCF: Service shall monitor * number of partial CDR * number of incompleted CDR * number of unacceptable CDR If any one exceeds a configurable threshold in a configrable interval.","CDR size exceed the platform capacity.":"vCCF: CDR size exceed the platform capacity.","Service shall monitor number of ACR without AII AVP, If it exceeds a configurable threshold in a configurable interval.":"vCCF: Service shall monitor number of ACR without AII AVP, If it exceeds a configurable threshold in a configurable interval.","Service shall monitor CDR cut due to ECCF_ACRNUMBER_IN_DB, If it exceeds a configurable threshold in a configurable interval.":"vCCF: Service shall monitor CDR cut due to ECCF_ACRNUMBER_IN_DB, If it exceeds a configurable threshold in a configurable interval.","External Node of this Cluster is overload":"vCCF: External Node of this Cluster is overload","bdb_high_latency":"vCCF-vDB: bdb_high_latency","bdb_high_throughput":"vCCF-vDB: bdb_high_throughput","bdb_size":"vCCF-vDB: bdb_size","cluster_inconsistent_rl_sw":"vCCF-vDB: cluster_inconsistent_rl_sw","cluster_node_remove_abort_failed":"vCCF-vDB: cluster_node_remove_abort_failed","cluster_node_remove_failed":"vCCF-vDB: cluster_node_remove_failed","cluster_ram_overcommit":"vCCF-vDB: cluster_ram_overcommit","cluster_rebalance_failed":"vCCF-vDB: cluster_rebalance_failed","cluster_too_few_nodes_for_replication":"vCCF-vDB: cluster_too_few_nodes_for_replication","node_cpu_utilization":"vCCF-vDB: node_cpu_utilization","node_ephemeral_storage":"vCCF-vDB: node_ephemeral_storage","node_failed":"vCCF-vDB: node_failed","node_memory":"vCCF-vDB: node_memory","node_net_throughput":"vCCF-vDB: node_net_throughput","node_offline_failed":"vCCF-vDB: node_offline_failed","node_offline_abort_failed":"vCCF-vDB: node_offline_abort_failed","node_online_failed":"vCCF-vDB: node_online_failed","OAM NODE- IS NOT ACTIVE ":"vCCF-vDB: OAM NODE- IS NOT ACTIVE ","LSS_asdaCommunicationFailure":"vCTS: LSS_asdaCommunicationFailure","LSS_ccdbCommunicationFailure":"vCTS: LSS_ccdbCommunicationFailure","LSS_cpiCTS3xxFailRate":"vCTS: LSS_cpiCTS3xxFailRate","LSS_cpiCTS4xxFailRate":"vCTS: LSS_cpiCTS4xxFailRate","LSS_cpiCTS5xxFailRate":"vCTS: LSS_cpiCTS5xxFailRate","LSS_cpiCTS6xxFailRate":"vCTS: LSS_cpiCTS6xxFailRate","LSS_cpiCTSSIPRetransmitInvite":"vCTS: LSS_cpiCTSSIPRetransmitInvite","LSS_cpiCTSSIPRetransmitNonInvite":"vCTS: LSS_cpiCTSSIPRetransmitNonInvite","LSS_glsInvalidCellId":"vCTS: LSS_glsInvalidCellId","LSS_glsServerUnavailable":"vCTS: LSS_glsServerUnavailable","LSS_hlrSyncConnection":"vCTS: LSS_hlrSyncConnection","LSS_hlrSyncQueue":"vCTS: LSS_hlrSyncQueue","LSS_lispBufferFullExternalLIG":"vCTS: LSS_lispBufferFullExternalLIG","LSS_prdbConnectWithAlternateFailure":"vCTS: LSS_prdbConnectWithAlternateFailure","LSS_prdbSyncDataToAlternateFailure":"vCTS: LSS_prdbSyncDataToAlternateFailure","LSS_preAllocatedResourceOverload":"vCTS: LSS_preAllocatedResourceOverload","LSS_prifSocketError":"vCTS: LSS_prifSocketError","LSS_prsCallInstanceExceeded":"vCTS: LSS_prsCallInstanceExceeded","LSS_prsCpuOverload":"vCTS: LSS_prsCpuOverload","LSS_prsDatabaseMigrationFailure":"vCTS: LSS_prsDatabaseMigrationFailure","LSS_prsFailureToConnectWithPRDB":"vCTS: LSS_prsFailureToConnectWithPRDB","LSS_prsQueueExceeded":"vCTS: LSS_prsQueueExceeded","LSS_smdiSocketError":"vCTS: LSS_smdiSocketError","LSS_socketError":"vCTS: LSS_socketError","LSS_softwareComponentDown":"vCTS: LSS_softwareComponentDown","LSS_tlsInitError":"vCTS: LSS_tlsInitError","LSS_usageOfSyncTable":"vCTS: LSS_usageOfSyncTable","LSS_utHttpProxyConnectionDown ":"vCTS: LSS_utHttpProxyConnectionDown ","LSS_wpifSocketError":"vCTS: LSS_wpifSocketError","LSS_acrTemporaryBufferOverload":"vCTS: LSS_acrTemporaryBufferOverload","LSS_adnsExtendedTTLcaching":"vCTS: LSS_adnsExtendedTTLcaching","LSS_adnsQueryFailureCaching":"vCTS: LSS_adnsQueryFailureCaching","LSS_adnsQueueCongestion":"vCTS: LSS_adnsQueueCongestion","LSS_asdaRequestQueue":"vCTS: LSS_asdaRequestQueue","LSS_capacityLicenseKeyExpiration":"vCTS: LSS_capacityLicenseKeyExpiration","LSS_capacityLicenseKeyNearExpiration":"vCTS: LSS_capacityLicenseKeyNearExpiration","LSS_capacityLicenseKeyValidationError":"vCTS: LSS_capacityLicenseKeyValidationError","LSS_cardConnectionLost":"vCTS: LSS_cardConnectionLost","LSS_cpiAlrmCritical":"vCTS: LSS_cpiAlrmCritical","LSS_cpiAlrmMajor":"vCTS: LSS_cpiAlrmMajor","LSS_cpiAlrmMinor":"vCTS: LSS_cpiAlrmMinor","LSS_cpiAlrmWarning":"vCTS: LSS_cpiAlrmWarning","LSS_cpiAsrtEsc":"vCTS: LSS_cpiAsrtEsc","LSS_cpiAsrtNonEsc":"vCTS: LSS_cpiAsrtNonEsc","LSS_cpiAsrtNonEscCritical":"vCTS: LSS_cpiAsrtNonEscCritical","LSS_cpiAsrtNonEscMajor":"vCTS: LSS_cpiAsrtNonEscMajor","LSS_cpiAsrtNonEscMinor":"vCTS: LSS_cpiAsrtNonEscMinor","LSS_cpiAudErrCount":"vCTS: LSS_cpiAudErrCount","LSS_cpiAudManAct":"vCTS: LSS_cpiAudManAct","LSS_cpiAudNewEvent":"vCTS: LSS_cpiAudNewEvent","LSS_cpiCompleteRateAlarm":"vCTS: LSS_cpiCompleteRateAlarm","LSS_cpiDropMGAllocConnReq":"vCTS: LSS_cpiDropMGAllocConnReq","LSS_cpiDropRateAlarm":"vCTS: LSS_cpiDropRateAlarm","LSS_cpiExceptionService":"vCTS: LSS_cpiExceptionService","LSS_cpiFailRateAlarm":"vCTS: LSS_cpiFailRateAlarm","LSS_cpiFailSCTPFastRetransIncr":"vCTS: LSS_cpiFailSCTPFastRetransIncr","LSS_cpiFailSCTPFastRetransRate":"vCTS: LSS_cpiFailSCTPFastRetransRate","LSS_cpiFailSCTPSRTT1Incr":"vCTS: LSS_cpiFailSCTPSRTT1Incr","LSS_cpiFailSCTPSRTT2Incr":"vCTS: LSS_cpiFailSCTPSRTT2Incr","LSS_cpiFailSCTPT3RetransIncr":"vCTS: LSS_cpiFailSCTPT3RetransIncr","LSS_cpiFailSCTPT3RetransRate":"vCTS: LSS_cpiFailSCTPT3RetransRate","LSS_cpiFileSysUsage":"vCTS: LSS_cpiFileSysUsage","LSS_cpiMemAllocFail":"vCTS: LSS_cpiMemAllocFail","LSS_cpiNumOfLICDRDel":"vCTS: LSS_cpiNumOfLICDRDel","LSS_cpiReinitServiceSelf":"vCTS: LSS_cpiReinitServiceSelf","LSS_cpiSIPRetransmitInvite":"vCTS: LSS_cpiSIPRetransmitInvite","LSS_cpiSIPRetransmitNonInvite":"vCTS: LSS_cpiSIPRetransmitNonInvite","LSS_cpiSS7DropSCTPPktsRcvd":"vCTS: LSS_cpiSS7DropSCTPPktsRcvd","LSS_cpiSS7FailSCTPFastRetransRate":"vCTS: LSS_cpiSS7FailSCTPFastRetransRate","LSS_cpiStabilityAlarm":"vCTS: LSS_cpiStabilityAlarm","LSS_cpuOverload":"vCTS: LSS_cpuOverload","LSS_databaseConnectionLost":"vCTS: LSS_databaseConnectionLost","LSS_databaseReplicationLinkDown":"vCTS: LSS_databaseReplicationLinkDown","LSS_databaseSizeExhausted":"vCTS: LSS_databaseSizeExhausted","LSS_dbHighCpuUtilization":"vCTS: LSS_dbHighCpuUtilization","LSS_dbOffline":"vCTS: LSS_dbOffline","LSS_dbStatusUnexpected":"vCTS: LSS_dbStatusUnexpected","LSS_degradedResource":"vCTS: LSS_degradedResource","LSS_degrow":"vCTS: LSS_degrow","LSS_deviceServerCxnLost":"vCTS: LSS_deviceServerCxnLost","LSS_diamLinkDown":"vCTS: LSS_diamLinkDown","LSS_diamMaxClientsExceeded":"vCTS: LSS_diamMaxClientsExceeded","LSS_dnsThreshold":"vCTS: LSS_dnsThreshold","LSS_ethernetError":"vCTS: LSS_ethernetError","LSS_ethernetLinkDown":"vCTS: LSS_ethernetLinkDown","LSS_externalConnectivity":"vCTS: LSS_externalConnectivity","LSS_featureLicenseExpiration":"vCTS: LSS_featureLicenseExpiration","LSS_featureLicenseKeyNearExpiration":"vCTS: LSS_featureLicenseKeyNearExpiration","LSS_featureLockValidationError":"vCTS: LSS_featureLockValidationError","LSS_fqdnError":"vCTS: LSS_fqdnError","LSS_fru":"vCTS: LSS_fru","LSS_gatewayCongestion":"vCTS: LSS_gatewayCongestion","LSS_gatewayForcedOOS":"vCTS: LSS_gatewayForcedOOS","LSS_gatewayProvisioningError":"vCTS: LSS_gatewayProvisioningError","LSS_gatewayUnreachable":"vCTS: LSS_gatewayUnreachable","LSS_gatewayUnregistered":"vCTS: LSS_gatewayUnregistered","LSS_globalParameterNotFound":"vCTS: LSS_globalParameterNotFound","LSS_grow":"vCTS: LSS_grow","LSS_h248MessageBufferDepletion":"vCTS: LSS_h248MessageBufferDepletion","LSS_hostDown":"vCTS: LSS_hostDown","LSS_hostReset":"vCTS: LSS_hostReset","LSS_invalidGateway":"vCTS: LSS_invalidGateway","LSS_iriLinkDown":"vCTS: LSS_iriLinkDown","LSS_ldapServerConnectionLost":"vCTS: LSS_ldapServerConnectionLost","LSS_llcDown":"vCTS: LSS_llcDown","LSS_logicalLinkDown":"vCTS: LSS_logicalLinkDown","LSS_logicalLinkNotFound":"vCTS: LSS_logicalLinkNotFound","LSS_logRotateThreshold":"vCTS: LSS_logRotateThreshold","LSS_memoryOverload":"vCTS: LSS_memoryOverload","LSS_nodeConfigFailure":"vCTS: LSS_nodeConfigFailure","LSS_nodeGroupOOS":"vCTS: LSS_nodeGroupOOS","LSS_nodeOOS":"vCTS: LSS_nodeOOS","LSS_nonCompliantFaultGroupMemberState":"vCTS: LSS_nonCompliantFaultGroupMemberState","LSS_nonCsAddrChannelDepletion":"vCTS: LSS_nonCsAddrChannelDepletion","LSS_numberOfTuplesInUse":"vCTS: LSS_numberOfTuplesInUse","LSS_osSecInfoModificationDetected":"vCTS: LSS_osSecInfoModificationDetected","LSS_osSecInformationMissing":"vCTS: LSS_osSecInformationMissing","LSS_osSecUnexpectedInformation":"vCTS: LSS_osSecUnexpectedInformation","LSS_pdnsMySqlReplication":"vCTS: LSS_pdnsMySqlReplication","LSS_pktCorruptionDetectedViaRCCLANCheck":"vCTS: LSS_pktCorruptionDetectedViaRCCLANCheck","LSS_platformCommandFailure":"vCTS: LSS_platformCommandFailure","LSS_pmDataNotCollected":"vCTS: LSS_pmDataNotCollected","LSS_processDown":"vCTS: LSS_processDown","LSS_processNotStarted":"vCTS: LSS_processNotStarted","LSS_provisioningInhibitedMode":"vCTS: LSS_provisioningInhibitedMode","LSS_rccInhibitedMode":"vCTS: LSS_rccInhibitedMode","LSS_remotedbLinkDown":"vCTS: LSS_remotedbLinkDown","LSS_remoteQueryServerFailure":"vCTS: LSS_remoteQueryServerFailure","LSS_restore":"vCTS: LSS_restore","LSS_serviceCFGDataTimestampError":"vCTS: LSS_serviceCFGDataTimestampError","LSS_serviceCommCxnLost":"vCTS: LSS_serviceCommCxnLost","LSS_serviceOnewayCommunication":"vCTS: LSS_serviceOnewayCommunication","LSS_sheddingOverload":"vCTS: LSS_sheddingOverload","LSS_simxml":"vCTS: LSS_simxml","LSS_sipLinkSetMaxQuarantineList":"vCTS: LSS_sipLinkSetMaxQuarantineList","LSS_sipLinkSetUnavailable":"vCTS: LSS_sipLinkSetUnavailable","LSS_sipLinkUnavailable":"vCTS: LSS_sipLinkUnavailable","LSS_softwareAllocatedResourceOverload":"vCTS: LSS_softwareAllocatedResourceOverload","LSS_softwareComponentStandbyNotReady":"vCTS: LSS_softwareComponentStandbyNotReady","LSS_softwareLicense":"vCTS: LSS_softwareLicense","LSS_svcdegrow":"vCTS: LSS_svcdegrow","LSS_svcgrow":"vCTS: LSS_svcgrow","LSS_swVersionMismatch":"vCTS: LSS_swVersionMismatch","LSS_tftpDownloadCorrupt":"vCTS: LSS_tftpDownloadCorrupt","LSS_timeStampValueOutOfSystemRange":"vCTS: LSS_timeStampValueOutOfSystemRange","LSS_transactionHandlerBlockDepletion":"vCTS: LSS_transactionHandlerBlockDepletion","LSS_upgrade":"vCTS: LSS_upgrade","SYS_BackupFailure":"vCTS: SYS_BackupFailure","SYS_Configuration":"vCTS: SYS_Configuration","SYS_COTRecordTransferFailure":"vCTS: SYS_COTRecordTransferFailure","SYS_CPM_USERDATA_INCONSITENCY":"vCTS: SYS_CPM_USERDATA_INCONSITENCY","SYS_CPM_USERDATA_RESTORED":"vCTS: SYS_CPM_USERDATA_RESTORED","SYS_EventQueueCapacity":"vCTS: SYS_EventQueueCapacity","SYS_ICMPFailure":"vCTS: SYS_ICMPFailure","SYS_IPsecConfig":"vCTS: SYS_IPsecConfig","SYS_LinkDown":"vCTS: SYS_LinkDown","SYS_NotifyDisabled":"vCTS: SYS_NotifyDisabled","SYS_NotifyLocked":"vCTS: SYS_NotifyLocked","SYS_NumTL1MeasThresh":"vCTS: SYS_NumTL1MeasThresh","SYS_RADIUS_TO_LDAP_FAILURE":"vCTS: SYS_RADIUS_TO_LDAP_FAILURE","SYS_ROOT_ACCESS_DENIED":"vCTS: SYS_ROOT_ACCESS_DENIED","SYS_ROOT_FTP_VIOLATION":"vCTS: SYS_ROOT_FTP_VIOLATION","SYS_ROOT_LOGIN_VIOLATION":"vCTS: SYS_ROOT_LOGIN_VIOLATION","SYS_ROOT_SSH_LOGIN_VIOLATION":"vCTS: SYS_ROOT_SSH_LOGIN_VIOLATION","SYS_SetupAAAFailure":"vCTS: SYS_SetupAAAFailure","SYS_SNETrapOverload":"vCTS: SYS_SNETrapOverload","SYS_SNMPAuthenticationFailure":"vCTS: SYS_SNMPAuthenticationFailure","SYS_SNMPFailure":"vCTS: SYS_SNMPFailure","SYS_SU_TO_ROOT_FAILURE":"vCTS: SYS_SU_TO_ROOT_FAILURE","SYS_SYSTEMTrapOverload":"vCTS: SYS_SYSTEMTrapOverload","SYS_ThresholdCrossed":"vCTS: SYS_ThresholdCrossed","SYS_UndiscoveredObject":"vCTS: SYS_UndiscoveredObject","SYS_WriteAAAFailure":"vCTS: SYS_WriteAAAFailure","jnxSpaceDiskUsageRising":"vDBE-EMS-Juniper: jnxSpaceDiskUsageRising","jnxSpaceDiskUsageRisingCleared":"vDBE-EMS-Juniper: jnxSpaceDiskUsageRisingCleared","jnxSpaceSwapUsageRising":"vDBE-EMS-Juniper: jnxSpaceSwapUsageRising","jnxSpaceSwapUsageRisingCleared":"vDBE-EMS-Juniper: jnxSpaceSwapUsageRisingCleared","jnxSpaceCPULARising":"vDBE-EMS-Juniper: jnxSpaceCPULARising","jnxSpaceCPULARisingCleared":"vDBE-EMS-Juniper: jnxSpaceCPULARisingCleared","jnxSpaceWebpProxyProcessDown":"vDBE-EMS-Juniper: jnxSpaceWebpProxyProcessDown","jnxSpaceWebpProxyProcessUp":"vDBE-EMS-Juniper: jnxSpaceWebpProxyProcessUp","jnxSpaceNMAProcessDown":"vDBE-EMS-Juniper: jnxSpaceNMAProcessDown","jnxSpaceNMAProcessUp":"vDBE-EMS-Juniper: jnxSpaceNMAProcessUp","jnxSpaceJbossProcessDown":"vDBE-EMS-Juniper: jnxSpaceJbossProcessDown","jnxSpaceJbossProcessUp":"vDBE-EMS-Juniper: jnxSpaceJbossProcessUp","jnxSpaceMysqlProcessDown":"vDBE-EMS-Juniper: jnxSpaceMysqlProcessDown","jnxSpaceMysqlProcessUp":"vDBE-EMS-Juniper: jnxSpaceMysqlProcessUp","jnxSpacePostgresqlProcessDown":"vDBE-EMS-Juniper: jnxSpacePostgresqlProcessDown","jnxSpacePostgresqlProcessUp":"vDBE-EMS-Juniper: jnxSpacePostgresqlProcessUp","jnxSpaceWatchdogStopped":"vDBE-EMS-Juniper: jnxSpaceWatchdogStopped","jnxSpaceWatchdogStarted":"vDBE-EMS-Juniper: jnxSpaceWatchdogStarted","jnxSpaceSNAProcessDown":"vDBE-EMS-Juniper: jnxSpaceSNAProcessDown","jnxSpaceSNAProcessUp":"vDBE-EMS-Juniper: jnxSpaceSNAProcessUp","jnxSpaceNodeDown":"vDBE-EMS-Juniper: jnxSpaceNodeDown","jnxSpaceNodeUp":"vDBE-EMS-Juniper: jnxSpaceNodeUp"," jnxSpaceNodeRemoval":"vDBE-EMS-Juniper: jnxSpaceNodeRemoval","jnxCmCfgChange":"vDBE-Juniper: jnxCmCfgChange","jnxCmRescueChange":"vDBE-Juniper: jnxCmRescueChange","jnxEventTrap":"vDBE-Juniper: jnxEventTrap","jnxJsFwAuthFailure":"vDBE-Juniper: jnxJsFwAuthFailure","jnxJsFwAuthServiceUp":"vDBE-Juniper: jnxJsFwAuthServiceUp","jnxJsFwAuthServiceDown":"vDBE-Juniper: jnxJsFwAuthServiceDown","jnxJsFwAuthCapacityExceeded":"vDBE-Juniper: jnxJsFwAuthCapacityExceeded","jnxJsIdpSignatureUpdate":"vDBE-Juniper: jnxJsIdpSignatureUpdate","jnxJsIdpAttackLog":"vDBE-Juniper: jnxJsIdpAttackLog","jnxJsSrcNatPoolThresholdStatus":"vDBE-Juniper: jnxJsSrcNatPoolThresholdStatus","jnxJsNatRuleThresholdStatus":"vDBE-Juniper: jnxJsNatRuleThresholdStatus","jnxJsScreenAttack":"vDBE-Juniper: jnxJsScreenAttack","jnxJsScreenCfgChange":"vDBE-Juniper: jnxJsScreenCfgChange","jnxJsAvPatternUpdateTrap":"vDBE-Juniper: jnxJsAvPatternUpdateTrap","jnxJsChassisClusterSwitchover":"vDBE-Juniper: jnxJsChassisClusterSwitchover","jnxJsChClusterIntfTrap":"vDBE-Juniper: jnxJsChClusterIntfTrap","jnxJsChClusterSpuMismatchTrap":"vDBE-Juniper: jnxJsChClusterSpuMismatchTrap","jnxJsChClusterWeightTrap":"vDBE-Juniper: jnxJsChClusterWeightTrap","jnxLicenseGraceExpired":"vDBE-Juniper: jnxLicenseGraceExpired","jnxLicenseGraceAboutToExpire":"vDBE-Juniper: jnxLicenseGraceAboutToExpire","jnxLicenseAboutToExpire":"vDBE-Juniper: jnxLicenseAboutToExpire","jnxLicenseInfringeCumulative":"vDBE-Juniper: jnxLicenseInfringeCumulative","jnxLicenseInfringeSingle":"vDBE-Juniper: jnxLicenseInfringeSingle","jnxNatAddrPoolThresholdStatus":"vDBE-Juniper: jnxNatAddrPoolThresholdStatus","jnxSyslogTrap":"vDBE-Juniper: jnxSyslogTrap","jnxAccessAuthServiceUp":"vDBE-Juniper: jnxAccessAuthServiceUp","jnxAccessAuthServiceDown":"vDBE-Juniper: jnxAccessAuthServiceDown","jnxAccessAuthServerDisabled":"vDBE-Juniper: jnxAccessAuthServerDisabled","jnxAccessAuthServerEnabled":"vDBE-Juniper: jnxAccessAuthServerEnabled","jnxAccessAuthAddressPoolHighThreshold":"vDBE-Juniper: jnxAccessAuthAddressPoolHighThreshold","jnxAccessAuthAddressPoolAbateThreshold":"vDBE-Juniper: jnxAccessAuthAddressPoolAbateThreshold","jnxAccessAuthAddressPoolOutOfAddresses":"vDBE-Juniper: jnxAccessAuthAddressPoolOutOfAddresses","jnxAccessAuthAddressPoolOutOfMemory":"vDBE-Juniper: jnxAccessAuthAddressPoolOutOfMemory","LEVEL_WARNING_CPU":"vMRF: LEVEL_WARNING_CPU","LEVEL_MAJOR_CPU":"vMRF: LEVEL_MAJOR_CPU","LEVEL_CRITICAL_CPU":"vMRF: LEVEL_CRITICAL_CPU","LEVEL_WARNING_MEM":"vMRF: LEVEL_WARNING_MEM","LEVEL_MAJOR_MEM":"vMRF: LEVEL_MAJOR_MEM","LEVEL_CRITICAL_MEM":"vMRF: LEVEL_CRITICAL_MEM","LEVEL_WARNING_DISK":"vMRF: LEVEL_WARNING_DISK","LEVEL_MAJOR_DISK":"vMRF: LEVEL_MAJOR_DISK","LEVEL_CRITICAL_DISK":"vMRF: LEVEL_CRITICAL_DISK","LEVEL_WARNING_RTPBANDWIDTH":"vMRF: LEVEL_WARNING_RTPBANDWIDTH","LEVEL_MAJOR_RTPBANDWIDTH":"vMRF: LEVEL_MAJOR_RTPBANDWIDTH","LEVEL_CRITICAL_RTPBANDWIDTH":"vMRF: LEVEL_CRITICAL_RTPBANDWIDTH","LEVEL_WARNING_RTPINPACKETLOSS":"vMRF: LEVEL_WARNING_RTPINPACKETLOSS","LEVEL_MAJOR_RTPINPACKETLOSS":"vMRF: LEVEL_MAJOR_RTPINPACKETLOSS","LEVEL_CRITICAL_RTPINPACKETLOSS":"vMRF: LEVEL_CRITICAL_RTPINPACKETLOSS","LEVEL_WARNING_RTPOUTPACKETLOSS":"vMRF: LEVEL_WARNING_RTPOUTPACKETLOSS","LEVEL_MAJOR_RTPOUTPACKETLOSS":"vMRF: LEVEL_MAJOR_RTPOUTPACKETLOSS","LEVEL_CRITICAL_RTPOUTPACKETLOSS":"vMRF: LEVEL_CRITICAL_RTPOUTPACKETLOSS","LEVEL_WARNING_TCPLOSTRETRANSMITRATE":"vMRF: LEVEL_WARNING_TCPLOSTRETRANSMITRATE","LEVEL_MAJOR_TCPLOSTRETRANSMITRATE":"vMRF: LEVEL_MAJOR_TCPLOSTRETRANSMITRATE","LEVEL_CRITICAL_TCPLOSTRETRANSMITRATE":"vMRF: LEVEL_CRITICAL_TCPLOSTRETRANSMITRATE","LEVEL_WARNING_TCPLOSSFAILURERATE":"vMRF: LEVEL_WARNING_TCPLOSSFAILURERATE","LEVEL_MAJOR_TCPLOSSFAILURERATE":"vMRF: LEVEL_MAJOR_TCPLOSSFAILURERATE","LEVEL_CRITICAL_TCPLOSSFAILURERATE":"vMRF: LEVEL_CRITICAL_TCPLOSSFAILURERATE","LEVEL_CRITICAL_RTPLINKDOWN":"vMRF: LEVEL_CRITICAL_RTPLINKDOWN","TARGET_REACHABLE":"vMRF: TARGET_REACHABLE","PUBLICATION_ERROR":"vMRF: PUBLICATION_ERROR","REMOTE_SERVER_SYNCHRONIZATION_ERROR":"vMRF: REMOTE_SERVER_SYNCHRONIZATION_ERROR","TRANSCODER_TOOL_EXEC_ERROR":"vMRF: TRANSCODER_TOOL_EXEC_ERROR","CLIENT_SYNCHRONIZATION_ERROR":"vMRF: CLIENT_SYNCHRONIZATION_ERROR","CLUSTER_UNREACHABLE":"vMRF: CLUSTER_UNREACHABLE","REMOTE_NODE_OFFLINE":"vMRF: REMOTE_NODE_OFFLINE","IPADDR_STOPPED":"vMRF: IPADDR_STOPPED","MRFC_STOPPED":"vMRF: MRFC_STOPPED","MNGT_STOPPED":"vMRF: MNGT_STOPPED","IPADDR_STARTED":"vMRF: IPADDR_STARTED","MRFC_STARTED":"vMRF: MRFC_STARTED","MNGT_STARTED":"vMRF: MNGT_STARTED","VOLATTACH_FAILED":"vMRF: VOLATTACH_FAILED","VOLDETACH_FAILED":"vMRF: VOLDETACH_FAILED","VOLDEL":"vMRF: VOLDEL","VOLCORRUPT":"vMRF: VOLCORRUPT","VOLFOREIGN":"vMRF: VOLFOREIGN","ACTIVE_ALARM_TABLE_PURGE":"vMRF: ACTIVE_ALARM_TABLE_PURGE","GENERIC_FORMER_STATELESS":"vMRF: GENERIC_FORMER_STATELESS","GENERIC_FORMER_STATEFUL":"vMRF: GENERIC_FORMER_STATEFUL","NO_MORE_ALARM_DESCRIPTION":"vMRF: NO_MORE_ALARM_DESCRIPTION","SERVICE_PROCESS_ENDS":"vMRF: SERVICE_PROCESS_ENDS","DEFENSE_STOPPED":"vMRF: DEFENSE_STOPPED","USER_ACCOUNT_LOCKED":"vMRF: USER_ACCOUNT_LOCKED","CONNECTION_SQL_NOT_ESTABLISHED":"vMRF: CONNECTION_SQL_NOT_ESTABLISHED","FALSE_ALARM":"vMRF: FALSE_ALARM","RADIUS SERVER HS":"vMRF: RADIUS SERVER HS","DRM_PACKAGER_IS_NOT_AVAILABLE":"vMRF: DRM_PACKAGER_IS_NOT_AVAILABLE","DRM_LICENSE_BUILDER_IS_NOT_AVAILABLE":"vMRF: DRM_LICENSE_BUILDER_IS_NOT_AVAILABLE","ERROR_WHILE_CREATING_PLAYLIST_MANAGER_FILE":"vMRF: ERROR_WHILE_CREATING_PLAYLIST_MANAGER_FILE","ERROR_WHILE_BUILDING_PLAYLIST_XML_REPRESENTATION":"vMRF: ERROR_WHILE_BUILDING_PLAYLIST_XML_REPRESENTATION","PLAYLIST_FILE_TO_PUBLISH_NOT_FOUND":"vMRF: PLAYLIST_FILE_TO_PUBLISH_NOT_FOUND","COULD_NOT_CONNECT_TO_PVNS_SERVER":"vMRF: COULD_NOT_CONNECT_TO_PVNS_SERVER","HTTP_OR_HTTPCLIENT_EXCEPTION_HAS_OCCURRED":"vMRF: HTTP_OR_HTTPCLIENT_EXCEPTION_HAS_OCCURRED","I/O_ERROR_WHILE_PUBLISHING_PLAYLIST_FILE":"vMRF: I/O_ERROR_WHILE_PUBLISHING_PLAYLIST_FILE","ERROR_WHILE_REQUESTING_SDP_FILE":"vMRF: ERROR_WHILE_REQUESTING_SDP_FILE","ERROR_WHILE_REQUESTING_SDP_FILE:_REMOTE_EXCEPTION":"vMRF: ERROR_WHILE_REQUESTING_SDP_FILE:_REMOTE_EXCEPTION","NO_STREAMING_RESOURCES":"vMRF: NO_STREAMING_RESOURCES","NO_STREAMING_MODULES_REGISTERED":"vMRF: NO_STREAMING_MODULES_REGISTERED","SM_FAILURE":"vMRF: SM_FAILURE","MISSING_FILE_OR_ENCODER":"vMRF: MISSING_FILE_OR_ENCODER","INVALID_RANGE":"vMRF: INVALID_RANGE","THRESHOLD_VALUE_EXCEEDED":"vMRF: THRESHOLD_VALUE_EXCEEDED","TICKET_QUEUE_FULL":"vMRF: TICKET_QUEUE_FULL","PARSING_INITIALIZATION_EXCEPTION":"vMRF: PARSING_INITIALIZATION_EXCEPTION","CUSTOMERCARE_INTERNAL_EXCEPTION":"vMRF: CUSTOMERCARE_INTERNAL_EXCEPTION","PARSING_EXCEPTION":"vMRF: PARSING_EXCEPTION","I/O_PROBLEM":"vMRF: I/O_PROBLEM","INEXISTENT_FILE_OR_FOLDER":"vMRF: INEXISTENT_FILE_OR_FOLDER","FILE_NOT_IN_XML_FORMAT":"vMRF: FILE_NOT_IN_XML_FORMAT","SERVICE_STATE_CHANGE":"vMRF: SERVICE_STATE_CHANGE","MONITORED_FILE_UPDATE_ERROR":"vMRF: MONITORED_FILE_UPDATE_ERROR","MONITORED_RPM_DELETED_ERROR":"vMRF: MONITORED_RPM_DELETED_ERROR","MONITORED_RPM_ADDED_ERROR":"vMRF: MONITORED_RPM_ADDED_ERROR","MONITORED_CHMOD_ERROR":"vMRF: MONITORED_CHMOD_ERROR","MONITORED_CHOWN_ERROR":"vMRF: MONITORED_CHOWN_ERROR","PASSWD_ROOT_ERROR":"vMRF: PASSWD_ROOT_ERROR","PASSWD_ERROR":"vMRF: PASSWD_ERROR","ROOTKIT_ERROR":"vMRF: ROOTKIT_ERROR","STARTUP_ERR_UNDEFINED_PORT":"vMRF: STARTUP_ERR_UNDEFINED_PORT","STARTUP_ERR_FAIL_FIND_HOSTNAME":"vMRF: STARTUP_ERR_FAIL_FIND_HOSTNAME","STARTUP_ERR_CF_MISSING":"vMRF: STARTUP_ERR_CF_MISSING","STARTUP_ERR_FAILED_TO_OPEN_CF":"vMRF: STARTUP_ERR_FAILED_TO_OPEN_CF","STARTUP_ERR_FAILED_TO_BIND_PORT":"vMRF: STARTUP_ERR_FAILED_TO_BIND_PORT","STARTUP_ERR_CFG_UNIT_MISSING":"vMRF: STARTUP_ERR_CFG_UNIT_MISSING","MCTR_INVALID_CODEC_NAME":"vMRF: MCTR_INVALID_CODEC_NAME","RTSP_SERVER_FAILURE":"vMRF: RTSP_SERVER_FAILURE","RTSP_SERVER_QUARANTINE":"vMRF: RTSP_SERVER_QUARANTINE","TRANSCODING_FAILURE":"vMRF: TRANSCODING_FAILURE","FILE_CACHE_FAILURE":"vMRF: FILE_CACHE_FAILURE","STARTUP_ERROR_INITIALIZATION_FAILED":"vMRF: STARTUP_ERROR_INITIALIZATION_FAILED","CONFERENCE_FAILURE":"vMRF: CONFERENCE_FAILURE","PLC_DEGRADATION_LOW":"vMRF: PLC_DEGRADATION_LOW","PLC_DEGRADATION_MEDIUM":"vMRF: PLC_DEGRADATION_MEDIUM","PLC_DEGRADATION_HIGH":"vMRF: PLC_DEGRADATION_HIGH","AUDIO_RESYNCH_LOW":"vMRF: AUDIO_RESYNCH_LOW","AUDIO_RESYNCH_MEDIUM":"vMRF: AUDIO_RESYNCH_MEDIUM","AUDIO_RESYNCH_HIGH":"vMRF: AUDIO_RESYNCH_HIGH","VIDEO_RESYNCH_LOW":"vMRF: VIDEO_RESYNCH_LOW","VIDEO_RESYNCH_MEDIUM":"vMRF: VIDEO_RESYNCH_MEDIUM","VIDEO_RESYNCH_HIGH":"vMRF: VIDEO_RESYNCH_HIGH","PLAY_FAILURES_LOW":"vMRF: PLAY_FAILURES_LOW","PLAY_FAILURES_MEDIUM":"vMRF: PLAY_FAILURES_MEDIUM","PLAY_FAILURES_HIGH":"vMRF: PLAY_FAILURES_HIGH","NOT_ENOUGH_FREE_CONFEREE":"vMRF: NOT_ENOUGH_FREE_CONFEREE","NO_LONGER_FREE_CONFERENCE_ROOM":"vMRF: NO_LONGER_FREE_CONFERENCE_ROOM","STARTUP_ERROR_FAIL_TO_READ_CF":"vMRF: STARTUP_ERROR_FAIL_TO_READ_CF","STARTUP_ERROR_SIP_ADAPTER_INIT":"vMRF: STARTUP_ERROR_SIP_ADAPTER_INIT","STARTUP_ERROR_MONITORING_INIT":"vMRF: STARTUP_ERROR_MONITORING_INIT","REGISTER_ERROR_FAILURE":"vMRF: REGISTER_ERROR_FAILURE","DRI_ERROR_FAILURE":"vMRF: DRI_ERROR_FAILURE","STARTUP_ERROR_STACK_CONFIGURATION":"vMRF: STARTUP_ERROR_STACK_CONFIGURATION","STARTUP_ERROR_CONF":"vMRF: STARTUP_ERROR_CONF","STARTUP_ERROR_UNDEFINED_PORT":"vMRF: STARTUP_ERROR_UNDEFINED_PORT","HOST_REMOVED":"vMRF: HOST_REMOVED","INTERCEPT_THRESHOLD_NB_DIALOG_ALLOCATED":"vMRF: INTERCEPT_THRESHOLD_NB_DIALOG_ALLOCATED","STARTUP_ERROR_STACK_CONF":"vMRF: STARTUP_ERROR_STACK_CONF","STARTUP_ERROR_CONFIGURATION":"vMRF: STARTUP_ERROR_CONFIGURATION","STARTUP_ERROR_FAILED_TO_RETRIEVE_HOSTNAME":"vMRF: STARTUP_ERROR_FAILED_TO_RETRIEVE_HOSTNAME","LEVEL_WARNING_CALL":"vMRF: LEVEL_WARNING_CALL","LEVEL_ALARM_MINOR_CALL":"vMRF: LEVEL_ALARM_MINOR_CALL","LEVEL_ALARM_MAJOR_CALL":"vMRF: LEVEL_ALARM_MAJOR_CALL","LEVEL_ALARM_MRFPoutOfService":"vMRF: LEVEL_ALARM_MRFPoutOfService","MRFP_CALL_REJECTED_Threshold #1":"vMRF: MRFP_CALL_REJECTED_Threshold #1","MRFP_CALL_REJECTED_Threshold #2":"vMRF: MRFP_CALL_REJECTED_Threshold #2","MRFP_CALL_REJECTED_Threshold #3":"vMRF: MRFP_CALL_REJECTED_Threshold #3","MRFP_CALL_RETRIED_Threshold #1":"vMRF: MRFP_CALL_RETRIED_Threshold #1","MRFP_CALL_RETRIED_Threshold #2":"vMRF: MRFP_CALL_RETRIED_Threshold #2","MRFP_CALL_RETRIED_Threshold #3":"vMRF: MRFP_CALL_RETRIED_Threshold #3","STARTUP_PUB_FILE_NOT_PRESENT":"vMRF: STARTUP_PUB_FILE_NOT_PRESENT","STARTUP_INF_FILE_NOT_PRESENT":"vMRF: STARTUP_INF_FILE_NOT_PRESENT","STARTUP_LIC_FILE_NOT_PRESENT":"vMRF: STARTUP_LIC_FILE_NOT_PRESENT","GENERIC_HARDWARE_PROBLEM":"vMRF: GENERIC_HARDWARE_PROBLEM","HARD_DRIVE_PROBLEM":"vMRF: HARD_DRIVE_PROBLEM","NETWORK_LINK_PROBLEM":"vMRF: NETWORK_LINK_PROBLEM","POWER_SUPPLY_PROBLEM":"vMRF: POWER_SUPPLY_PROBLEM","SMART_HARD_DRIVE_PROBLEM":"vMRF: SMART_HARD_DRIVE_PROBLEM","STARTUP_ERROR":"vMRF: STARTUP_ERROR","RESOURCE_NOT_ACCESSIBLE":"vMRF: RESOURCE_NOT_ACCESSIBLE","RESOURCE_ACCESSIBLE":"vMRF: RESOURCE_ACCESSIBLE","RESOURCE_FULL":"vMRF: RESOURCE_FULL","DRI_ALARM":"vMRF: DRI_ALARM","REGISTER_ERROR_CCF":"vMRF: REGISTER_ERROR_CCF","REGISTER_ERROR_EXTERNAL":"vMRF: REGISTER_ERROR_EXTERNAL","TIMEOUT_ERROR":"vMRF: TIMEOUT_ERROR","VXML_ERROR":"vMRF: VXML_ERROR","A Network Element is no longer available due to a connection failure":"vMVM: A Network Element is no longer available due to a connection failure","A MetaSphere server is reporting a fault with the configuration of its connection to MetaView":"vMVM: A MetaSphere server is reporting a fault with the configuration of its connection to MetaView","Configured OBS IPs don't match available OBS nodes. Configured but unavailable nodes include: []. Real nodes not configured include: []":"vMVM: Configured OBS IPs don't match available OBS nodes. Configured but unavailable nodes include: []. Real nodes not configured include: []","Service Assurance Server cannot be contacted":"vMVM: Service Assurance Server cannot be contacted","The primary MetaView Director has lost contact with the backup MetaView Director":"vMVM: The primary MetaView Director has lost contact with the backup MetaView Director","The active server has lost connection to the standby":"vMVM: The active server has lost connection to the standby","CrashCounter":"vprobes-vBE-Processing: CrashCounter","IsAlive":"vprobes-vBE-Processing: IsAlive","SwRestart":"vprobes-vLB: SwRestart","Repeated exceptions have occurred.":"vSBC-Metaswitch: Repeated exceptions have occurred.","A licensing limit is close to capacity.":"vSBC-Metaswitch: A licensing limit is close to capacity.","One or more feature packs have been breached.":"vSBC-Metaswitch: One or more feature packs have been breached.","The grace period on this Perimeta system will expire in less than 48 hours, after which calls will not be processed.":"vSBC-Metaswitch: The grace period on this Perimeta system will expire in less than 48 hours, after which calls will not be processed.","The grace period on this Perimeta system will expire in less than 7 days, after which calls will not be processed.":"vSBC-Metaswitch: The grace period on this Perimeta system will expire in less than 7 days, after which calls will not be processed.","The license on this Perimeta system will expire in less than 4 weeks.":"vSBC-Metaswitch: The license on this Perimeta system will expire in less than 4 weeks.","A Perimeta blade has become unlicensed.":"vSBC-Metaswitch: A Perimeta blade has become unlicensed.","Perimeta is licensed with a bypass certificate, which is valid until the time displayed.":"vSBC-Metaswitch: Perimeta is licensed with a bypass certificate, which is valid until the time displayed.","The number of licensed instances exceeded a threshold of the licensed limit.":"vSBC-Metaswitch: The number of licensed instances exceeded a threshold of the licensed limit.","The software token on the primary Distributed Capacity Manager will expire on the displayed date.":"vSBC-Metaswitch: The software token on the primary Distributed Capacity Manager will expire on the displayed date.","A capacity limit on the license installed on this Perimeta system does not match the largest limit across all systems in the deployment.":"vSBC-Metaswitch: A capacity limit on the license installed on this Perimeta system does not match the largest limit across all systems in the deployment.","An adjacency has voice quality alerts.":"vSBC-Metaswitch: An adjacency has voice quality alerts.","The number of calls being audited is congested.":"vSBC-Metaswitch: The number of calls being audited is congested.","Session Controller is rejecting calls because there is no valid active call policy set configured.":"vSBC-Metaswitch: Session Controller is rejecting calls because there is no valid active call policy set configured.","A call policy set is inactive because it has been misconfigured.":"vSBC-Metaswitch: A call policy set is inactive because it has been misconfigured.","Session Controller is inactive and rejecting calls.":"vSBC-Metaswitch: Session Controller is inactive and rejecting calls.","Sources have breached minor or major blacklist thresholds.":"vSBC-Metaswitch: Sources have breached minor or major blacklist thresholds.","Sources are blacklisted.":"vSBC-Metaswitch: Sources are blacklisted.","The blacklisting configuration will change as a result of upgrade and some configured blacklists or alerts will no longer be applied.":"vSBC-Metaswitch: The blacklisting configuration will change as a result of upgrade and some configured blacklists or alerts will no longer be applied.","A large number of downgrades and bans have been created as a result of blacklisting.":"vSBC-Metaswitch: A large number of downgrades and bans have been created as a result of blacklisting.","Session Controller is unable to track further sources for blacklisting.":"vSBC-Metaswitch: Session Controller is unable to track further sources for blacklisting.","A software protection switch was triggered.":"vSBC-Metaswitch: A software protection switch was triggered.","A disk area on a processor blade is nearly full.":"vSBC-Metaswitch: A disk area on a processor blade is nearly full.","Memory use is very high.":"vSBC-Metaswitch: Memory use is very high.","The primary processor-blade has lost contact with the backup.":"vSBC-Metaswitch: The primary processor-blade has lost contact with the backup.","An efix or patch has been applied to this system containing diagnostic versions of some software libraries.":"vSBC-Metaswitch: An efix or patch has been applied to this system containing diagnostic versions of some software libraries.","A software protection switch (SPS) was triggered. Call and registration state was lost.":"vSBC-Metaswitch: A software protection switch (SPS) was triggered. Call and registration state was lost.","The Ethernet Heartbeat between primary and backup processors has failed.":"vSBC-Metaswitch: The Ethernet Heartbeat between primary and backup processors has failed.","The Backplane Heartbeat between primary and backup processors has failed.":"vSBC-Metaswitch: The Backplane Heartbeat between primary and backup processors has failed.","A disk area on a processor blade reported an error.":"vSBC-Metaswitch: A disk area on a processor blade reported an error.","The system is upgrading.":"vSBC-Metaswitch: The system is upgrading.","An error with NTP functionality has been detected.":"vSBC-Metaswitch: An error with NTP functionality has been detected.","One or more users are locked out of the system.":"vSBC-Metaswitch: One or more users are locked out of the system.","The Craft Terminal user FTP directory on a processor blade is nearly full.":"vSBC-Metaswitch: The Craft Terminal user FTP directory on a processor blade is nearly full.","A scheduled configuration snapshot has failed.":"vSBC-Metaswitch: A scheduled configuration snapshot has failed.","The Session Controller is stopping as a result of administrator action.":"vSBC-Metaswitch: The Session Controller is stopping as a result of administrator action.","A Session Controller processor blade is stopping as a result of administrator action.":"vSBC-Metaswitch: A Session Controller processor blade is stopping as a result of administrator action.","An object could not be activated because its service address does not exist or is not fully specified.":"vSBC-Metaswitch: An object could not be activated because its service address does not exist or is not fully specified.","The hardware on a processor does not meet minimum requirements.":"vSBC-Metaswitch: The hardware on a processor does not meet minimum requirements.","The hardware expectations of the two processors are not the same.":"vSBC-Metaswitch: The hardware expectations of the two processors are not the same.","The read speed of the main hard disk on a processor blade is too slow.":"vSBC-Metaswitch: The read speed of the main hard disk on a processor blade is too slow.","An error has occurred reading from the hard disk on a processor blade.":"vSBC-Metaswitch: An error has occurred reading from the hard disk on a processor blade.","Backup and primary processor-blades have an inconsistent system role.":"vSBC-Metaswitch: Backup and primary processor-blades have an inconsistent system role.","Event: The system encountered a critical error and had to restart.":"vSBC-Metaswitch: Event: The system encountered a critical error and had to restart.","Event: A RADIUS server failed to respond to an authentication request.":"vSBC-Metaswitch: Event: A RADIUS server failed to respond to an authentication request.","Event: All configured RADIUS servers failed to respond to authentication requests.":"vSBC-Metaswitch: Event: All configured RADIUS servers failed to respond to authentication requests.","Event: The number of CPUs has changed.":"vSBC-Metaswitch: Event: The number of CPUs has changed.","Event: A user has been automatically deleted":"vSBC-Metaswitch: Event: A user has been automatically deleted","The primary processor blade has lost management connectivity":"vSBC-Metaswitch: The primary processor blade has lost management connectivity","Event: A processor blade is running with DPDK mode disabled when DPDK mode is,expected.":"vSBC-Metaswitch: Event: A processor blade is running with DPDK mode disabled when DPDK mode is,expected.","Event: Processor blade %1 is running with DPDK mode disabled when DPDK mode may be possible.":"vSBC-Metaswitch: Event: Processor blade %1 is running with DPDK mode disabled when DPDK mode may be possible.","Perimeta is attempting to resend cached billing records.":"vSBC-Metaswitch: Perimeta is attempting to resend cached billing records.","The Rf billing cache is full.":"vSBC-Metaswitch: The Rf billing cache is full.","The inbound call queue is congested.":"vSBC-Metaswitch: The inbound call queue is congested.","A configured realm group contains realms that are not available to the SBC.":"vSBC-Metaswitch: A configured realm group contains realms that are not available to the SBC.","An allowed MSC configuration is not connected to any physical MSCs.":"vSBC-Metaswitch: An allowed MSC configuration is not connected to any physical MSCs.","A SIP Peer has stopped responding to SIP OPTIONS pings. MSW: 20160303: Alarm text is changed in v3.9 software to read: \\"An adjacency has lost connectivity, according to SIP OPTIONS pings\\"":"vSBC-Metaswitch: A SIP Peer has stopped responding to SIP OPTIONS pings. MSW: 20160303: Alarm text is changed in v3.9 software to read: \\"An adjacency has lost connectivity, according to SIP OPTIONS pings\\"","An adjacency has failed as the listen socket could not be created. Check for configuration mismatches with the associated service interface.":"vSBC-Metaswitch: An adjacency has failed as the listen socket could not be created. Check for configuration mismatches with the associated service interface.","No suitable DNS records were found for a peer group's DNS hostname.":"vSBC-Metaswitch: No suitable DNS records were found for a peer group's DNS hostname.","One or more SIP peers from a peer group have stopped responding to SIP OPTIONS pings":"vSBC-Metaswitch: One or more SIP peers from a peer group have stopped responding to SIP OPTIONS pings","An adjacency has failed as its service network does not match the service network on its associated peer group.":"vSBC-Metaswitch: An adjacency has failed as its service network does not match the service network on its associated peer group.","An adjacency has failed as its configured TLS certificate could not be found.":"vSBC-Metaswitch: An adjacency has failed as its configured TLS certificate could not be found.","The caching function has not been initialized properly.":"vSBC-Metaswitch: The caching function has not been initialized properly.","An adjacency has failed as the listen socket could not be created.":"vSBC-Metaswitch: An adjacency has failed as the listen socket could not be created.","An adjacency is congested and may be rejecting calls.":"vSBC-Metaswitch: An adjacency is congested and may be rejecting calls.","There is an issue with a Diameter peer.":"vSBC-Metaswitch: There is an issue with a Diameter peer.","A realm is no longer reachable via any configured peers.":"vSBC-Metaswitch: A realm is no longer reachable via any configured peers.","An FQDN for a configured Diameter peer has failed to resolve to a valid IP address.":"vSBC-Metaswitch: An FQDN for a configured Diameter peer has failed to resolve to a valid IP address.","One or more peers resolved from a DNS lookup of a configured peer's address cannot be contacted":"vSBC-Metaswitch: One or more peers resolved from a DNS lookup of a configured peer's address cannot be contacted","An interface ARP or NDP probe has failed.":"vSBC-Metaswitch: An interface ARP or NDP probe has failed.","One or more IP address conflicts have been detected on service interfaces with zero criticality. If there are other probe failures, this alarm will remain raised until all conflicts are resolved.":"vSBC-Metaswitch: One or more IP address conflicts have been detected on service interfaces with zero criticality. If there are other probe failures, this alarm will remain raised until all conflicts are resolved.","One or more IP address conflicts have been detected on service interfaces with non-zero criticality. If there are other probe failures, this alarm will remain raised until all conflicts are resolved.":"vSBC-Metaswitch: One or more IP address conflicts have been detected on service interfaces with non-zero criticality. If there are other probe failures, this alarm will remain raised until all conflicts are resolved.","An interface device is running below the expected speed. This alarm was originally triggered by a probe failure on a service interface.":"vSBC-Metaswitch: An interface device is running below the expected speed. This alarm was originally triggered by a probe failure on a service interface.","An interface device is running above the expected speed.":"vSBC-Metaswitch: An interface device is running above the expected speed.","An IP address conflict has been detected on a management interface.":"vSBC-Metaswitch: An IP address conflict has been detected on a management interface.","An interface ICMP probe has failed.":"vSBC-Metaswitch: An interface ICMP probe has failed.","A High-Availability link has detected a connectivity issue.":"vSBC-Metaswitch: A High-Availability link has detected a connectivity issue.","An HA-link device is being reported as underspeed.":"vSBC-Metaswitch: An HA-link device is being reported as underspeed.","An IP address conflict has been detected on a replication interface.":"vSBC-Metaswitch: An IP address conflict has been detected on a replication interface.","The Session Controller has started.":"vSBC-Metaswitch: The Session Controller has started.","A statistic exceeded its configured thresholds.":"vSBC-Metaswitch: A statistic exceeded its configured thresholds.","One or more statistic has not been retrieved at least 3 times in a row.":"vSBC-Metaswitch: One or more statistic has not been retrieved at least 3 times in a row.","A Refresh Alarms request was triggered. Alarms not re-raised will be cleared in 5 minutes.":"vSBC-Metaswitch: A Refresh Alarms request was triggered. Alarms not re-raised will be cleared in 5 minutes.","A statistic has exceeded its configured thresholds.":"vSBC-Metaswitch: A statistic has exceeded its configured thresholds.","A Fallback Operation will soon be started":"vSBG: A Fallback Operation will soon be started","BRM, Auto Export Backup Failed":"vSBG: BRM, Auto Export Backup Failed","BRM, Scheduled Backup Failed":"vSBG: BRM, Scheduled Backup Failed","COM SA, AMF Component Cleanup Failed":"vSBG: COM SA, AMF Component Cleanup Failed","COM SA, AMF Component Instantiation Failed":"vSBG: COM SA, AMF Component Instantiation Failed","COM SA, AMF SI Unassigned":"vSBG: COM SA, AMF SI Unassigned","COM SA, CLM Cluster Node Unavailable":"vSBG: COM SA, CLM Cluster Node Unavailable","COM SA, MDF Detected Model Error":"vSBG: COM SA, MDF Detected Model Error","COM SA, Proxy Status of a Component Changed to Unproxied":"vSBG: COM SA, Proxy Status of a Component Changed to Unproxied","File Management, Number of Files in FileGroup Exceeded":"vSBG: File Management, Number of Files in FileGroup Exceeded","File Management, Max Size in FileGroup Exceeded":"vSBG: File Management, Max Size in FileGroup Exceeded","LOTC Disk Replication Communication":"vSBG: LOTC Disk Replication Communication","LOTC Disk Replication Consistency":"vSBG: LOTC Disk Replication Consistency","LOTC Disk Usage":"vSBG: LOTC Disk Usage","LOTC memory Usage":"vSBG: LOTC memory Usage","LOTC Time Synchronization":"vSBG: LOTC Time Synchronization","SBG, BGF Control Link Down":"vSBG: SBG, BGF Control Link Down","SBG, BGF Control Link Disabled":"vSBG: SBG, BGF Control Link Disabled","SBG, BGF Control Link Enabled":"vSBG: SBG, BGF Control Link Enabled","SBG, BGF Control Link Remote Locked":"vSBG: SBG, BGF Control Link Remote Locked","SBG, Charging Data Storage Maximum Records Reached":"vSBG: SBG, Charging Data Storage Maximum Records Reached","SBG, Charging Server Rejects Charging Data":"vSBG: SBG, Charging Server Rejects Charging Data","SBG, Excessive Packet Rate Detected ":"vSBG: SBG, Excessive Packet Rate Detected ","SBG, High Amount of Malformed Packets Received":"vSBG: SBG, High Amount of Malformed Packets Received","SBG, High Amount of STUN Packets Detected":"vSBG: SBG, High Amount of STUN Packets Detected","SBG, High Amount of TCP SYN Packets Received":"vSBG: SBG, High Amount of TCP SYN Packets Received","SBG, High Amount of UDP Packets Received ":"vSBG: SBG, High Amount of UDP Packets Received ","SBG, IP Address Blocked Due to Excessive Packet Rate":"vSBG: SBG, IP Address Blocked Due to Excessive Packet Rate","SBG, Lost Connectivity to Diameter Server":"vSBG: SBG, Lost Connectivity to Diameter Server","SBG, Mated Pair out of Service":"vSBG: SBG, Mated Pair out of Service","SBG, Network Unavailable for Media Handling":"vSBG: SBG, Network Unavailable for Media Handling","SBG, Non-emergency Call Released to Free Resources for Emergency Call":"vSBG: SBG, Non-emergency Call Released to Free Resources for Emergency Call","SBG, Not Enough Disk Space for Storing Charging Data":"vSBG: SBG, Not Enough Disk Space for Storing Charging Data","SBG, Payload Mated Pair Failure":"vSBG: SBG, Payload Mated Pair Failure","SBG, Payload Processor Failure":"vSBG: SBG, Payload Processor Failure","SBG, Processor Overloaded":"vSBG: SBG, Processor Overloaded","SBG, Registered User Set in Quarantine":"vSBG: SBG, Registered User Set in Quarantine","SBG, Registration Contacts Exceed Configured Threshold":"vSBG: SBG, Registration Contacts Exceed Configured Threshold","SBG, Sequential Restart Initiated":"vSBG: SBG, Sequential Restart Initiated","SBG, SIP Abuse Detected":"vSBG: SBG, SIP Abuse Detected","SBG, SIP Network Locked":"vSBG: SBG, SIP Network Locked","SBG, SIP Next Hop Reachable":"vSBG: SBG, SIP Next Hop Reachable","SBG, SIP Next Hop Unreachable":"vSBG: SBG, SIP Next Hop Unreachable","SBG, SIP Request Rejected by Network Throttling":"vSBG: SBG, SIP Request Rejected by Network Throttling","SBG, TLS Certificate Imported":"vSBG: SBG, TLS Certificate Imported","SBG, Trace Recording Session Number Limit Reached":"vSBG: SBG, Trace Recording Session Number Limit Reached","SBG, Trace Session Deactivated":"vSBG: SBG, Trace Session Deactivated","SBG, Trace Session Times Out":"vSBG: SBG, Trace Session Times Out","SBG, Unknown Media Type or Payload Type":"vSBG: SBG, Unknown Media Type or Payload Type"} -# -# if action.test.override is true, then any action will be marked as test=true (even if incoming action request had test=false); otherwise, test flag will be unchanged on the action request -action.test.override=false -# if action.insert.test.event is true, then insert event even if the action is set to test -action.insert.test.event=false -clds.service.cache.invalidate.after.seconds=120 - -#DCAE Inventory Url Properties -DCAE_INVENTORY_URL = http://dcae.api.simpledemo.onap.org:8080 - -#DCAE Dispatcher Url Properties -DCAE_DISPATCHER_URL = http://dcae.api.simpledemo.onap.org:8080 -dcae.header.requestId = X-ECOMP-RequestID diff --git a/extra/docker/clamp/docker-compose.yml b/extra/docker/clamp/docker-compose.yml index c7e5fea0c..1de32bfb4 100644 --- a/extra/docker/clamp/docker-compose.yml +++ b/extra/docker/clamp/docker-compose.yml @@ -23,13 +23,13 @@ services: ports: - "8080:8080" - sdc_proxy: + third_party_proxy: image: python:2-slim volumes: - - "../../../src/test/resources/http-cache/sdc-example/:/sdc:ro" + - "../../../src/test/resources/http-cache/example/:/thirdparty:rw" - "../../../src/test/resources/http-cache/:/script/:ro" depends_on: - clamp ports: - "8085:8085" - command: /bin/sh -c "pip install requests && python /script/sdc_proxy.py --port 8085 --root /sdc" + command: /bin/sh -c "pip install requests && pip install simplejson && python -u /script/third_party_proxy.py -v true --port 8085 --root /thirdparty" diff --git a/pom.xml b/pom.xml index 31997cdd0..76a221445 100644 --- a/pom.xml +++ b/pom.xml @@ -506,8 +506,8 @@ sdc-tosca 1.2.2 - - + + @@ -829,7 +829,7 @@ ${project.basedir}/src/test/resources/http-cache/:/usr/src/http-cache-app - ${project.basedir}/src/test/resources/http-cache/sdc-example/:/usr/src/http-cache-app/data-cache + ${project.basedir}/src/test/resources/http-cache/example/:/usr/src/http-cache-app/data-cache diff --git a/src/test/resources/http-cache/example/pdp/api/getConfig/.file b/src/test/resources/http-cache/example/pdp/api/getConfig/.file new file mode 100644 index 000000000..fb2ad04b4 --- /dev/null +++ b/src/test/resources/http-cache/example/pdp/api/getConfig/.file @@ -0,0 +1,2 @@ +[{"policyConfigMessage":"Config Retrieved! ","policyConfigStatus":"CONFIG_RETRIEVED","type":"JSON","config":"{\"service\":\"tca_policy\",\"location\":\"SampleServiceLocation\",\"uuid\":\"test\",\"policyName\":\"MicroServicevCPE\",\"description\":\"MicroService vCPE Policy\",\"configName\":\"SampleConfigName\",\"templateVersion\":\"OpenSource.version.1\",\"version\":\"1.1.0\",\"priority\":\"1\",\"policyScope\":\"resource=SampleResource,service=SampleService,type=SampleType,closedLoopControlName=ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e\",\"riskType\":\"SampleRiskType\",\"riskLevel\":\"1\",\"guard\":\"False\",\"content\":{\"tca_policy\":{\"domain\":\"measurementsForVfScaling\",\"metricsPerEventName\":[{\"eventName\":\"Measurement_vGMUX\",\"controlLoopSchemaType\":\"VNF\",\"policyScope\":\"DCAE\",\"policyName\":\"DCAE.Config_tca-hi-lo\",\"policyVersion\":\"v0.0.1\",\"thresholds\":[{\"closedLoopControlName\":\"ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e\",\"version\":\"1.0.2\",\"fieldPath\":\"$.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value\",\"thresholdValue\":0,\"direction\":\"EQUAL\",\"severity\":\"MAJOR\",\"closedLoopEventStatus\":\"ABATED\"},{\"closedLoopControlName\":\"ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e\",\"version\":\"1.0.2\",\"fieldPath\":\"$.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value\",\"thresholdValue\":0,\"direction\":\"GREATER\",\"severity\":\"CRITICAL\",\"closedLoopEventStatus\":\"ONSET\"}]}]}}}","policyName":"com.Config_MS_MicroServicevCPE.1.xml","policyVersion":"1","matchingConditions":{"ONAPName":"DCAE","ConfigName":"SampleConfigName","service":"tca_policy","uuid":"test","Location":"SampleServiceLocation"},"responseAttributes":{},"property":null}, +{"policyConfigMessage":"Config Retrieved! ","policyConfigStatus":"CONFIG_RETRIEVED","type":"JSON","config":"{\"service\":\"tca_policy\",\"location\":\"SampleServiceLocation\",\"uuid\":\"test\",\"policyName\":\"MicroServicevCPE\",\"description\":\"MicroService vCPE Policy\",\"configName\":\"SampleConfigName\",\"templateVersion\":\"OpenSource.version.1\",\"version\":\"1.1.0\",\"priority\":\"1\",\"policyScope\":\"resource=SampleResource,service=SampleService,type=SampleType,closedLoopControlName=ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e\",\"riskType\":\"SampleRiskType\",\"riskLevel\":\"1\",\"guard\":\"False\",\"content\":{\"tca_policy\":{\"domain\":\"measurementsForVfScaling\",\"metricsPerEventName\":[{\"eventName\":\"Measurement_vGMUX\",\"controlLoopSchemaType\":\"VNF\",\"policyScope\":\"DCAE\",\"policyName\":\"DCAE.Config_tca-hi-lo\",\"policyVersion\":\"v0.0.1\",\"thresholds\":[{\"closedLoopControlName\":\"ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e\",\"version\":\"1.0.2\",\"fieldPath\":\"$.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value\",\"thresholdValue\":0,\"direction\":\"EQUAL\",\"severity\":\"MAJOR\",\"closedLoopEventStatus\":\"ABATED\"},{\"closedLoopControlName\":\"ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e\",\"version\":\"1.0.2\",\"fieldPath\":\"$.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value\",\"thresholdValue\":0,\"direction\":\"GREATER\",\"severity\":\"CRITICAL\",\"closedLoopEventStatus\":\"ONSET\"}]}]}}}","policyName":"ClHolmes1.Config_ClosedLoop_f142fc95_2601_11e8_89ce_0242ac130002_null","policyVersion":"1","matchingConditions":{"ONAPName":"DCAE","ConfigName":"SampleConfigName","service":"tca_policy","uuid":"test","Location":"SampleServiceLocation"},"responseAttributes":{},"property":null}] \ No newline at end of file diff --git a/src/test/resources/http-cache/example/pdp/api/getConfig/.header b/src/test/resources/http-cache/example/pdp/api/getConfig/.header new file mode 100644 index 000000000..9958716f2 --- /dev/null +++ b/src/test/resources/http-cache/example/pdp/api/getConfig/.header @@ -0,0 +1 @@ +{"Transfer-Encoding": "chunked", "Date": "Mon, 12 Mar 2018 15:03:26 GMT", "Content-Type": "application/json;charset=UTF-8", "Server": "Apache-Coyote/1.1"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/pdp/api/pushPolicy/.file b/src/test/resources/http-cache/example/pdp/api/pushPolicy/.file new file mode 100644 index 000000000..0637a088a --- /dev/null +++ b/src/test/resources/http-cache/example/pdp/api/pushPolicy/.file @@ -0,0 +1 @@ +[] \ No newline at end of file diff --git a/src/test/resources/http-cache/example/pdp/api/pushPolicy/.header b/src/test/resources/http-cache/example/pdp/api/pushPolicy/.header new file mode 100644 index 000000000..6a280d972 --- /dev/null +++ b/src/test/resources/http-cache/example/pdp/api/pushPolicy/.header @@ -0,0 +1 @@ +{"Transfer-Encoding": "chunked", "Set-Cookie": "JSESSIONID=158qxkdtdobkd1umr3ikkgrmlx;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "e2ddb3c8-994f-47df-b4dc-097d4fb55c08"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/pdp/api/updatePolicy/.file b/src/test/resources/http-cache/example/pdp/api/updatePolicy/.file new file mode 100644 index 000000000..0637a088a --- /dev/null +++ b/src/test/resources/http-cache/example/pdp/api/updatePolicy/.file @@ -0,0 +1 @@ +[] \ No newline at end of file diff --git a/src/test/resources/http-cache/example/pdp/api/updatePolicy/.header b/src/test/resources/http-cache/example/pdp/api/updatePolicy/.header new file mode 100644 index 000000000..6a280d972 --- /dev/null +++ b/src/test/resources/http-cache/example/pdp/api/updatePolicy/.header @@ -0,0 +1 @@ +{"Transfer-Encoding": "chunked", "Set-Cookie": "JSESSIONID=158qxkdtdobkd1umr3ikkgrmlx;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "e2ddb3c8-994f-47df-b4dc-097d4fb55c08"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources?resourceType=CVFC/.file b/src/test/resources/http-cache/example/sdc/v1/catalog/resources?resourceType=CVFC/.file new file mode 100644 index 000000000..7115df3f9 --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources?resourceType=CVFC/.file @@ -0,0 +1 @@ +[{"uuid":"a01ebd00-4b64-4607-8422-c3733735800d","invariantUUID":"dd6edb9e-015e-45ae-9597-bac06687f9e3","name":"vLoadBalancer-nodes.vdnsCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/a01ebd00-4b64-4607-8422-c3733735800d/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"948da0c9-536e-4688-85eb-d906fe7324b3","invariantUUID":"702cbc3d-5669-426d-aba6-6ddf4d4a702b","name":"vLoadBalancer-nodes.vpgCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/948da0c9-536e-4688-85eb-d906fe7324b3/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"38b62ebd-276a-48e8-948b-de76c81d6686","invariantUUID":"2ef814e3-7c17-420c-bdba-e84e338cd991","name":"vLoadBalancer-nodes.vdns_1Cvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/38b62ebd-276a-48e8-948b-de76c81d6686/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"228aac11-6e48-4412-afbf-327c5c3b04fb","invariantUUID":"ba4d4b5d-f861-4155-886b-b1cdba5e0957","name":"vLoadBalancer-nodes.vlbCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/228aac11-6e48-4412-afbf-327c5c3b04fb/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"2bbcbcce-f9e2-4f5d-b975-1f1122d3226c","invariantUUID":"28142b9a-7925-4921-bc81-178c5bae4a9b","name":"vPacketGen-nodes.vpgCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/2bbcbcce-f9e2-4f5d-b975-1f1122d3226c/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"701bf7b7-ddf1-4658-af5f-66c815348fd3","invariantUUID":"53ebeed7-84db-4638-b1f3-8ed44c75985b","name":"vFirewall-nodes.vfwCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/701bf7b7-ddf1-4658-af5f-66c815348fd3/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"d6a5add1-162a-4966-80a6-8ba53d83b17f","invariantUUID":"74805001-19f5-4c2c-9928-03014161c32a","name":"vFirewall-nodes.vsnCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/d6a5add1-162a-4966-80a6-8ba53d83b17f/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"}] \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources?resourceType=CVFC/.header b/src/test/resources/http-cache/example/sdc/v1/catalog/resources?resourceType=CVFC/.header new file mode 100644 index 000000000..e7f1e8490 --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources?resourceType=CVFC/.header @@ -0,0 +1 @@ +{"Content-Length": "2612", "Set-Cookie": "JSESSIONID=17p45w15arnkc191z2olo4e8qe;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "485020fa-b5f7-4d30-9473-e201326ed649"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources?resourceType=VF/.file b/src/test/resources/http-cache/example/sdc/v1/catalog/resources?resourceType=VF/.file new file mode 100644 index 000000000..253046a91 --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources?resourceType=VF/.file @@ -0,0 +1 @@ +[{"uuid":"c041f64d-8d8f-4f89-906f-79dccc63e7f5","invariantUUID":"48504e0e-f3d3-411d-a52b-eda1b8fec073","name":"vLoadBalancer","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/toscaModel","category":"Application L4+","subCategory":"Load Balancer","resourceType":"VF","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jm0007"},{"uuid":"98c27d0b-9395-4f8b-87ab-e076cd1f627e","invariantUUID":"07e266fc-49ab-4cd7-8378-ca4676f1b9ec","name":"vFirewall","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/toscaModel","category":"Application L4+","subCategory":"Firewall","resourceType":"VF","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jm0007"},{"uuid":"a004b0d8-54bd-4ede-9311-c75dc608e9fd","invariantUUID":"023a3f0d-1161-45ff-b4cf-8918a8ccf3ad","name":"vPacketGen","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/toscaModel","category":"Application L4+","subCategory":"Web Server","resourceType":"VF","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jm0007"}] \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources?resourceType=VF/.header b/src/test/resources/http-cache/example/sdc/v1/catalog/resources?resourceType=VF/.header new file mode 100644 index 000000000..ff1f54a02 --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources?resourceType=VF/.header @@ -0,0 +1 @@ +{"Content-Length": "1099", "Set-Cookie": "JSESSIONID=1cmvc2wrt6df31psfrfvp7y670;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "a37e7d9c-effe-4354-94df-77774dd239d3"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources?resourceType=VFC/.file b/src/test/resources/http-cache/example/sdc/v1/catalog/resources?resourceType=VFC/.file new file mode 100644 index 000000000..a99aa44d2 --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources?resourceType=VFC/.file @@ -0,0 +1 @@ +[{"uuid":"a72ab48d-2d20-4c28-936a-94f45160d126","invariantUUID":"528a9e7e-1db8-44cd-a59a-f7f2833aaeb3","name":"SoftwareComponent","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/a72ab48d-2d20-4c28-936a-94f45160d126/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"2fa6c8ab-297f-4ec6-869f-893db6c84ac4","invariantUUID":"281696ab-4415-4dbb-8f4b-42ff25314466","name":"Root","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/2fa6c8ab-297f-4ec6-869f-893db6c84ac4/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"ba598da2-fd47-4701-b906-c03309ce52d7","invariantUUID":"cfdfb7b0-44fe-4b03-8efd-83533b4a3e94","name":"Compute","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/ba598da2-fd47-4701-b906-c03309ce52d7/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"c505b470-d39e-44f2-bb3a-26bc1b10bc84","invariantUUID":"7afee9e5-f666-4109-875c-89663f4c2676","name":"WebApplication","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/c505b470-d39e-44f2-bb3a-26bc1b10bc84/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"32c7f0ad-70b1-445f-9ec4-a54fdc054081","invariantUUID":"f0c9ed72-f92d-471b-8014-b810cb9d6c53","name":"Database","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/32c7f0ad-70b1-445f-9ec4-a54fdc054081/toscaModel","category":"Generic","subCategory":"Database","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"3187eb9b-dbba-492d-9137-e12db15226e7","invariantUUID":"ec55e51b-eb97-41ce-b2bf-bd7240d773a1","name":"WebServer","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/3187eb9b-dbba-492d-9137-e12db15226e7/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"59dc3d57-6609-4acd-b280-1297504b3fa3","invariantUUID":"3d5f7968-8432-47a7-9532-5833050636c9","name":"ObjectStorage","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/59dc3d57-6609-4acd-b280-1297504b3fa3/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"6000538b-f0f0-467b-bb8c-d6514d84529f","invariantUUID":"8c5a23e8-388d-4af8-8a5e-469081b2b8cd","name":"Runtime","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/6000538b-f0f0-467b-bb8c-d6514d84529f/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"92cb6435-1f95-42e1-b7a4-3418fa58f99c","invariantUUID":"fc537796-7a6a-4878-ad2c-ebae0b1031eb","name":"BlockStorage","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/92cb6435-1f95-42e1-b7a4-3418fa58f99c/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"7e41c605-b93c-4679-bc8e-83ac839e92c8","invariantUUID":"e09d62d9-c704-41be-a091-d0bf8d5c2c6b","name":"Application","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/7e41c605-b93c-4679-bc8e-83ac839e92c8/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"0dc498fd-2c4f-4e83-afbd-4404c7644234","invariantUUID":"55642129-7e02-49f3-827b-ef309ca80ff4","name":"GlobalCompute","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/0dc498fd-2c4f-4e83-afbd-4404c7644234/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"8d77ceb7-14a4-44f1-9a53-d92313ed56d0","invariantUUID":"f43bb2b2-db21-4739-8a64-f7743d54db15","name":"CinderVolume","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/8d77ceb7-14a4-44f1-9a53-d92313ed56d0/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"5a14f316-0f4e-4638-a0ad-71776a5014d2","invariantUUID":"40f6daa6-e352-4047-a115-9c4931ce0334","name":"volume","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/5a14f316-0f4e-4638-a0ad-71776a5014d2/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"2220d928-d281-4ba1-b44a-21b72c8c9872","invariantUUID":"7c398180-ea60-494b-b345-678391fbe8c2","name":"NovaServer","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/2220d928-d281-4ba1-b44a-21b72c8c9872/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"c9ed9d61-f3a5-4210-9af7-70a4f93b836a","invariantUUID":"ca7f356c-9f1c-4672-ade1-27a7f190064c","name":"AbstractSubstitute","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/c9ed9d61-f3a5-4210-9af7-70a4f93b836a/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"50ada44a-dd89-4e8d-850b-113019d2175b","invariantUUID":"6bb86fb2-e7f2-4ba6-aca8-80ccea04bc0a","name":"ContrailNetworkRules","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/50ada44a-dd89-4e8d-850b-113019d2175b/toscaModel","category":"Generic","subCategory":"Rules","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"bb37dd40-0e70-405f-81ca-c6ca22d3384f","invariantUUID":"3622a332-ce1c-406c-8212-966822eba394","name":"SecurityRules","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/bb37dd40-0e70-405f-81ca-c6ca22d3384f/toscaModel","category":"Generic","subCategory":"Rules","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"b876d972-31bf-427c-a557-0cc0befcfbec","invariantUUID":"12d9d4a3-f695-4055-b22b-edc60e738795","name":"ContrailAbstractSubstitute","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/b876d972-31bf-427c-a557-0cc0befcfbec/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"6baeb8d4-1d26-4530-a017-60d48dd38ace","invariantUUID":"015e424d-3482-4cd4-a047-1a4ca66588cc","name":"vnfConfiguration","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/6baeb8d4-1d26-4530-a017-60d48dd38ace/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"9f1402d1-b8cc-4b70-a45c-54d636e50086","invariantUUID":"a47fd09d-a910-4829-bb35-38741cefd2b9","name":"DBMS","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/9f1402d1-b8cc-4b70-a45c-54d636e50086/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"467ee1a0-34dd-46da-a198-a4ebe94c31b1","invariantUUID":"35b1df1f-4f9d-4bc6-9dbb-368e26c64243","name":"ContrailV2VirtualMachineInterface","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/467ee1a0-34dd-46da-a198-a4ebe94c31b1/toscaModel","category":"Generic","subCategory":"Network Elements","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"0d26b446-bd26-44ed-95a8-7ec302dd91aa","invariantUUID":"03c4eac9-4af8-4751-94fc-ce6095930c83","name":"ContrailCompute","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/0d26b446-bd26-44ed-95a8-7ec302dd91aa/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"83ccfaa3-a5e5-4567-88c4-aa5cb3a7b22e","invariantUUID":"1a67dbe6-ceca-4621-891e-3bb14f42943a","name":"multiFlavorVFC","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/83ccfaa3-a5e5-4567-88c4-aa5cb3a7b22e/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"14ddb890-fe68-4fee-a296-711d5a4b6e59","invariantUUID":"14184c8a-0c13-4873-a5c1-2586032db98c","name":"Ext Image File","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/14ddb890-fe68-4fee-a296-711d5a4b6e59/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"720552c5-e05d-4933-9882-8d7359af6e82","invariantUUID":"f43a5ef6-ddbf-4520-a6cb-9ca8b6b39ad6","name":"Ext Local Storage","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/720552c5-e05d-4933-9882-8d7359af6e82/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"6ba191b3-2315-44ec-85ac-d5351e7d4b81","invariantUUID":"0e0269f9-6e04-4234-bfd1-bfae52af7f83","name":"Ext Zte VDU","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/6ba191b3-2315-44ec-85ac-d5351e7d4b81/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"307cd1f4-bbc4-4675-b491-8e318231dc76","invariantUUID":"1fa025a5-c877-4221-9fbf-1b117fb66631","name":"LoadBalancer","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/307cd1f4-bbc4-4675-b491-8e318231dc76/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"949e82db-98ee-47d0-a5d2-21cb06c4a091","invariantUUID":"348d3957-11fd-4194-8835-1b112664b78b","name":"NSD","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/949e82db-98ee-47d0-a5d2-21cb06c4a091/toscaModel","category":"Generic","subCategory":"Network Elements","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"f54c8dde-2dc9-4f06-8bd6-1679d0b12b0c","invariantUUID":"4644b678-6680-432a-9d54-b209cc8264fe","name":"VDU","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/f54c8dde-2dc9-4f06-8bd6-1679d0b12b0c/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"cca286e8-5ac0-451c-b874-8cc307181e10","invariantUUID":"b4ad5952-aa22-4645-ac57-72d55c8833be","name":"Vloadbalancer.nodes.heat.vdns","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/cca286e8-5ac0-451c-b874-8cc307181e10/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"876f7eff-46e3-4981-8717-597c01310714","invariantUUID":"7c3316b0-2090-4a2f-a21b-63e3c9dd3bf8","name":"AllottedResource","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/876f7eff-46e3-4981-8717-597c01310714/toscaModel","category":"Allotted Resource","subCategory":"Allotted Resource","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"c25db6d1-2653-45d9-8062-440f962c83ba","invariantUUID":"86aeffce-6d21-4bc0-84c5-e4fd3f7acdaa","name":"VDU VirtualStorage","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/c25db6d1-2653-45d9-8062-440f962c83ba/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"68bb176c-8d5f-4d27-8407-fd8d9e5910eb","invariantUUID":"1a12347c-6166-4d21-9861-b2c432722a23","name":"Vfirewall.nodes.heat.vfw","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/68bb176c-8d5f-4d27-8407-fd8d9e5910eb/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d","invariantUUID":"3ff44c1d-0384-4501-8e33-dd3000799378","name":"Vloadbalancer.nodes.heat.vlb","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"8fb4db8b-1d1f-4369-8611-0375d86f0051","invariantUUID":"05e3e25f-b671-433f-8ea6-835c198c15ae","name":"Vloadbalancer.nodes.heat.vpg","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/8fb4db8b-1d1f-4369-8611-0375d86f0051/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"c8a01686-2762-483c-98ad-a66606b9947f","invariantUUID":"86769df9-139b-489f-949d-05efb7f0ed6a","name":"Vpacketgen.nodes.heat.vpg","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/c8a01686-2762-483c-98ad-a66606b9947f/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"5a136c51-055f-46b7-90e3-3d99d1da3d10","invariantUUID":"a6c4eda9-c71b-4435-ad73-51f82946df1b","name":"ContrailV2NetworkRules","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/5a136c51-055f-46b7-90e3-3d99d1da3d10/toscaModel","category":"Generic","subCategory":"Rules","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"163dded5-44a3-42e3-b373-c594412eeac6","invariantUUID":"1550f69b-12cb-44ad-81b3-de6ec606a566","name":"VDU Compute","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/163dded5-44a3-42e3-b373-c594412eeac6/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"b339e576-e433-4be4-8a43-258f629c4e79","invariantUUID":"d66c0bce-d7e1-41ad-bdaf-468d442d0543","name":"Vfirewall.nodes.heat.vsn","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/b339e576-e433-4be4-8a43-258f629c4e79/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"}] \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources?resourceType=VFC/.header b/src/test/resources/http-cache/example/sdc/v1/catalog/resources?resourceType=VFC/.header new file mode 100644 index 000000000..6a280d972 --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources?resourceType=VFC/.header @@ -0,0 +1 @@ +{"Transfer-Encoding": "chunked", "Set-Cookie": "JSESSIONID=158qxkdtdobkd1umr3ikkgrmlx;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "e2ddb3c8-994f-47df-b4dc-097d4fb55c08"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources/228aac11-6e48-4412-afbf-327c5c3b04fb/metadata/.file b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/228aac11-6e48-4412-afbf-327c5c3b04fb/metadata/.file new file mode 100644 index 000000000..8b9114f19 --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/228aac11-6e48-4412-afbf-327c5c3b04fb/metadata/.file @@ -0,0 +1 @@ +{"uuid":"228aac11-6e48-4412-afbf-327c5c3b04fb","invariantUUID":"ba4d4b5d-f861-4155-886b-b1cdba5e0957","name":"vLoadBalancer-nodes.vlbCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/228aac11-6e48-4412-afbf-327c5c3b04fb/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vloadbalancercvfc.abstract.nodes.vlb","resources":[{"resourceInstanceName":"vlb_vlb_private_2_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"},{"resourceInstanceName":"vlb_vlb_private_0_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"},{"resourceInstanceName":"vlb","resourceName":"Vloadbalancer.nodes.heat.vlb","resourceInvariantUUID":"3ff44c1d-0384-4501-8e33-dd3000799378","resourceVersion":"1.0","resoucreType":"VFC","resourceUUID":"f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d"},{"resourceInstanceName":"vlb_vlb_private_1_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"}],"description":"Complex node type that is used as nested type in VF"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources/228aac11-6e48-4412-afbf-327c5c3b04fb/metadata/.header b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/228aac11-6e48-4412-afbf-327c5c3b04fb/metadata/.header new file mode 100644 index 000000000..439efd9f0 --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/228aac11-6e48-4412-afbf-327c5c3b04fb/metadata/.header @@ -0,0 +1 @@ +{"Content-Length": "1539", "Set-Cookie": "JSESSIONID=2hdxvh0c2nj012gw8yu63ffd1;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "1a2d5fef-de1c-478e-bf5c-7df1bc37870e"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources/2bbcbcce-f9e2-4f5d-b975-1f1122d3226c/metadata/.file b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/2bbcbcce-f9e2-4f5d-b975-1f1122d3226c/metadata/.file new file mode 100644 index 000000000..da4363f14 --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/2bbcbcce-f9e2-4f5d-b975-1f1122d3226c/metadata/.file @@ -0,0 +1 @@ +{"uuid":"2bbcbcce-f9e2-4f5d-b975-1f1122d3226c","invariantUUID":"28142b9a-7925-4921-bc81-178c5bae4a9b","name":"vPacketGen-nodes.vpgCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/2bbcbcce-f9e2-4f5d-b975-1f1122d3226c/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vpacketgencvfc.abstract.nodes.vpg","resources":[{"resourceInstanceName":"vpg_vpg_private_0_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"},{"resourceInstanceName":"vpg","resourceName":"Vpacketgen.nodes.heat.vpg","resourceInvariantUUID":"86769df9-139b-489f-949d-05efb7f0ed6a","resourceVersion":"1.0","resoucreType":"VFC","resourceUUID":"c8a01686-2762-483c-98ad-a66606b9947f"},{"resourceInstanceName":"vpg_vpg_private_1_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"}],"description":"Complex node type that is used as nested type in VF"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources/2bbcbcce-f9e2-4f5d-b975-1f1122d3226c/metadata/.header b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/2bbcbcce-f9e2-4f5d-b975-1f1122d3226c/metadata/.header new file mode 100644 index 000000000..27e67e5ce --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/2bbcbcce-f9e2-4f5d-b975-1f1122d3226c/metadata/.header @@ -0,0 +1 @@ +{"Content-Length": "1290", "Set-Cookie": "JSESSIONID=1uooiet6i9dyt17t85aw0rkxkc;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "f50d8d8a-f63d-44cc-bc32-5c8b0e47305c"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources/38b62ebd-276a-48e8-948b-de76c81d6686/metadata/.file b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/38b62ebd-276a-48e8-948b-de76c81d6686/metadata/.file new file mode 100644 index 000000000..05f714755 --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/38b62ebd-276a-48e8-948b-de76c81d6686/metadata/.file @@ -0,0 +1 @@ +{"uuid":"38b62ebd-276a-48e8-948b-de76c81d6686","invariantUUID":"2ef814e3-7c17-420c-bdba-e84e338cd991","name":"vLoadBalancer-nodes.vdns_1Cvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/38b62ebd-276a-48e8-948b-de76c81d6686/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vloadbalancercvfc.abstract.nodes.vdns_1","resources":[{"resourceInstanceName":"vdns_vdns_2_private_1_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"},{"resourceInstanceName":"vdns","resourceName":"Vloadbalancer.nodes.heat.vdns","resourceInvariantUUID":"b4ad5952-aa22-4645-ac57-72d55c8833be","resourceVersion":"1.0","resoucreType":"VFC","resourceUUID":"cca286e8-5ac0-451c-b874-8cc307181e10"},{"resourceInstanceName":"vdns_vdns_2_private_0_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"}],"description":"Complex node type that is used as nested type in VF"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources/38b62ebd-276a-48e8-948b-de76c81d6686/metadata/.header b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/38b62ebd-276a-48e8-948b-de76c81d6686/metadata/.header new file mode 100644 index 000000000..79b1c5243 --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/38b62ebd-276a-48e8-948b-de76c81d6686/metadata/.header @@ -0,0 +1 @@ +{"Content-Length": "1315", "Set-Cookie": "JSESSIONID=1mwa65h39co1ljdehgclglgrt;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "e436e8fb-e11d-4e9b-a082-cb51c82be86f"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources/68bb176c-8d5f-4d27-8407-fd8d9e5910eb/metadata/.file b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/68bb176c-8d5f-4d27-8407-fd8d9e5910eb/metadata/.file new file mode 100644 index 000000000..9985a8be8 --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/68bb176c-8d5f-4d27-8407-fd8d9e5910eb/metadata/.file @@ -0,0 +1 @@ +{"uuid":"68bb176c-8d5f-4d27-8407-fd8d9e5910eb","invariantUUID":"1a12347c-6166-4d21-9861-b2c432722a23","name":"Vfirewall.nodes.heat.vfw","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/68bb176c-8d5f-4d27-8407-fd8d9e5910eb/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vfirewall.abstract.nodes.heat.vfw","description":"Not reusable inner VFC"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources/68bb176c-8d5f-4d27-8407-fd8d9e5910eb/metadata/.header b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/68bb176c-8d5f-4d27-8407-fd8d9e5910eb/metadata/.header new file mode 100644 index 000000000..5d3981400 --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/68bb176c-8d5f-4d27-8407-fd8d9e5910eb/metadata/.header @@ -0,0 +1 @@ +{"Content-Length": "530", "Set-Cookie": "JSESSIONID=1cybc5e92nwmc1bh0rv2faio02;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "132bca4c-b16b-4c78-b52f-4a33bd74b4ed"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources/701bf7b7-ddf1-4658-af5f-66c815348fd3/metadata/.file b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/701bf7b7-ddf1-4658-af5f-66c815348fd3/metadata/.file new file mode 100644 index 000000000..bbae2420e --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/701bf7b7-ddf1-4658-af5f-66c815348fd3/metadata/.file @@ -0,0 +1 @@ +{"uuid":"701bf7b7-ddf1-4658-af5f-66c815348fd3","invariantUUID":"53ebeed7-84db-4638-b1f3-8ed44c75985b","name":"vFirewall-nodes.vfwCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/701bf7b7-ddf1-4658-af5f-66c815348fd3/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vfirewallcvfc.abstract.nodes.vfw","resources":[{"resourceInstanceName":"vfw_vfw_private_0_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"},{"resourceInstanceName":"vfw_vfw_private_2_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"},{"resourceInstanceName":"vfw_vfw_private_1_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"},{"resourceInstanceName":"vfw","resourceName":"Vfirewall.nodes.heat.vfw","resourceInvariantUUID":"1a12347c-6166-4d21-9861-b2c432722a23","resourceVersion":"1.0","resoucreType":"VFC","resourceUUID":"68bb176c-8d5f-4d27-8407-fd8d9e5910eb"}],"description":"Complex node type that is used as nested type in VF"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources/701bf7b7-ddf1-4658-af5f-66c815348fd3/metadata/.header b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/701bf7b7-ddf1-4658-af5f-66c815348fd3/metadata/.header new file mode 100644 index 000000000..c4e7b6900 --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/701bf7b7-ddf1-4658-af5f-66c815348fd3/metadata/.header @@ -0,0 +1 @@ +{"Content-Length": "1527", "Set-Cookie": "JSESSIONID=1x67gjk2bge1i5gw7e9i9efw;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "65089c4e-19a4-4616-b3ec-97d7f4c65725"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources/8fb4db8b-1d1f-4369-8611-0375d86f0051/metadata/.file b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/8fb4db8b-1d1f-4369-8611-0375d86f0051/metadata/.file new file mode 100644 index 000000000..940d0ecc4 --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/8fb4db8b-1d1f-4369-8611-0375d86f0051/metadata/.file @@ -0,0 +1 @@ +{"uuid":"8fb4db8b-1d1f-4369-8611-0375d86f0051","invariantUUID":"05e3e25f-b671-433f-8ea6-835c198c15ae","name":"Vloadbalancer.nodes.heat.vpg","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/8fb4db8b-1d1f-4369-8611-0375d86f0051/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vloadbalancer.abstract.nodes.heat.vpg","description":"Not reusable inner VFC"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources/8fb4db8b-1d1f-4369-8611-0375d86f0051/metadata/.header b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/8fb4db8b-1d1f-4369-8611-0375d86f0051/metadata/.header new file mode 100644 index 000000000..45800a0af --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/8fb4db8b-1d1f-4369-8611-0375d86f0051/metadata/.header @@ -0,0 +1 @@ +{"Content-Length": "538", "Set-Cookie": "JSESSIONID=m8wbe2pvqc0ga1gf3ceig0tc;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "12c97091-9d7e-4463-9154-4249b378e4d7"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources/948da0c9-536e-4688-85eb-d906fe7324b3/metadata/.file b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/948da0c9-536e-4688-85eb-d906fe7324b3/metadata/.file new file mode 100644 index 000000000..53fa9e394 --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/948da0c9-536e-4688-85eb-d906fe7324b3/metadata/.file @@ -0,0 +1 @@ +{"uuid":"948da0c9-536e-4688-85eb-d906fe7324b3","invariantUUID":"702cbc3d-5669-426d-aba6-6ddf4d4a702b","name":"vLoadBalancer-nodes.vpgCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/948da0c9-536e-4688-85eb-d906fe7324b3/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vloadbalancercvfc.abstract.nodes.vpg","resources":[{"resourceInstanceName":"vpg","resourceName":"Vloadbalancer.nodes.heat.vpg","resourceInvariantUUID":"05e3e25f-b671-433f-8ea6-835c198c15ae","resourceVersion":"1.0","resoucreType":"VFC","resourceUUID":"8fb4db8b-1d1f-4369-8611-0375d86f0051"},{"resourceInstanceName":"vpg_vpg_private_0_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"},{"resourceInstanceName":"vpg_vpg_private_1_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"}],"description":"Complex node type that is used as nested type in VF"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources/948da0c9-536e-4688-85eb-d906fe7324b3/metadata/.header b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/948da0c9-536e-4688-85eb-d906fe7324b3/metadata/.header new file mode 100644 index 000000000..86110d468 --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/948da0c9-536e-4688-85eb-d906fe7324b3/metadata/.header @@ -0,0 +1 @@ +{"Content-Length": "1299", "Set-Cookie": "JSESSIONID=1hq9wsp841x1l7lxmnjnau49m;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "e890362a-2dc4-4278-bee6-7dca3802e9ce"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/metadata/.file b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/metadata/.file new file mode 100644 index 000000000..2a272ee6f --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/metadata/.file @@ -0,0 +1 @@ +{"uuid":"98c27d0b-9395-4f8b-87ab-e076cd1f627e","invariantUUID":"07e266fc-49ab-4cd7-8378-ca4676f1b9ec","name":"vFirewall","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/toscaModel","category":"Application L4+","subCategory":"Firewall","resourceType":"VF","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jm0007","lastUpdaterFullName":"Joni Mitchell","toscaResourceName":"org.openecomp.resource.vf.Vfirewall","resources":[{"resourceInstanceName":"unprotected_private_network","resourceName":"NeutronNet","resourceInvariantUUID":"e83f8487-8ba2-479c-8d63-23217595dbb2","resourceVersion":"1.0","resoucreType":"VL","resourceUUID":"fc80335e-39cf-44a3-8860-995495fad829"},{"resourceInstanceName":"abstract_vfw","resourceName":"vFirewall-nodes.vfwCvfc","resourceInvariantUUID":"53ebeed7-84db-4638-b1f3-8ed44c75985b","resourceVersion":"1.0","resoucreType":"CVFC","resourceUUID":"701bf7b7-ddf1-4658-af5f-66c815348fd3"},{"resourceInstanceName":"protected_private_network","resourceName":"NeutronNet","resourceInvariantUUID":"e83f8487-8ba2-479c-8d63-23217595dbb2","resourceVersion":"1.0","resoucreType":"VL","resourceUUID":"fc80335e-39cf-44a3-8860-995495fad829"},{"resourceInstanceName":"abstract_vsn","resourceName":"vFirewall-nodes.vsnCvfc","resourceInvariantUUID":"74805001-19f5-4c2c-9928-03014161c32a","resourceVersion":"1.0","resoucreType":"CVFC","resourceUUID":"d6a5add1-162a-4966-80a6-8ba53d83b17f"}],"artifacts":[{"artifactName":"vf-license-model.xml","artifactType":"VF_LICENSE","artifactURL":"/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/artifacts/6e816af9-944d-46d0-826d-5ff7be063a01","artifactDescription":"VF license file","artifactChecksum":"Njg4NTI4ZWY2MTliMGQzOGZmNDA4ZjRiMjllZmJkMzM=","artifactUUID":"6e816af9-944d-46d0-826d-5ff7be063a01","artifactVersion":"1","artifactLabel":"vflicense","artifactGroupType":"DEPLOYMENT"},{"artifactName":"base_vfw.yaml","artifactType":"HEAT","artifactURL":"/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/artifacts/cbc75b18-86d1-4139-95f2-1d91f79a8b25","artifactDescription":"created from csar","artifactTimeout":60,"artifactChecksum":"M2I1YmVjNzZkY2MxMWJkYTM5NzA3NDVhMGQxMzY2MDA=","artifactUUID":"cbc75b18-86d1-4139-95f2-1d91f79a8b25","artifactVersion":"2","artifactLabel":"heat1","artifactGroupType":"DEPLOYMENT"},{"artifactName":"vendor-license-model.xml","artifactType":"VENDOR_LICENSE","artifactURL":"/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/artifacts/5b592087-76bf-4c43-a1e7-d4151ce51cdd","artifactDescription":" Vendor license file","artifactChecksum":"Mjc0NGViYzYyNWZkZTRmYWFkYmUzZjY1MmEwNzRjZDE=","artifactUUID":"5b592087-76bf-4c43-a1e7-d4151ce51cdd","artifactVersion":"1","artifactLabel":"vendorlicense","artifactGroupType":"DEPLOYMENT"}],"description":"vFW, vSink"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/metadata/.header b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/metadata/.header new file mode 100644 index 000000000..56bc0de43 --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/metadata/.header @@ -0,0 +1 @@ +{"Content-Length": "2820", "Set-Cookie": "JSESSIONID=1lzsottm5qzz6tqpilubfc84d;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "f9f2ebc4-5438-4b28-aaae-9671b78c30d1"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/metadata/.file b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/metadata/.file new file mode 100644 index 000000000..ea376775e --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/metadata/.file @@ -0,0 +1 @@ +{"uuid":"a004b0d8-54bd-4ede-9311-c75dc608e9fd","invariantUUID":"023a3f0d-1161-45ff-b4cf-8918a8ccf3ad","name":"vPacketGen","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/toscaModel","category":"Application L4+","subCategory":"Web Server","resourceType":"VF","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jm0007","lastUpdaterFullName":"Joni Mitchell","toscaResourceName":"org.openecomp.resource.vf.Vpacketgen","resources":[{"resourceInstanceName":"abstract_vpg","resourceName":"vPacketGen-nodes.vpgCvfc","resourceInvariantUUID":"28142b9a-7925-4921-bc81-178c5bae4a9b","resourceVersion":"1.0","resoucreType":"CVFC","resourceUUID":"2bbcbcce-f9e2-4f5d-b975-1f1122d3226c"}],"artifacts":[{"artifactName":"vf-license-model.xml","artifactType":"VF_LICENSE","artifactURL":"/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/artifacts/0d837657-c5fe-4042-a105-b650361cc289","artifactDescription":"VF license file","artifactChecksum":"MGU5YWY1NzNmZmM3MTEwYmM0YTgzMmQ5NGUyMmUzODQ=","artifactUUID":"0d837657-c5fe-4042-a105-b650361cc289","artifactVersion":"1","artifactLabel":"vflicense","artifactGroupType":"DEPLOYMENT"},{"artifactName":"base_vpkg.yaml","artifactType":"HEAT","artifactURL":"/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/artifacts/010c5015-477d-4aba-a57a-540daa1b7af6","artifactDescription":"created from csar","artifactTimeout":60,"artifactChecksum":"NzI1ZTM5NDU3ZjBhMzQwNmFiNDYzNDBhOWM2NjNmOWU=","artifactUUID":"010c5015-477d-4aba-a57a-540daa1b7af6","artifactVersion":"2","artifactLabel":"heat1","artifactGroupType":"DEPLOYMENT"},{"artifactName":"vendor-license-model.xml","artifactType":"VENDOR_LICENSE","artifactURL":"/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/artifacts/054e473f-173b-48d5-a4ee-f5ef055c008d","artifactDescription":" Vendor license file","artifactChecksum":"Mjc0NGViYzYyNWZkZTRmYWFkYmUzZjY1MmEwNzRjZDE=","artifactUUID":"054e473f-173b-48d5-a4ee-f5ef055c008d","artifactVersion":"1","artifactLabel":"vendorlicense","artifactGroupType":"DEPLOYMENT"}],"description":"vPacketGen"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/metadata/.header b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/metadata/.header new file mode 100644 index 000000000..31ab6c959 --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/metadata/.header @@ -0,0 +1 @@ +{"Content-Length": "2096", "Set-Cookie": "JSESSIONID=89np5gtpq1dg1q6yy7aqkysk3;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "e02c1210-1cc8-4c4d-9763-2720e5f0a1ef"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources/a01ebd00-4b64-4607-8422-c3733735800d/metadata/.file b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/a01ebd00-4b64-4607-8422-c3733735800d/metadata/.file new file mode 100644 index 000000000..b2e0716c0 --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/a01ebd00-4b64-4607-8422-c3733735800d/metadata/.file @@ -0,0 +1 @@ +{"uuid":"a01ebd00-4b64-4607-8422-c3733735800d","invariantUUID":"dd6edb9e-015e-45ae-9597-bac06687f9e3","name":"vLoadBalancer-nodes.vdnsCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/a01ebd00-4b64-4607-8422-c3733735800d/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vloadbalancercvfc.abstract.nodes.vdns","resources":[{"resourceInstanceName":"vdns","resourceName":"Vloadbalancer.nodes.heat.vdns","resourceInvariantUUID":"b4ad5952-aa22-4645-ac57-72d55c8833be","resourceVersion":"1.0","resoucreType":"VFC","resourceUUID":"cca286e8-5ac0-451c-b874-8cc307181e10"},{"resourceInstanceName":"vdns_vdns_private_1_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"},{"resourceInstanceName":"vdns_vdns_private_0_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"}],"description":"Complex node type that is used as nested type in VF"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources/a01ebd00-4b64-4607-8422-c3733735800d/metadata/.header b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/a01ebd00-4b64-4607-8422-c3733735800d/metadata/.header new file mode 100644 index 000000000..86df6fd4f --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/a01ebd00-4b64-4607-8422-c3733735800d/metadata/.header @@ -0,0 +1 @@ +{"Content-Length": "1307", "Set-Cookie": "JSESSIONID=s3ol5grms28iil8u7399i2ti;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "c5dafa60-41b8-46b1-9f02-a7cd6a9a92a5"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources/b339e576-e433-4be4-8a43-258f629c4e79/metadata/.file b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/b339e576-e433-4be4-8a43-258f629c4e79/metadata/.file new file mode 100644 index 000000000..24da339a5 --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/b339e576-e433-4be4-8a43-258f629c4e79/metadata/.file @@ -0,0 +1 @@ +{"uuid":"b339e576-e433-4be4-8a43-258f629c4e79","invariantUUID":"d66c0bce-d7e1-41ad-bdaf-468d442d0543","name":"Vfirewall.nodes.heat.vsn","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/b339e576-e433-4be4-8a43-258f629c4e79/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vfirewall.abstract.nodes.heat.vsn","description":"Not reusable inner VFC"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources/b339e576-e433-4be4-8a43-258f629c4e79/metadata/.header b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/b339e576-e433-4be4-8a43-258f629c4e79/metadata/.header new file mode 100644 index 000000000..faa4d0bd7 --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/b339e576-e433-4be4-8a43-258f629c4e79/metadata/.header @@ -0,0 +1 @@ +{"Content-Length": "530", "Set-Cookie": "JSESSIONID=1iw9dnwwle3ig19rx0pz7c5dqu;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "415de25b-5ad3-4de7-b188-e6dec8e01f35"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/metadata/.file b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/metadata/.file new file mode 100644 index 000000000..4a23a0ec1 --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/metadata/.file @@ -0,0 +1 @@ +{"uuid":"c041f64d-8d8f-4f89-906f-79dccc63e7f5","invariantUUID":"48504e0e-f3d3-411d-a52b-eda1b8fec073","name":"vLoadBalancer","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/toscaModel","category":"Application L4+","subCategory":"Load Balancer","resourceType":"VF","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jm0007","lastUpdaterFullName":"Joni Mitchell","toscaResourceName":"org.openecomp.resource.vf.Vloadbalancer","resources":[{"resourceInstanceName":"abstract_vdns","resourceName":"vLoadBalancer-nodes.vdnsCvfc","resourceInvariantUUID":"dd6edb9e-015e-45ae-9597-bac06687f9e3","resourceVersion":"1.0","resoucreType":"CVFC","resourceUUID":"a01ebd00-4b64-4607-8422-c3733735800d"},{"resourceInstanceName":"vlb_private_network","resourceName":"NeutronNet","resourceInvariantUUID":"e83f8487-8ba2-479c-8d63-23217595dbb2","resourceVersion":"1.0","resoucreType":"VL","resourceUUID":"fc80335e-39cf-44a3-8860-995495fad829"},{"resourceInstanceName":"abstract_vlb","resourceName":"vLoadBalancer-nodes.vlbCvfc","resourceInvariantUUID":"ba4d4b5d-f861-4155-886b-b1cdba5e0957","resourceVersion":"1.0","resoucreType":"CVFC","resourceUUID":"228aac11-6e48-4412-afbf-327c5c3b04fb"},{"resourceInstanceName":"abstract_vpg","resourceName":"vLoadBalancer-nodes.vpgCvfc","resourceInvariantUUID":"702cbc3d-5669-426d-aba6-6ddf4d4a702b","resourceVersion":"1.0","resoucreType":"CVFC","resourceUUID":"948da0c9-536e-4688-85eb-d906fe7324b3"},{"resourceInstanceName":"abstract_vdns_1","resourceName":"vLoadBalancer-nodes.vdns_1Cvfc","resourceInvariantUUID":"2ef814e3-7c17-420c-bdba-e84e338cd991","resourceVersion":"1.0","resoucreType":"CVFC","resourceUUID":"38b62ebd-276a-48e8-948b-de76c81d6686"},{"resourceInstanceName":"pktgen_private_network","resourceName":"NeutronNet","resourceInvariantUUID":"e83f8487-8ba2-479c-8d63-23217595dbb2","resourceVersion":"1.0","resoucreType":"VL","resourceUUID":"fc80335e-39cf-44a3-8860-995495fad829"}],"artifacts":[{"artifactName":"vf-license-model.xml","artifactType":"VF_LICENSE","artifactURL":"/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/artifacts/51af0540-4863-4900-b3be-0f81abd89194","artifactDescription":"VF license file","artifactChecksum":"ODk5M2NiYzE2ZDk1ZmNkZmRjZDcwMTE1NjExMzViNjA=","artifactUUID":"51af0540-4863-4900-b3be-0f81abd89194","artifactVersion":"1","artifactLabel":"vflicense","artifactGroupType":"DEPLOYMENT"},{"artifactName":"dnsscaling.yaml","artifactType":"HEAT","artifactURL":"/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/artifacts/f5aad388-38b2-4b53-9df7-d8a25595e5cb","artifactDescription":"created from csar","artifactTimeout":60,"artifactChecksum":"NmE1MmVmNThmZmFjZmZiZTA4NDY2NzA2OTM4ZmFlMGM=","artifactUUID":"f5aad388-38b2-4b53-9df7-d8a25595e5cb","artifactVersion":"2","artifactLabel":"heat1","artifactGroupType":"DEPLOYMENT"},{"artifactName":"base_vlb.yaml","artifactType":"HEAT","artifactURL":"/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/artifacts/3370c5c2-cdbc-45b9-ab76-1f0d45cda59e","artifactDescription":"created from csar","artifactTimeout":60,"artifactChecksum":"ZWZiMDg0M2UxMGZmMjlhYTIxODE5ZDBhNWVhZDk2NTU=","artifactUUID":"3370c5c2-cdbc-45b9-ab76-1f0d45cda59e","artifactVersion":"2","artifactLabel":"heat2","artifactGroupType":"DEPLOYMENT"},{"artifactName":"vendor-license-model.xml","artifactType":"VENDOR_LICENSE","artifactURL":"/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/artifacts/28a877c8-2005-43d7-802d-769b5f420608","artifactDescription":" Vendor license file","artifactChecksum":"Mjc0NGViYzYyNWZkZTRmYWFkYmUzZjY1MmEwNzRjZDE=","artifactUUID":"28a877c8-2005-43d7-802d-769b5f420608","artifactVersion":"1","artifactLabel":"vendorlicense","artifactGroupType":"DEPLOYMENT"}],"description":"vLB, vDNS, vPacketGen"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/metadata/.header b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/metadata/.header new file mode 100644 index 000000000..84e699260 --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/metadata/.header @@ -0,0 +1 @@ +{"Content-Length": "3790", "Set-Cookie": "JSESSIONID=1nqlf3cbvim6c1vmptrsdbq3ih;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "5b484e69-bb1c-4445-9da2-0eef460adf07"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources/c8a01686-2762-483c-98ad-a66606b9947f/metadata/.file b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/c8a01686-2762-483c-98ad-a66606b9947f/metadata/.file new file mode 100644 index 000000000..ecf6aa73a --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/c8a01686-2762-483c-98ad-a66606b9947f/metadata/.file @@ -0,0 +1 @@ +{"uuid":"c8a01686-2762-483c-98ad-a66606b9947f","invariantUUID":"86769df9-139b-489f-949d-05efb7f0ed6a","name":"Vpacketgen.nodes.heat.vpg","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/c8a01686-2762-483c-98ad-a66606b9947f/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vpacketgen.abstract.nodes.heat.vpg","description":"Not reusable inner VFC"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources/c8a01686-2762-483c-98ad-a66606b9947f/metadata/.header b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/c8a01686-2762-483c-98ad-a66606b9947f/metadata/.header new file mode 100644 index 000000000..650c2ad49 --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/c8a01686-2762-483c-98ad-a66606b9947f/metadata/.header @@ -0,0 +1 @@ +{"Content-Length": "532", "Set-Cookie": "JSESSIONID=1cozsnghk53ca15awxbl6ni870;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "7ceea8dc-76d4-4dfb-a142-b0d220d61e14"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources/cca286e8-5ac0-451c-b874-8cc307181e10/metadata/.file b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/cca286e8-5ac0-451c-b874-8cc307181e10/metadata/.file new file mode 100644 index 000000000..58b5d3673 --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/cca286e8-5ac0-451c-b874-8cc307181e10/metadata/.file @@ -0,0 +1 @@ +{"uuid":"cca286e8-5ac0-451c-b874-8cc307181e10","invariantUUID":"b4ad5952-aa22-4645-ac57-72d55c8833be","name":"Vloadbalancer.nodes.heat.vdns","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/cca286e8-5ac0-451c-b874-8cc307181e10/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vloadbalancer.abstract.nodes.heat.vdns","description":"Not reusable inner VFC"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources/cca286e8-5ac0-451c-b874-8cc307181e10/metadata/.header b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/cca286e8-5ac0-451c-b874-8cc307181e10/metadata/.header new file mode 100644 index 000000000..2ae908f02 --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/cca286e8-5ac0-451c-b874-8cc307181e10/metadata/.header @@ -0,0 +1 @@ +{"Content-Length": "540", "Set-Cookie": "JSESSIONID=uf90ig0y06m3a7lijhv462bb;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "8a4decf7-9171-4559-861f-db94405f9f2c"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources/d6a5add1-162a-4966-80a6-8ba53d83b17f/metadata/.file b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/d6a5add1-162a-4966-80a6-8ba53d83b17f/metadata/.file new file mode 100644 index 000000000..8038b8130 --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/d6a5add1-162a-4966-80a6-8ba53d83b17f/metadata/.file @@ -0,0 +1 @@ +{"uuid":"d6a5add1-162a-4966-80a6-8ba53d83b17f","invariantUUID":"74805001-19f5-4c2c-9928-03014161c32a","name":"vFirewall-nodes.vsnCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/d6a5add1-162a-4966-80a6-8ba53d83b17f/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vfirewallcvfc.abstract.nodes.vsn","resources":[{"resourceInstanceName":"vsn","resourceName":"Vfirewall.nodes.heat.vsn","resourceInvariantUUID":"d66c0bce-d7e1-41ad-bdaf-468d442d0543","resourceVersion":"1.0","resoucreType":"VFC","resourceUUID":"b339e576-e433-4be4-8a43-258f629c4e79"},{"resourceInstanceName":"vsn_vsn_private_1_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"},{"resourceInstanceName":"vsn_vsn_private_0_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"}],"description":"Complex node type that is used as nested type in VF"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources/d6a5add1-162a-4966-80a6-8ba53d83b17f/metadata/.header b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/d6a5add1-162a-4966-80a6-8ba53d83b17f/metadata/.header new file mode 100644 index 000000000..ebd872113 --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/d6a5add1-162a-4966-80a6-8ba53d83b17f/metadata/.header @@ -0,0 +1 @@ +{"Content-Length": "1287", "Set-Cookie": "JSESSIONID=atnj864xj270149zuaoutning;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "6a01fc8c-95f7-4708-a232-495c3b8cf436"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources/f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d/metadata/.file b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d/metadata/.file new file mode 100644 index 000000000..777738301 --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d/metadata/.file @@ -0,0 +1 @@ +{"uuid":"f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d","invariantUUID":"3ff44c1d-0384-4501-8e33-dd3000799378","name":"Vloadbalancer.nodes.heat.vlb","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vloadbalancer.abstract.nodes.heat.vlb","description":"Not reusable inner VFC"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/resources/f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d/metadata/.header b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d/metadata/.header new file mode 100644 index 000000000..629e7d981 --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/resources/f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d/metadata/.header @@ -0,0 +1 @@ +{"Content-Length": "538", "Set-Cookie": "JSESSIONID=1gy8iwktdb6fl1ja4hcilqnj0x;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "712c8b60-afb5-4b77-a12f-bdaf82d5b9a5"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/services/.file b/src/test/resources/http-cache/example/sdc/v1/catalog/services/.file new file mode 100644 index 000000000..92694fed2 --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/services/.file @@ -0,0 +1 @@ +[{"uuid":"aecb6332-e906-4334-9f04-93ba4926f6c2","invariantUUID":"c95b0e7c-c1f0-4287-9928-7964c5377a46","name":"vLoadBalancer","version":"1.0","toscaModelURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/toscaModel","category":"Network L4+","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jm0007","distributionStatus":"DISTRIBUTED"},{"uuid":"56441b4b-0467-41dc-9a0e-e68613838219","invariantUUID":"4cc5b45a-1f63-4194-8100-cd8e14248c92","name":"vFirewall","version":"1.0","toscaModelURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/toscaModel","category":"Network L4+","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jm0007","distributionStatus":"DISTRIBUTED"}] \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/services/.header b/src/test/resources/http-cache/example/sdc/v1/catalog/services/.header new file mode 100644 index 000000000..231ae3db2 --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/services/.header @@ -0,0 +1 @@ +{"Content-Length": "699", "Set-Cookie": "JSESSIONID=w1td04rzsdjkehn8j9ajg2cz;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "43868be1-b1b4-4876-b1ed-8a4abf710695"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/metadata/.file b/src/test/resources/http-cache/example/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/metadata/.file new file mode 100644 index 000000000..294d88c54 --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/metadata/.file @@ -0,0 +1 @@ +{"uuid":"56441b4b-0467-41dc-9a0e-e68613838219","invariantUUID":"4cc5b45a-1f63-4194-8100-cd8e14248c92","name":"vFirewall","version":"1.0","toscaModelURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/toscaModel","category":"Network L4+","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jm0007","distributionStatus":"DISTRIBUTED","lastUpdaterFullName":"Joni Mitchell","resources":[{"resourceInstanceName":"vFirewall 0","resourceName":"vFirewall","resourceInvariantUUID":"07e266fc-49ab-4cd7-8378-ca4676f1b9ec","resourceVersion":"1.0","resoucreType":"VF","resourceUUID":"98c27d0b-9395-4f8b-87ab-e076cd1f627e","artifacts":[{"artifactName":"vf-license-model.xml","artifactType":"VF_LICENSE","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vfirewall0/artifacts/6e816af9-944d-46d0-826d-5ff7be063a01","artifactDescription":"VF license file","artifactChecksum":"Njg4NTI4ZWY2MTliMGQzOGZmNDA4ZjRiMjllZmJkMzM=","artifactUUID":"6e816af9-944d-46d0-826d-5ff7be063a01","artifactVersion":"1","artifactLabel":"vflicense","artifactGroupType":"DEPLOYMENT"},{"artifactName":"vfirewall0_modules.json","artifactType":"VF_MODULES_METADATA","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vfirewall0/artifacts/f8cda4b3-3185-4801-b2dc-daa07509f62a","artifactDescription":"Auto-generated VF Modules information artifact","artifactChecksum":"MjZjNjBmNDFhOWZiZDdhOWZhNTI5NGRlNDE0NDQ4ZWM=","artifactUUID":"f8cda4b3-3185-4801-b2dc-daa07509f62a","artifactVersion":"1","artifactLabel":"vfModulesMetadata","artifactGroupType":"DEPLOYMENT"},{"artifactName":"base_vfw.yaml","artifactType":"HEAT","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vfirewall0/artifacts/cbc75b18-86d1-4139-95f2-1d91f79a8b25","artifactDescription":"created from csar","artifactTimeout":60,"artifactChecksum":"M2I1YmVjNzZkY2MxMWJkYTM5NzA3NDVhMGQxMzY2MDA=","artifactUUID":"cbc75b18-86d1-4139-95f2-1d91f79a8b25","artifactVersion":"2","artifactLabel":"heat1","artifactGroupType":"DEPLOYMENT"},{"artifactName":"vendor-license-model.xml","artifactType":"VENDOR_LICENSE","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vfirewall0/artifacts/5b592087-76bf-4c43-a1e7-d4151ce51cdd","artifactDescription":" Vendor license file","artifactChecksum":"Mjc0NGViYzYyNWZkZTRmYWFkYmUzZjY1MmEwNzRjZDE=","artifactUUID":"5b592087-76bf-4c43-a1e7-d4151ce51cdd","artifactVersion":"1","artifactLabel":"vendorlicense","artifactGroupType":"DEPLOYMENT"},{"artifactName":"base_vfw.env","artifactType":"HEAT_ENV","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vfirewall0/artifacts/1a4f0437-9e22-4e18-89ee-c4d95d15e9c1","artifactDescription":"Auto-generated HEAT Environment deployment artifact","artifactChecksum":"MTU0MzA1NzVmYmRhN2ZhMTEzZWMxZWIxMjdkMWFkY2Y=","artifactUUID":"1a4f0437-9e22-4e18-89ee-c4d95d15e9c1","artifactVersion":"2","generatedFromUUID":"51533b42-39ce-4ea8-86a4-458cfbdc72da.heat1","artifactLabel":"heat1env","artifactGroupType":"DEPLOYMENT"}]},{"resourceInstanceName":"vPacketGen 0","resourceName":"vPacketGen","resourceInvariantUUID":"023a3f0d-1161-45ff-b4cf-8918a8ccf3ad","resourceVersion":"1.0","resoucreType":"VF","resourceUUID":"a004b0d8-54bd-4ede-9311-c75dc608e9fd","artifacts":[{"artifactName":"vf-license-model.xml","artifactType":"VF_LICENSE","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vpacketgen0/artifacts/0d837657-c5fe-4042-a105-b650361cc289","artifactDescription":"VF license file","artifactChecksum":"MGU5YWY1NzNmZmM3MTEwYmM0YTgzMmQ5NGUyMmUzODQ=","artifactUUID":"0d837657-c5fe-4042-a105-b650361cc289","artifactVersion":"1","artifactLabel":"vflicense","artifactGroupType":"DEPLOYMENT"},{"artifactName":"vpacketgen0_modules.json","artifactType":"VF_MODULES_METADATA","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vpacketgen0/artifacts/dbcbf1bc-bb8d-43e5-8e77-aec713a2e18c","artifactDescription":"Auto-generated VF Modules information artifact","artifactChecksum":"Zjg5ZWQ0NDIxMTAzOTE1Y2E0MzQ1YmY0Y2MwMmE3YjM=","artifactUUID":"dbcbf1bc-bb8d-43e5-8e77-aec713a2e18c","artifactVersion":"1","artifactLabel":"vfModulesMetadata","artifactGroupType":"DEPLOYMENT"},{"artifactName":"base_vpkg.yaml","artifactType":"HEAT","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vpacketgen0/artifacts/010c5015-477d-4aba-a57a-540daa1b7af6","artifactDescription":"created from csar","artifactTimeout":60,"artifactChecksum":"NzI1ZTM5NDU3ZjBhMzQwNmFiNDYzNDBhOWM2NjNmOWU=","artifactUUID":"010c5015-477d-4aba-a57a-540daa1b7af6","artifactVersion":"2","artifactLabel":"heat1","artifactGroupType":"DEPLOYMENT"},{"artifactName":"vendor-license-model.xml","artifactType":"VENDOR_LICENSE","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vpacketgen0/artifacts/054e473f-173b-48d5-a4ee-f5ef055c008d","artifactDescription":" Vendor license file","artifactChecksum":"Mjc0NGViYzYyNWZkZTRmYWFkYmUzZjY1MmEwNzRjZDE=","artifactUUID":"054e473f-173b-48d5-a4ee-f5ef055c008d","artifactVersion":"1","artifactLabel":"vendorlicense","artifactGroupType":"DEPLOYMENT"},{"artifactName":"base_vpkg.env","artifactType":"HEAT_ENV","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vpacketgen0/artifacts/5724e8d3-47ce-4fbc-b8fc-e1407256c6f4","artifactDescription":"Auto-generated HEAT Environment deployment artifact","artifactChecksum":"NTUzYWFkYWI4NGJlNTU1NWIxMWNlZWQ0ODA5ZDM1MTY=","artifactUUID":"5724e8d3-47ce-4fbc-b8fc-e1407256c6f4","artifactVersion":"2","generatedFromUUID":"2a1233b6-e907-4a1f-8dc8-ead97245afe6.heat1","artifactLabel":"heat1env","artifactGroupType":"DEPLOYMENT"}]}],"artifacts":[{"artifactName":"AAI-vFirewall-resource-1.0.xml","artifactType":"MODEL_INVENTORY_PROFILE","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/artifacts/c55b70c5-5ed5-4ec7-9720-dbc66d47e7cb","artifactDescription":"AAI Resource Model","artifactChecksum":"OGExM2IxZmI5ODQ2Yzk4M2Y3OTY2MjMzNjdjMjA3NjQ=","artifactUUID":"c55b70c5-5ed5-4ec7-9720-dbc66d47e7cb","artifactVersion":"1","artifactLabel":"aairesource796548963","artifactGroupType":"DEPLOYMENT"},{"artifactName":"AAI-vPacketGen-resource-1.0.xml","artifactType":"MODEL_INVENTORY_PROFILE","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/artifacts/2993af7a-c0e3-43db-8a4d-2969df0ba486","artifactDescription":"AAI Resource Model","artifactChecksum":"ZTY3MTE3MTMzYTFjOGFiMDhmNTFjZGVjNWQxZWM1MmI=","artifactUUID":"2993af7a-c0e3-43db-8a4d-2969df0ba486","artifactVersion":"1","artifactLabel":"aairesource913456444","artifactGroupType":"DEPLOYMENT"},{"artifactName":"AAI-vFirewall-service-1.0.xml","artifactType":"MODEL_INVENTORY_PROFILE","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/artifacts/d5af6c6b-0e4b-42cd-a54c-0be081f914a7","artifactDescription":"AAI Service Model","artifactChecksum":"NTRjYzdiYmVlZDI4MDU0OTM5NDE1MTVmY2VlZWZhMzc=","artifactUUID":"d5af6c6b-0e4b-42cd-a54c-0be081f914a7","artifactVersion":"1","artifactLabel":"aaiservice576477880","artifactGroupType":"DEPLOYMENT"},{"artifactName":"AAI-Vpacketgen..base_vpkg..module-0-resource-1.xml","artifactType":"MODEL_INVENTORY_PROFILE","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/artifacts/b583357c-f307-4b22-a4e4-1b99e23f0fc5","artifactDescription":"AAI Resource Model","artifactChecksum":"NmNlNjc0NmViMGRmNWY5MjRjMjliNmMwZGJiNDQxZmU=","artifactUUID":"b583357c-f307-4b22-a4e4-1b99e23f0fc5","artifactVersion":"1","artifactLabel":"aairesource696606042","artifactGroupType":"DEPLOYMENT"},{"artifactName":"AAI-Vfirewall..base_vfw..module-0-resource-1.xml","artifactType":"MODEL_INVENTORY_PROFILE","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/artifacts/a50595b1-77f6-431d-918a-531312771a72","artifactDescription":"AAI Resource Model","artifactChecksum":"Y2E2OTU1NjFiN2U2YmYwMzc2ODE3MWJkMWJmYjVkMDQ=","artifactUUID":"a50595b1-77f6-431d-918a-531312771a72","artifactVersion":"1","artifactLabel":"aairesource1531446144","artifactGroupType":"DEPLOYMENT"}]} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/metadata/.header b/src/test/resources/http-cache/example/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/metadata/.header new file mode 100644 index 000000000..b68cd5a95 --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/metadata/.header @@ -0,0 +1 @@ +{"Transfer-Encoding": "chunked", "Set-Cookie": "JSESSIONID=1q39ofwsxq5fv1ceix6aviixab;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "8eaaa9d5-0585-4e48-82a6-932c85afc4fa"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vpacketgen0/artifacts/.file b/src/test/resources/http-cache/example/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vpacketgen0/artifacts/.file new file mode 100644 index 000000000..29d8ab70c --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vpacketgen0/artifacts/.file @@ -0,0 +1 @@ +{"artifactName":"ClosedLoop-2e3d2132-26d4-11e8-826d-0242ac130002.yml","artifactType":"DCAE_INVENTORY_BLUEPRINT","artifactURL":"","artifactDescription":"Description of the Artifact","artifactChecksum":"ZjJlMjVmMWE2M2M1OTM2MDZlODlmNTVmZmYzNjViYzM=","artifactUUID":"13fb13f9-f5d7-4ade-b934-d0da78754a51","artifactVersion":"1"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vpacketgen0/artifacts/.header b/src/test/resources/http-cache/example/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vpacketgen0/artifacts/.header new file mode 100644 index 000000000..125a579ec --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vpacketgen0/artifacts/.header @@ -0,0 +1 @@ +{"Content-Length": "323", "Content-Type": "application/json"} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/metadata/.file b/src/test/resources/http-cache/example/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/metadata/.file new file mode 100644 index 000000000..bc8d30ce9 --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/metadata/.file @@ -0,0 +1 @@ +{"uuid":"aecb6332-e906-4334-9f04-93ba4926f6c2","invariantUUID":"c95b0e7c-c1f0-4287-9928-7964c5377a46","name":"vLoadBalancer","version":"1.0","toscaModelURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/toscaModel","category":"Network L4+","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jm0007","distributionStatus":"DISTRIBUTED","lastUpdaterFullName":"Joni Mitchell","resources":[{"resourceInstanceName":"vLoadBalancer 0","resourceName":"vLoadBalancer","resourceInvariantUUID":"48504e0e-f3d3-411d-a52b-eda1b8fec073","resourceVersion":"1.0","resoucreType":"VF","resourceUUID":"c041f64d-8d8f-4f89-906f-79dccc63e7f5","artifacts":[{"artifactName":"vf-license-model.xml","artifactType":"VF_LICENSE","artifactURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/resourceInstances/vloadbalancer0/artifacts/51af0540-4863-4900-b3be-0f81abd89194","artifactDescription":"VF license file","artifactChecksum":"ODk5M2NiYzE2ZDk1ZmNkZmRjZDcwMTE1NjExMzViNjA=","artifactUUID":"51af0540-4863-4900-b3be-0f81abd89194","artifactVersion":"1","artifactLabel":"vflicense","artifactGroupType":"DEPLOYMENT"},{"artifactName":"vloadbalancer0_modules.json","artifactType":"VF_MODULES_METADATA","artifactURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/resourceInstances/vloadbalancer0/artifacts/09fd9d5b-c442-4fd5-9430-d222ed9d6072","artifactDescription":"Auto-generated VF Modules information artifact","artifactChecksum":"NGViZWM5NmU3OGJkODI5N2E4OTIxNGU0ZjY4MDIyMGI=","artifactUUID":"09fd9d5b-c442-4fd5-9430-d222ed9d6072","artifactVersion":"1","artifactLabel":"vfModulesMetadata","artifactGroupType":"DEPLOYMENT"},{"artifactName":"dnsscaling.yaml","artifactType":"HEAT","artifactURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/resourceInstances/vloadbalancer0/artifacts/f5aad388-38b2-4b53-9df7-d8a25595e5cb","artifactDescription":"created from csar","artifactTimeout":60,"artifactChecksum":"NmE1MmVmNThmZmFjZmZiZTA4NDY2NzA2OTM4ZmFlMGM=","artifactUUID":"f5aad388-38b2-4b53-9df7-d8a25595e5cb","artifactVersion":"2","artifactLabel":"heat1","artifactGroupType":"DEPLOYMENT"},{"artifactName":"base_vlb.yaml","artifactType":"HEAT","artifactURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/resourceInstances/vloadbalancer0/artifacts/3370c5c2-cdbc-45b9-ab76-1f0d45cda59e","artifactDescription":"created from csar","artifactTimeout":60,"artifactChecksum":"ZWZiMDg0M2UxMGZmMjlhYTIxODE5ZDBhNWVhZDk2NTU=","artifactUUID":"3370c5c2-cdbc-45b9-ab76-1f0d45cda59e","artifactVersion":"2","artifactLabel":"heat2","artifactGroupType":"DEPLOYMENT"},{"artifactName":"base_vlb.env","artifactType":"HEAT_ENV","artifactURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/resourceInstances/vloadbalancer0/artifacts/393157c8-74f5-40f5-ac2c-b8386dc5f763","artifactDescription":"Auto-generated HEAT Environment deployment artifact","artifactChecksum":"NzMwOTgwYTgyNWY2NThjOTZmNzZkMDdjODJiOGNkN2Y=","artifactUUID":"393157c8-74f5-40f5-ac2c-b8386dc5f763","artifactVersion":"2","generatedFromUUID":"25d2b375-b4ad-4476-a5eb-ceb851d9e536.heat2","artifactLabel":"heat2env","artifactGroupType":"DEPLOYMENT"},{"artifactName":"vendor-license-model.xml","artifactType":"VENDOR_LICENSE","artifactURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/resourceInstances/vloadbalancer0/artifacts/28a877c8-2005-43d7-802d-769b5f420608","artifactDescription":" Vendor license file","artifactChecksum":"Mjc0NGViYzYyNWZkZTRmYWFkYmUzZjY1MmEwNzRjZDE=","artifactUUID":"28a877c8-2005-43d7-802d-769b5f420608","artifactVersion":"1","artifactLabel":"vendorlicense","artifactGroupType":"DEPLOYMENT"},{"artifactName":"dnsscaling.env","artifactType":"HEAT_ENV","artifactURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/resourceInstances/vloadbalancer0/artifacts/13a375d2-2926-4b2c-a5a9-f380ac744ffb","artifactDescription":"Auto-generated HEAT Environment deployment artifact","artifactChecksum":"MWQzY2UxZDQ5MzhiNzA1OTg2NjcwNDIxODczYzhiNjU=","artifactUUID":"13a375d2-2926-4b2c-a5a9-f380ac744ffb","artifactVersion":"2","generatedFromUUID":"25d2b375-b4ad-4476-a5eb-ceb851d9e536.heat1","artifactLabel":"heat1env","artifactGroupType":"DEPLOYMENT"}]}],"artifacts":[{"artifactName":"AAI-vLoadBalancer-service-1.0.xml","artifactType":"MODEL_INVENTORY_PROFILE","artifactURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/artifacts/775f9232-0db1-49af-a27b-8cd6f0271d29","artifactDescription":"AAI Service Model","artifactChecksum":"Yjk3NzY2NTFkODU4MWU0YjVhOGViODZjNmUyZGIxODc=","artifactUUID":"775f9232-0db1-49af-a27b-8cd6f0271d29","artifactVersion":"1","artifactLabel":"aaiservice150241483","artifactGroupType":"DEPLOYMENT"},{"artifactName":"AAI-Vloadbalancer..dnsscaling..module-1-resource-1.xml","artifactType":"MODEL_INVENTORY_PROFILE","artifactURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/artifacts/4ce04ca0-94cc-4884-a36a-c46cb6b2ae1b","artifactDescription":"AAI Resource Model","artifactChecksum":"ZjhlOGNkNjdmMWM5NWU4MDY0ZWRjYWEzMTEzZGM2ZTI=","artifactUUID":"4ce04ca0-94cc-4884-a36a-c46cb6b2ae1b","artifactVersion":"1","artifactLabel":"aairesource916952801","artifactGroupType":"DEPLOYMENT"},{"artifactName":"AAI-Vloadbalancer..base_vlb..module-0-resource-1.xml","artifactType":"MODEL_INVENTORY_PROFILE","artifactURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/artifacts/9200d35b-c50b-4502-9473-33039a1c2454","artifactDescription":"AAI Resource Model","artifactChecksum":"ZTNmZDFlOTBjNGU3ZWY3NWE2MTQ1ZWQ4YzBiYWU4NzE=","artifactUUID":"9200d35b-c50b-4502-9473-33039a1c2454","artifactVersion":"1","artifactLabel":"aairesource1122970540","artifactGroupType":"DEPLOYMENT"},{"artifactName":"AAI-vLoadBalancer-resource-1.0.xml","artifactType":"MODEL_INVENTORY_PROFILE","artifactURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/artifacts/faf70850-ea55-4ab6-9648-46a753cdb43f","artifactDescription":"AAI Resource Model","artifactChecksum":"NjBkMDE1YWYwOTY5ZWZkNGUxYmYwYWJkZGNhMTk2MTg=","artifactUUID":"faf70850-ea55-4ab6-9648-46a753cdb43f","artifactVersion":"1","artifactLabel":"aairesource1272484133","artifactGroupType":"DEPLOYMENT"}]} \ No newline at end of file diff --git a/src/test/resources/http-cache/example/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/metadata/.header b/src/test/resources/http-cache/example/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/metadata/.header new file mode 100644 index 000000000..fba705b1b --- /dev/null +++ b/src/test/resources/http-cache/example/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/metadata/.header @@ -0,0 +1 @@ +{"Content-Length": "6161", "Set-Cookie": "JSESSIONID=1au1i8ursafcdtpvhzarkul54;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "e0ca6465-8984-46aa-9e4e-28f3b0415bb1"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=CVFC/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=CVFC/.file deleted file mode 100644 index 7115df3f9..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=CVFC/.file +++ /dev/null @@ -1 +0,0 @@ -[{"uuid":"a01ebd00-4b64-4607-8422-c3733735800d","invariantUUID":"dd6edb9e-015e-45ae-9597-bac06687f9e3","name":"vLoadBalancer-nodes.vdnsCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/a01ebd00-4b64-4607-8422-c3733735800d/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"948da0c9-536e-4688-85eb-d906fe7324b3","invariantUUID":"702cbc3d-5669-426d-aba6-6ddf4d4a702b","name":"vLoadBalancer-nodes.vpgCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/948da0c9-536e-4688-85eb-d906fe7324b3/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"38b62ebd-276a-48e8-948b-de76c81d6686","invariantUUID":"2ef814e3-7c17-420c-bdba-e84e338cd991","name":"vLoadBalancer-nodes.vdns_1Cvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/38b62ebd-276a-48e8-948b-de76c81d6686/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"228aac11-6e48-4412-afbf-327c5c3b04fb","invariantUUID":"ba4d4b5d-f861-4155-886b-b1cdba5e0957","name":"vLoadBalancer-nodes.vlbCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/228aac11-6e48-4412-afbf-327c5c3b04fb/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"2bbcbcce-f9e2-4f5d-b975-1f1122d3226c","invariantUUID":"28142b9a-7925-4921-bc81-178c5bae4a9b","name":"vPacketGen-nodes.vpgCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/2bbcbcce-f9e2-4f5d-b975-1f1122d3226c/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"701bf7b7-ddf1-4658-af5f-66c815348fd3","invariantUUID":"53ebeed7-84db-4638-b1f3-8ed44c75985b","name":"vFirewall-nodes.vfwCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/701bf7b7-ddf1-4658-af5f-66c815348fd3/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"d6a5add1-162a-4966-80a6-8ba53d83b17f","invariantUUID":"74805001-19f5-4c2c-9928-03014161c32a","name":"vFirewall-nodes.vsnCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/d6a5add1-162a-4966-80a6-8ba53d83b17f/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"}] \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=CVFC/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=CVFC/.header deleted file mode 100644 index e7f1e8490..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=CVFC/.header +++ /dev/null @@ -1 +0,0 @@ -{"Content-Length": "2612", "Set-Cookie": "JSESSIONID=17p45w15arnkc191z2olo4e8qe;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "485020fa-b5f7-4d30-9473-e201326ed649"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VF/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VF/.file deleted file mode 100644 index 253046a91..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VF/.file +++ /dev/null @@ -1 +0,0 @@ -[{"uuid":"c041f64d-8d8f-4f89-906f-79dccc63e7f5","invariantUUID":"48504e0e-f3d3-411d-a52b-eda1b8fec073","name":"vLoadBalancer","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/toscaModel","category":"Application L4+","subCategory":"Load Balancer","resourceType":"VF","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jm0007"},{"uuid":"98c27d0b-9395-4f8b-87ab-e076cd1f627e","invariantUUID":"07e266fc-49ab-4cd7-8378-ca4676f1b9ec","name":"vFirewall","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/toscaModel","category":"Application L4+","subCategory":"Firewall","resourceType":"VF","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jm0007"},{"uuid":"a004b0d8-54bd-4ede-9311-c75dc608e9fd","invariantUUID":"023a3f0d-1161-45ff-b4cf-8918a8ccf3ad","name":"vPacketGen","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/toscaModel","category":"Application L4+","subCategory":"Web Server","resourceType":"VF","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jm0007"}] \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VF/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VF/.header deleted file mode 100644 index ff1f54a02..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VF/.header +++ /dev/null @@ -1 +0,0 @@ -{"Content-Length": "1099", "Set-Cookie": "JSESSIONID=1cmvc2wrt6df31psfrfvp7y670;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "a37e7d9c-effe-4354-94df-77774dd239d3"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VFC/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VFC/.file deleted file mode 100644 index a99aa44d2..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VFC/.file +++ /dev/null @@ -1 +0,0 @@ -[{"uuid":"a72ab48d-2d20-4c28-936a-94f45160d126","invariantUUID":"528a9e7e-1db8-44cd-a59a-f7f2833aaeb3","name":"SoftwareComponent","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/a72ab48d-2d20-4c28-936a-94f45160d126/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"2fa6c8ab-297f-4ec6-869f-893db6c84ac4","invariantUUID":"281696ab-4415-4dbb-8f4b-42ff25314466","name":"Root","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/2fa6c8ab-297f-4ec6-869f-893db6c84ac4/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"ba598da2-fd47-4701-b906-c03309ce52d7","invariantUUID":"cfdfb7b0-44fe-4b03-8efd-83533b4a3e94","name":"Compute","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/ba598da2-fd47-4701-b906-c03309ce52d7/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"c505b470-d39e-44f2-bb3a-26bc1b10bc84","invariantUUID":"7afee9e5-f666-4109-875c-89663f4c2676","name":"WebApplication","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/c505b470-d39e-44f2-bb3a-26bc1b10bc84/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"32c7f0ad-70b1-445f-9ec4-a54fdc054081","invariantUUID":"f0c9ed72-f92d-471b-8014-b810cb9d6c53","name":"Database","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/32c7f0ad-70b1-445f-9ec4-a54fdc054081/toscaModel","category":"Generic","subCategory":"Database","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"3187eb9b-dbba-492d-9137-e12db15226e7","invariantUUID":"ec55e51b-eb97-41ce-b2bf-bd7240d773a1","name":"WebServer","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/3187eb9b-dbba-492d-9137-e12db15226e7/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"59dc3d57-6609-4acd-b280-1297504b3fa3","invariantUUID":"3d5f7968-8432-47a7-9532-5833050636c9","name":"ObjectStorage","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/59dc3d57-6609-4acd-b280-1297504b3fa3/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"6000538b-f0f0-467b-bb8c-d6514d84529f","invariantUUID":"8c5a23e8-388d-4af8-8a5e-469081b2b8cd","name":"Runtime","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/6000538b-f0f0-467b-bb8c-d6514d84529f/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"92cb6435-1f95-42e1-b7a4-3418fa58f99c","invariantUUID":"fc537796-7a6a-4878-ad2c-ebae0b1031eb","name":"BlockStorage","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/92cb6435-1f95-42e1-b7a4-3418fa58f99c/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"7e41c605-b93c-4679-bc8e-83ac839e92c8","invariantUUID":"e09d62d9-c704-41be-a091-d0bf8d5c2c6b","name":"Application","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/7e41c605-b93c-4679-bc8e-83ac839e92c8/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"0dc498fd-2c4f-4e83-afbd-4404c7644234","invariantUUID":"55642129-7e02-49f3-827b-ef309ca80ff4","name":"GlobalCompute","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/0dc498fd-2c4f-4e83-afbd-4404c7644234/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"8d77ceb7-14a4-44f1-9a53-d92313ed56d0","invariantUUID":"f43bb2b2-db21-4739-8a64-f7743d54db15","name":"CinderVolume","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/8d77ceb7-14a4-44f1-9a53-d92313ed56d0/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"5a14f316-0f4e-4638-a0ad-71776a5014d2","invariantUUID":"40f6daa6-e352-4047-a115-9c4931ce0334","name":"volume","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/5a14f316-0f4e-4638-a0ad-71776a5014d2/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"2220d928-d281-4ba1-b44a-21b72c8c9872","invariantUUID":"7c398180-ea60-494b-b345-678391fbe8c2","name":"NovaServer","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/2220d928-d281-4ba1-b44a-21b72c8c9872/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"c9ed9d61-f3a5-4210-9af7-70a4f93b836a","invariantUUID":"ca7f356c-9f1c-4672-ade1-27a7f190064c","name":"AbstractSubstitute","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/c9ed9d61-f3a5-4210-9af7-70a4f93b836a/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"50ada44a-dd89-4e8d-850b-113019d2175b","invariantUUID":"6bb86fb2-e7f2-4ba6-aca8-80ccea04bc0a","name":"ContrailNetworkRules","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/50ada44a-dd89-4e8d-850b-113019d2175b/toscaModel","category":"Generic","subCategory":"Rules","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"bb37dd40-0e70-405f-81ca-c6ca22d3384f","invariantUUID":"3622a332-ce1c-406c-8212-966822eba394","name":"SecurityRules","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/bb37dd40-0e70-405f-81ca-c6ca22d3384f/toscaModel","category":"Generic","subCategory":"Rules","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"b876d972-31bf-427c-a557-0cc0befcfbec","invariantUUID":"12d9d4a3-f695-4055-b22b-edc60e738795","name":"ContrailAbstractSubstitute","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/b876d972-31bf-427c-a557-0cc0befcfbec/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"6baeb8d4-1d26-4530-a017-60d48dd38ace","invariantUUID":"015e424d-3482-4cd4-a047-1a4ca66588cc","name":"vnfConfiguration","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/6baeb8d4-1d26-4530-a017-60d48dd38ace/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"9f1402d1-b8cc-4b70-a45c-54d636e50086","invariantUUID":"a47fd09d-a910-4829-bb35-38741cefd2b9","name":"DBMS","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/9f1402d1-b8cc-4b70-a45c-54d636e50086/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"467ee1a0-34dd-46da-a198-a4ebe94c31b1","invariantUUID":"35b1df1f-4f9d-4bc6-9dbb-368e26c64243","name":"ContrailV2VirtualMachineInterface","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/467ee1a0-34dd-46da-a198-a4ebe94c31b1/toscaModel","category":"Generic","subCategory":"Network Elements","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"0d26b446-bd26-44ed-95a8-7ec302dd91aa","invariantUUID":"03c4eac9-4af8-4751-94fc-ce6095930c83","name":"ContrailCompute","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/0d26b446-bd26-44ed-95a8-7ec302dd91aa/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"83ccfaa3-a5e5-4567-88c4-aa5cb3a7b22e","invariantUUID":"1a67dbe6-ceca-4621-891e-3bb14f42943a","name":"multiFlavorVFC","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/83ccfaa3-a5e5-4567-88c4-aa5cb3a7b22e/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"14ddb890-fe68-4fee-a296-711d5a4b6e59","invariantUUID":"14184c8a-0c13-4873-a5c1-2586032db98c","name":"Ext Image File","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/14ddb890-fe68-4fee-a296-711d5a4b6e59/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"720552c5-e05d-4933-9882-8d7359af6e82","invariantUUID":"f43a5ef6-ddbf-4520-a6cb-9ca8b6b39ad6","name":"Ext Local Storage","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/720552c5-e05d-4933-9882-8d7359af6e82/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"6ba191b3-2315-44ec-85ac-d5351e7d4b81","invariantUUID":"0e0269f9-6e04-4234-bfd1-bfae52af7f83","name":"Ext Zte VDU","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/6ba191b3-2315-44ec-85ac-d5351e7d4b81/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"307cd1f4-bbc4-4675-b491-8e318231dc76","invariantUUID":"1fa025a5-c877-4221-9fbf-1b117fb66631","name":"LoadBalancer","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/307cd1f4-bbc4-4675-b491-8e318231dc76/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"949e82db-98ee-47d0-a5d2-21cb06c4a091","invariantUUID":"348d3957-11fd-4194-8835-1b112664b78b","name":"NSD","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/949e82db-98ee-47d0-a5d2-21cb06c4a091/toscaModel","category":"Generic","subCategory":"Network Elements","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"f54c8dde-2dc9-4f06-8bd6-1679d0b12b0c","invariantUUID":"4644b678-6680-432a-9d54-b209cc8264fe","name":"VDU","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/f54c8dde-2dc9-4f06-8bd6-1679d0b12b0c/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"cca286e8-5ac0-451c-b874-8cc307181e10","invariantUUID":"b4ad5952-aa22-4645-ac57-72d55c8833be","name":"Vloadbalancer.nodes.heat.vdns","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/cca286e8-5ac0-451c-b874-8cc307181e10/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"876f7eff-46e3-4981-8717-597c01310714","invariantUUID":"7c3316b0-2090-4a2f-a21b-63e3c9dd3bf8","name":"AllottedResource","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/876f7eff-46e3-4981-8717-597c01310714/toscaModel","category":"Allotted Resource","subCategory":"Allotted Resource","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"c25db6d1-2653-45d9-8062-440f962c83ba","invariantUUID":"86aeffce-6d21-4bc0-84c5-e4fd3f7acdaa","name":"VDU VirtualStorage","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/c25db6d1-2653-45d9-8062-440f962c83ba/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"68bb176c-8d5f-4d27-8407-fd8d9e5910eb","invariantUUID":"1a12347c-6166-4d21-9861-b2c432722a23","name":"Vfirewall.nodes.heat.vfw","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/68bb176c-8d5f-4d27-8407-fd8d9e5910eb/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d","invariantUUID":"3ff44c1d-0384-4501-8e33-dd3000799378","name":"Vloadbalancer.nodes.heat.vlb","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"8fb4db8b-1d1f-4369-8611-0375d86f0051","invariantUUID":"05e3e25f-b671-433f-8ea6-835c198c15ae","name":"Vloadbalancer.nodes.heat.vpg","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/8fb4db8b-1d1f-4369-8611-0375d86f0051/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"c8a01686-2762-483c-98ad-a66606b9947f","invariantUUID":"86769df9-139b-489f-949d-05efb7f0ed6a","name":"Vpacketgen.nodes.heat.vpg","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/c8a01686-2762-483c-98ad-a66606b9947f/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"},{"uuid":"5a136c51-055f-46b7-90e3-3d99d1da3d10","invariantUUID":"a6c4eda9-c71b-4435-ad73-51f82946df1b","name":"ContrailV2NetworkRules","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/5a136c51-055f-46b7-90e3-3d99d1da3d10/toscaModel","category":"Generic","subCategory":"Rules","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"163dded5-44a3-42e3-b373-c594412eeac6","invariantUUID":"1550f69b-12cb-44ad-81b3-de6ec606a566","name":"VDU Compute","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/163dded5-44a3-42e3-b373-c594412eeac6/toscaModel","category":"Generic","subCategory":"Infrastructure","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jh0003"},{"uuid":"b339e576-e433-4be4-8a43-258f629c4e79","invariantUUID":"d66c0bce-d7e1-41ad-bdaf-468d442d0543","name":"Vfirewall.nodes.heat.vsn","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/b339e576-e433-4be4-8a43-258f629c4e79/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008"}] \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VFC/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VFC/.header deleted file mode 100644 index 6a280d972..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources?resourceType=VFC/.header +++ /dev/null @@ -1 +0,0 @@ -{"Transfer-Encoding": "chunked", "Set-Cookie": "JSESSIONID=158qxkdtdobkd1umr3ikkgrmlx;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "e2ddb3c8-994f-47df-b4dc-097d4fb55c08"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/228aac11-6e48-4412-afbf-327c5c3b04fb/metadata/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/228aac11-6e48-4412-afbf-327c5c3b04fb/metadata/.file deleted file mode 100644 index 8b9114f19..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/228aac11-6e48-4412-afbf-327c5c3b04fb/metadata/.file +++ /dev/null @@ -1 +0,0 @@ -{"uuid":"228aac11-6e48-4412-afbf-327c5c3b04fb","invariantUUID":"ba4d4b5d-f861-4155-886b-b1cdba5e0957","name":"vLoadBalancer-nodes.vlbCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/228aac11-6e48-4412-afbf-327c5c3b04fb/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vloadbalancercvfc.abstract.nodes.vlb","resources":[{"resourceInstanceName":"vlb_vlb_private_2_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"},{"resourceInstanceName":"vlb_vlb_private_0_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"},{"resourceInstanceName":"vlb","resourceName":"Vloadbalancer.nodes.heat.vlb","resourceInvariantUUID":"3ff44c1d-0384-4501-8e33-dd3000799378","resourceVersion":"1.0","resoucreType":"VFC","resourceUUID":"f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d"},{"resourceInstanceName":"vlb_vlb_private_1_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"}],"description":"Complex node type that is used as nested type in VF"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/228aac11-6e48-4412-afbf-327c5c3b04fb/metadata/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/228aac11-6e48-4412-afbf-327c5c3b04fb/metadata/.header deleted file mode 100644 index 439efd9f0..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/228aac11-6e48-4412-afbf-327c5c3b04fb/metadata/.header +++ /dev/null @@ -1 +0,0 @@ -{"Content-Length": "1539", "Set-Cookie": "JSESSIONID=2hdxvh0c2nj012gw8yu63ffd1;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "1a2d5fef-de1c-478e-bf5c-7df1bc37870e"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/2bbcbcce-f9e2-4f5d-b975-1f1122d3226c/metadata/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/2bbcbcce-f9e2-4f5d-b975-1f1122d3226c/metadata/.file deleted file mode 100644 index da4363f14..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/2bbcbcce-f9e2-4f5d-b975-1f1122d3226c/metadata/.file +++ /dev/null @@ -1 +0,0 @@ -{"uuid":"2bbcbcce-f9e2-4f5d-b975-1f1122d3226c","invariantUUID":"28142b9a-7925-4921-bc81-178c5bae4a9b","name":"vPacketGen-nodes.vpgCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/2bbcbcce-f9e2-4f5d-b975-1f1122d3226c/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vpacketgencvfc.abstract.nodes.vpg","resources":[{"resourceInstanceName":"vpg_vpg_private_0_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"},{"resourceInstanceName":"vpg","resourceName":"Vpacketgen.nodes.heat.vpg","resourceInvariantUUID":"86769df9-139b-489f-949d-05efb7f0ed6a","resourceVersion":"1.0","resoucreType":"VFC","resourceUUID":"c8a01686-2762-483c-98ad-a66606b9947f"},{"resourceInstanceName":"vpg_vpg_private_1_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"}],"description":"Complex node type that is used as nested type in VF"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/2bbcbcce-f9e2-4f5d-b975-1f1122d3226c/metadata/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/2bbcbcce-f9e2-4f5d-b975-1f1122d3226c/metadata/.header deleted file mode 100644 index 27e67e5ce..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/2bbcbcce-f9e2-4f5d-b975-1f1122d3226c/metadata/.header +++ /dev/null @@ -1 +0,0 @@ -{"Content-Length": "1290", "Set-Cookie": "JSESSIONID=1uooiet6i9dyt17t85aw0rkxkc;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "f50d8d8a-f63d-44cc-bc32-5c8b0e47305c"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/38b62ebd-276a-48e8-948b-de76c81d6686/metadata/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/38b62ebd-276a-48e8-948b-de76c81d6686/metadata/.file deleted file mode 100644 index 05f714755..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/38b62ebd-276a-48e8-948b-de76c81d6686/metadata/.file +++ /dev/null @@ -1 +0,0 @@ -{"uuid":"38b62ebd-276a-48e8-948b-de76c81d6686","invariantUUID":"2ef814e3-7c17-420c-bdba-e84e338cd991","name":"vLoadBalancer-nodes.vdns_1Cvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/38b62ebd-276a-48e8-948b-de76c81d6686/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vloadbalancercvfc.abstract.nodes.vdns_1","resources":[{"resourceInstanceName":"vdns_vdns_2_private_1_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"},{"resourceInstanceName":"vdns","resourceName":"Vloadbalancer.nodes.heat.vdns","resourceInvariantUUID":"b4ad5952-aa22-4645-ac57-72d55c8833be","resourceVersion":"1.0","resoucreType":"VFC","resourceUUID":"cca286e8-5ac0-451c-b874-8cc307181e10"},{"resourceInstanceName":"vdns_vdns_2_private_0_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"}],"description":"Complex node type that is used as nested type in VF"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/38b62ebd-276a-48e8-948b-de76c81d6686/metadata/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/38b62ebd-276a-48e8-948b-de76c81d6686/metadata/.header deleted file mode 100644 index 79b1c5243..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/38b62ebd-276a-48e8-948b-de76c81d6686/metadata/.header +++ /dev/null @@ -1 +0,0 @@ -{"Content-Length": "1315", "Set-Cookie": "JSESSIONID=1mwa65h39co1ljdehgclglgrt;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "e436e8fb-e11d-4e9b-a082-cb51c82be86f"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/68bb176c-8d5f-4d27-8407-fd8d9e5910eb/metadata/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/68bb176c-8d5f-4d27-8407-fd8d9e5910eb/metadata/.file deleted file mode 100644 index 9985a8be8..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/68bb176c-8d5f-4d27-8407-fd8d9e5910eb/metadata/.file +++ /dev/null @@ -1 +0,0 @@ -{"uuid":"68bb176c-8d5f-4d27-8407-fd8d9e5910eb","invariantUUID":"1a12347c-6166-4d21-9861-b2c432722a23","name":"Vfirewall.nodes.heat.vfw","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/68bb176c-8d5f-4d27-8407-fd8d9e5910eb/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vfirewall.abstract.nodes.heat.vfw","description":"Not reusable inner VFC"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/68bb176c-8d5f-4d27-8407-fd8d9e5910eb/metadata/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/68bb176c-8d5f-4d27-8407-fd8d9e5910eb/metadata/.header deleted file mode 100644 index 5d3981400..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/68bb176c-8d5f-4d27-8407-fd8d9e5910eb/metadata/.header +++ /dev/null @@ -1 +0,0 @@ -{"Content-Length": "530", "Set-Cookie": "JSESSIONID=1cybc5e92nwmc1bh0rv2faio02;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "132bca4c-b16b-4c78-b52f-4a33bd74b4ed"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/701bf7b7-ddf1-4658-af5f-66c815348fd3/metadata/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/701bf7b7-ddf1-4658-af5f-66c815348fd3/metadata/.file deleted file mode 100644 index bbae2420e..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/701bf7b7-ddf1-4658-af5f-66c815348fd3/metadata/.file +++ /dev/null @@ -1 +0,0 @@ -{"uuid":"701bf7b7-ddf1-4658-af5f-66c815348fd3","invariantUUID":"53ebeed7-84db-4638-b1f3-8ed44c75985b","name":"vFirewall-nodes.vfwCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/701bf7b7-ddf1-4658-af5f-66c815348fd3/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vfirewallcvfc.abstract.nodes.vfw","resources":[{"resourceInstanceName":"vfw_vfw_private_0_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"},{"resourceInstanceName":"vfw_vfw_private_2_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"},{"resourceInstanceName":"vfw_vfw_private_1_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"},{"resourceInstanceName":"vfw","resourceName":"Vfirewall.nodes.heat.vfw","resourceInvariantUUID":"1a12347c-6166-4d21-9861-b2c432722a23","resourceVersion":"1.0","resoucreType":"VFC","resourceUUID":"68bb176c-8d5f-4d27-8407-fd8d9e5910eb"}],"description":"Complex node type that is used as nested type in VF"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/701bf7b7-ddf1-4658-af5f-66c815348fd3/metadata/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/701bf7b7-ddf1-4658-af5f-66c815348fd3/metadata/.header deleted file mode 100644 index c4e7b6900..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/701bf7b7-ddf1-4658-af5f-66c815348fd3/metadata/.header +++ /dev/null @@ -1 +0,0 @@ -{"Content-Length": "1527", "Set-Cookie": "JSESSIONID=1x67gjk2bge1i5gw7e9i9efw;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "65089c4e-19a4-4616-b3ec-97d7f4c65725"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/8fb4db8b-1d1f-4369-8611-0375d86f0051/metadata/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/8fb4db8b-1d1f-4369-8611-0375d86f0051/metadata/.file deleted file mode 100644 index 940d0ecc4..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/8fb4db8b-1d1f-4369-8611-0375d86f0051/metadata/.file +++ /dev/null @@ -1 +0,0 @@ -{"uuid":"8fb4db8b-1d1f-4369-8611-0375d86f0051","invariantUUID":"05e3e25f-b671-433f-8ea6-835c198c15ae","name":"Vloadbalancer.nodes.heat.vpg","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/8fb4db8b-1d1f-4369-8611-0375d86f0051/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vloadbalancer.abstract.nodes.heat.vpg","description":"Not reusable inner VFC"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/8fb4db8b-1d1f-4369-8611-0375d86f0051/metadata/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/8fb4db8b-1d1f-4369-8611-0375d86f0051/metadata/.header deleted file mode 100644 index 45800a0af..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/8fb4db8b-1d1f-4369-8611-0375d86f0051/metadata/.header +++ /dev/null @@ -1 +0,0 @@ -{"Content-Length": "538", "Set-Cookie": "JSESSIONID=m8wbe2pvqc0ga1gf3ceig0tc;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "12c97091-9d7e-4463-9154-4249b378e4d7"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/948da0c9-536e-4688-85eb-d906fe7324b3/metadata/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/948da0c9-536e-4688-85eb-d906fe7324b3/metadata/.file deleted file mode 100644 index 53fa9e394..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/948da0c9-536e-4688-85eb-d906fe7324b3/metadata/.file +++ /dev/null @@ -1 +0,0 @@ -{"uuid":"948da0c9-536e-4688-85eb-d906fe7324b3","invariantUUID":"702cbc3d-5669-426d-aba6-6ddf4d4a702b","name":"vLoadBalancer-nodes.vpgCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/948da0c9-536e-4688-85eb-d906fe7324b3/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vloadbalancercvfc.abstract.nodes.vpg","resources":[{"resourceInstanceName":"vpg","resourceName":"Vloadbalancer.nodes.heat.vpg","resourceInvariantUUID":"05e3e25f-b671-433f-8ea6-835c198c15ae","resourceVersion":"1.0","resoucreType":"VFC","resourceUUID":"8fb4db8b-1d1f-4369-8611-0375d86f0051"},{"resourceInstanceName":"vpg_vpg_private_0_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"},{"resourceInstanceName":"vpg_vpg_private_1_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"}],"description":"Complex node type that is used as nested type in VF"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/948da0c9-536e-4688-85eb-d906fe7324b3/metadata/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/948da0c9-536e-4688-85eb-d906fe7324b3/metadata/.header deleted file mode 100644 index 86110d468..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/948da0c9-536e-4688-85eb-d906fe7324b3/metadata/.header +++ /dev/null @@ -1 +0,0 @@ -{"Content-Length": "1299", "Set-Cookie": "JSESSIONID=1hq9wsp841x1l7lxmnjnau49m;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "e890362a-2dc4-4278-bee6-7dca3802e9ce"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/metadata/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/metadata/.file deleted file mode 100644 index 2a272ee6f..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/metadata/.file +++ /dev/null @@ -1 +0,0 @@ -{"uuid":"98c27d0b-9395-4f8b-87ab-e076cd1f627e","invariantUUID":"07e266fc-49ab-4cd7-8378-ca4676f1b9ec","name":"vFirewall","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/toscaModel","category":"Application L4+","subCategory":"Firewall","resourceType":"VF","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jm0007","lastUpdaterFullName":"Joni Mitchell","toscaResourceName":"org.openecomp.resource.vf.Vfirewall","resources":[{"resourceInstanceName":"unprotected_private_network","resourceName":"NeutronNet","resourceInvariantUUID":"e83f8487-8ba2-479c-8d63-23217595dbb2","resourceVersion":"1.0","resoucreType":"VL","resourceUUID":"fc80335e-39cf-44a3-8860-995495fad829"},{"resourceInstanceName":"abstract_vfw","resourceName":"vFirewall-nodes.vfwCvfc","resourceInvariantUUID":"53ebeed7-84db-4638-b1f3-8ed44c75985b","resourceVersion":"1.0","resoucreType":"CVFC","resourceUUID":"701bf7b7-ddf1-4658-af5f-66c815348fd3"},{"resourceInstanceName":"protected_private_network","resourceName":"NeutronNet","resourceInvariantUUID":"e83f8487-8ba2-479c-8d63-23217595dbb2","resourceVersion":"1.0","resoucreType":"VL","resourceUUID":"fc80335e-39cf-44a3-8860-995495fad829"},{"resourceInstanceName":"abstract_vsn","resourceName":"vFirewall-nodes.vsnCvfc","resourceInvariantUUID":"74805001-19f5-4c2c-9928-03014161c32a","resourceVersion":"1.0","resoucreType":"CVFC","resourceUUID":"d6a5add1-162a-4966-80a6-8ba53d83b17f"}],"artifacts":[{"artifactName":"vf-license-model.xml","artifactType":"VF_LICENSE","artifactURL":"/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/artifacts/6e816af9-944d-46d0-826d-5ff7be063a01","artifactDescription":"VF license file","artifactChecksum":"Njg4NTI4ZWY2MTliMGQzOGZmNDA4ZjRiMjllZmJkMzM=","artifactUUID":"6e816af9-944d-46d0-826d-5ff7be063a01","artifactVersion":"1","artifactLabel":"vflicense","artifactGroupType":"DEPLOYMENT"},{"artifactName":"base_vfw.yaml","artifactType":"HEAT","artifactURL":"/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/artifacts/cbc75b18-86d1-4139-95f2-1d91f79a8b25","artifactDescription":"created from csar","artifactTimeout":60,"artifactChecksum":"M2I1YmVjNzZkY2MxMWJkYTM5NzA3NDVhMGQxMzY2MDA=","artifactUUID":"cbc75b18-86d1-4139-95f2-1d91f79a8b25","artifactVersion":"2","artifactLabel":"heat1","artifactGroupType":"DEPLOYMENT"},{"artifactName":"vendor-license-model.xml","artifactType":"VENDOR_LICENSE","artifactURL":"/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/artifacts/5b592087-76bf-4c43-a1e7-d4151ce51cdd","artifactDescription":" Vendor license file","artifactChecksum":"Mjc0NGViYzYyNWZkZTRmYWFkYmUzZjY1MmEwNzRjZDE=","artifactUUID":"5b592087-76bf-4c43-a1e7-d4151ce51cdd","artifactVersion":"1","artifactLabel":"vendorlicense","artifactGroupType":"DEPLOYMENT"}],"description":"vFW, vSink"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/metadata/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/metadata/.header deleted file mode 100644 index 56bc0de43..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/98c27d0b-9395-4f8b-87ab-e076cd1f627e/metadata/.header +++ /dev/null @@ -1 +0,0 @@ -{"Content-Length": "2820", "Set-Cookie": "JSESSIONID=1lzsottm5qzz6tqpilubfc84d;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "f9f2ebc4-5438-4b28-aaae-9671b78c30d1"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/metadata/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/metadata/.file deleted file mode 100644 index ea376775e..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/metadata/.file +++ /dev/null @@ -1 +0,0 @@ -{"uuid":"a004b0d8-54bd-4ede-9311-c75dc608e9fd","invariantUUID":"023a3f0d-1161-45ff-b4cf-8918a8ccf3ad","name":"vPacketGen","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/toscaModel","category":"Application L4+","subCategory":"Web Server","resourceType":"VF","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jm0007","lastUpdaterFullName":"Joni Mitchell","toscaResourceName":"org.openecomp.resource.vf.Vpacketgen","resources":[{"resourceInstanceName":"abstract_vpg","resourceName":"vPacketGen-nodes.vpgCvfc","resourceInvariantUUID":"28142b9a-7925-4921-bc81-178c5bae4a9b","resourceVersion":"1.0","resoucreType":"CVFC","resourceUUID":"2bbcbcce-f9e2-4f5d-b975-1f1122d3226c"}],"artifacts":[{"artifactName":"vf-license-model.xml","artifactType":"VF_LICENSE","artifactURL":"/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/artifacts/0d837657-c5fe-4042-a105-b650361cc289","artifactDescription":"VF license file","artifactChecksum":"MGU5YWY1NzNmZmM3MTEwYmM0YTgzMmQ5NGUyMmUzODQ=","artifactUUID":"0d837657-c5fe-4042-a105-b650361cc289","artifactVersion":"1","artifactLabel":"vflicense","artifactGroupType":"DEPLOYMENT"},{"artifactName":"base_vpkg.yaml","artifactType":"HEAT","artifactURL":"/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/artifacts/010c5015-477d-4aba-a57a-540daa1b7af6","artifactDescription":"created from csar","artifactTimeout":60,"artifactChecksum":"NzI1ZTM5NDU3ZjBhMzQwNmFiNDYzNDBhOWM2NjNmOWU=","artifactUUID":"010c5015-477d-4aba-a57a-540daa1b7af6","artifactVersion":"2","artifactLabel":"heat1","artifactGroupType":"DEPLOYMENT"},{"artifactName":"vendor-license-model.xml","artifactType":"VENDOR_LICENSE","artifactURL":"/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/artifacts/054e473f-173b-48d5-a4ee-f5ef055c008d","artifactDescription":" Vendor license file","artifactChecksum":"Mjc0NGViYzYyNWZkZTRmYWFkYmUzZjY1MmEwNzRjZDE=","artifactUUID":"054e473f-173b-48d5-a4ee-f5ef055c008d","artifactVersion":"1","artifactLabel":"vendorlicense","artifactGroupType":"DEPLOYMENT"}],"description":"vPacketGen"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/metadata/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/metadata/.header deleted file mode 100644 index 31ab6c959..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/a004b0d8-54bd-4ede-9311-c75dc608e9fd/metadata/.header +++ /dev/null @@ -1 +0,0 @@ -{"Content-Length": "2096", "Set-Cookie": "JSESSIONID=89np5gtpq1dg1q6yy7aqkysk3;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "e02c1210-1cc8-4c4d-9763-2720e5f0a1ef"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/a01ebd00-4b64-4607-8422-c3733735800d/metadata/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/a01ebd00-4b64-4607-8422-c3733735800d/metadata/.file deleted file mode 100644 index b2e0716c0..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/a01ebd00-4b64-4607-8422-c3733735800d/metadata/.file +++ /dev/null @@ -1 +0,0 @@ -{"uuid":"a01ebd00-4b64-4607-8422-c3733735800d","invariantUUID":"dd6edb9e-015e-45ae-9597-bac06687f9e3","name":"vLoadBalancer-nodes.vdnsCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/a01ebd00-4b64-4607-8422-c3733735800d/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vloadbalancercvfc.abstract.nodes.vdns","resources":[{"resourceInstanceName":"vdns","resourceName":"Vloadbalancer.nodes.heat.vdns","resourceInvariantUUID":"b4ad5952-aa22-4645-ac57-72d55c8833be","resourceVersion":"1.0","resoucreType":"VFC","resourceUUID":"cca286e8-5ac0-451c-b874-8cc307181e10"},{"resourceInstanceName":"vdns_vdns_private_1_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"},{"resourceInstanceName":"vdns_vdns_private_0_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"}],"description":"Complex node type that is used as nested type in VF"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/a01ebd00-4b64-4607-8422-c3733735800d/metadata/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/a01ebd00-4b64-4607-8422-c3733735800d/metadata/.header deleted file mode 100644 index 86df6fd4f..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/a01ebd00-4b64-4607-8422-c3733735800d/metadata/.header +++ /dev/null @@ -1 +0,0 @@ -{"Content-Length": "1307", "Set-Cookie": "JSESSIONID=s3ol5grms28iil8u7399i2ti;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "c5dafa60-41b8-46b1-9f02-a7cd6a9a92a5"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/b339e576-e433-4be4-8a43-258f629c4e79/metadata/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/b339e576-e433-4be4-8a43-258f629c4e79/metadata/.file deleted file mode 100644 index 24da339a5..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/b339e576-e433-4be4-8a43-258f629c4e79/metadata/.file +++ /dev/null @@ -1 +0,0 @@ -{"uuid":"b339e576-e433-4be4-8a43-258f629c4e79","invariantUUID":"d66c0bce-d7e1-41ad-bdaf-468d442d0543","name":"Vfirewall.nodes.heat.vsn","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/b339e576-e433-4be4-8a43-258f629c4e79/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vfirewall.abstract.nodes.heat.vsn","description":"Not reusable inner VFC"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/b339e576-e433-4be4-8a43-258f629c4e79/metadata/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/b339e576-e433-4be4-8a43-258f629c4e79/metadata/.header deleted file mode 100644 index faa4d0bd7..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/b339e576-e433-4be4-8a43-258f629c4e79/metadata/.header +++ /dev/null @@ -1 +0,0 @@ -{"Content-Length": "530", "Set-Cookie": "JSESSIONID=1iw9dnwwle3ig19rx0pz7c5dqu;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "415de25b-5ad3-4de7-b188-e6dec8e01f35"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/metadata/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/metadata/.file deleted file mode 100644 index 4a23a0ec1..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/metadata/.file +++ /dev/null @@ -1 +0,0 @@ -{"uuid":"c041f64d-8d8f-4f89-906f-79dccc63e7f5","invariantUUID":"48504e0e-f3d3-411d-a52b-eda1b8fec073","name":"vLoadBalancer","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/toscaModel","category":"Application L4+","subCategory":"Load Balancer","resourceType":"VF","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jm0007","lastUpdaterFullName":"Joni Mitchell","toscaResourceName":"org.openecomp.resource.vf.Vloadbalancer","resources":[{"resourceInstanceName":"abstract_vdns","resourceName":"vLoadBalancer-nodes.vdnsCvfc","resourceInvariantUUID":"dd6edb9e-015e-45ae-9597-bac06687f9e3","resourceVersion":"1.0","resoucreType":"CVFC","resourceUUID":"a01ebd00-4b64-4607-8422-c3733735800d"},{"resourceInstanceName":"vlb_private_network","resourceName":"NeutronNet","resourceInvariantUUID":"e83f8487-8ba2-479c-8d63-23217595dbb2","resourceVersion":"1.0","resoucreType":"VL","resourceUUID":"fc80335e-39cf-44a3-8860-995495fad829"},{"resourceInstanceName":"abstract_vlb","resourceName":"vLoadBalancer-nodes.vlbCvfc","resourceInvariantUUID":"ba4d4b5d-f861-4155-886b-b1cdba5e0957","resourceVersion":"1.0","resoucreType":"CVFC","resourceUUID":"228aac11-6e48-4412-afbf-327c5c3b04fb"},{"resourceInstanceName":"abstract_vpg","resourceName":"vLoadBalancer-nodes.vpgCvfc","resourceInvariantUUID":"702cbc3d-5669-426d-aba6-6ddf4d4a702b","resourceVersion":"1.0","resoucreType":"CVFC","resourceUUID":"948da0c9-536e-4688-85eb-d906fe7324b3"},{"resourceInstanceName":"abstract_vdns_1","resourceName":"vLoadBalancer-nodes.vdns_1Cvfc","resourceInvariantUUID":"2ef814e3-7c17-420c-bdba-e84e338cd991","resourceVersion":"1.0","resoucreType":"CVFC","resourceUUID":"38b62ebd-276a-48e8-948b-de76c81d6686"},{"resourceInstanceName":"pktgen_private_network","resourceName":"NeutronNet","resourceInvariantUUID":"e83f8487-8ba2-479c-8d63-23217595dbb2","resourceVersion":"1.0","resoucreType":"VL","resourceUUID":"fc80335e-39cf-44a3-8860-995495fad829"}],"artifacts":[{"artifactName":"vf-license-model.xml","artifactType":"VF_LICENSE","artifactURL":"/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/artifacts/51af0540-4863-4900-b3be-0f81abd89194","artifactDescription":"VF license file","artifactChecksum":"ODk5M2NiYzE2ZDk1ZmNkZmRjZDcwMTE1NjExMzViNjA=","artifactUUID":"51af0540-4863-4900-b3be-0f81abd89194","artifactVersion":"1","artifactLabel":"vflicense","artifactGroupType":"DEPLOYMENT"},{"artifactName":"dnsscaling.yaml","artifactType":"HEAT","artifactURL":"/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/artifacts/f5aad388-38b2-4b53-9df7-d8a25595e5cb","artifactDescription":"created from csar","artifactTimeout":60,"artifactChecksum":"NmE1MmVmNThmZmFjZmZiZTA4NDY2NzA2OTM4ZmFlMGM=","artifactUUID":"f5aad388-38b2-4b53-9df7-d8a25595e5cb","artifactVersion":"2","artifactLabel":"heat1","artifactGroupType":"DEPLOYMENT"},{"artifactName":"base_vlb.yaml","artifactType":"HEAT","artifactURL":"/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/artifacts/3370c5c2-cdbc-45b9-ab76-1f0d45cda59e","artifactDescription":"created from csar","artifactTimeout":60,"artifactChecksum":"ZWZiMDg0M2UxMGZmMjlhYTIxODE5ZDBhNWVhZDk2NTU=","artifactUUID":"3370c5c2-cdbc-45b9-ab76-1f0d45cda59e","artifactVersion":"2","artifactLabel":"heat2","artifactGroupType":"DEPLOYMENT"},{"artifactName":"vendor-license-model.xml","artifactType":"VENDOR_LICENSE","artifactURL":"/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/artifacts/28a877c8-2005-43d7-802d-769b5f420608","artifactDescription":" Vendor license file","artifactChecksum":"Mjc0NGViYzYyNWZkZTRmYWFkYmUzZjY1MmEwNzRjZDE=","artifactUUID":"28a877c8-2005-43d7-802d-769b5f420608","artifactVersion":"1","artifactLabel":"vendorlicense","artifactGroupType":"DEPLOYMENT"}],"description":"vLB, vDNS, vPacketGen"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/metadata/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/metadata/.header deleted file mode 100644 index 84e699260..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/c041f64d-8d8f-4f89-906f-79dccc63e7f5/metadata/.header +++ /dev/null @@ -1 +0,0 @@ -{"Content-Length": "3790", "Set-Cookie": "JSESSIONID=1nqlf3cbvim6c1vmptrsdbq3ih;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "5b484e69-bb1c-4445-9da2-0eef460adf07"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/c8a01686-2762-483c-98ad-a66606b9947f/metadata/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/c8a01686-2762-483c-98ad-a66606b9947f/metadata/.file deleted file mode 100644 index ecf6aa73a..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/c8a01686-2762-483c-98ad-a66606b9947f/metadata/.file +++ /dev/null @@ -1 +0,0 @@ -{"uuid":"c8a01686-2762-483c-98ad-a66606b9947f","invariantUUID":"86769df9-139b-489f-949d-05efb7f0ed6a","name":"Vpacketgen.nodes.heat.vpg","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/c8a01686-2762-483c-98ad-a66606b9947f/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vpacketgen.abstract.nodes.heat.vpg","description":"Not reusable inner VFC"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/c8a01686-2762-483c-98ad-a66606b9947f/metadata/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/c8a01686-2762-483c-98ad-a66606b9947f/metadata/.header deleted file mode 100644 index 650c2ad49..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/c8a01686-2762-483c-98ad-a66606b9947f/metadata/.header +++ /dev/null @@ -1 +0,0 @@ -{"Content-Length": "532", "Set-Cookie": "JSESSIONID=1cozsnghk53ca15awxbl6ni870;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "7ceea8dc-76d4-4dfb-a142-b0d220d61e14"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/cca286e8-5ac0-451c-b874-8cc307181e10/metadata/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/cca286e8-5ac0-451c-b874-8cc307181e10/metadata/.file deleted file mode 100644 index 58b5d3673..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/cca286e8-5ac0-451c-b874-8cc307181e10/metadata/.file +++ /dev/null @@ -1 +0,0 @@ -{"uuid":"cca286e8-5ac0-451c-b874-8cc307181e10","invariantUUID":"b4ad5952-aa22-4645-ac57-72d55c8833be","name":"Vloadbalancer.nodes.heat.vdns","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/cca286e8-5ac0-451c-b874-8cc307181e10/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vloadbalancer.abstract.nodes.heat.vdns","description":"Not reusable inner VFC"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/cca286e8-5ac0-451c-b874-8cc307181e10/metadata/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/cca286e8-5ac0-451c-b874-8cc307181e10/metadata/.header deleted file mode 100644 index 2ae908f02..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/cca286e8-5ac0-451c-b874-8cc307181e10/metadata/.header +++ /dev/null @@ -1 +0,0 @@ -{"Content-Length": "540", "Set-Cookie": "JSESSIONID=uf90ig0y06m3a7lijhv462bb;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "8a4decf7-9171-4559-861f-db94405f9f2c"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/d6a5add1-162a-4966-80a6-8ba53d83b17f/metadata/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/d6a5add1-162a-4966-80a6-8ba53d83b17f/metadata/.file deleted file mode 100644 index 8038b8130..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/d6a5add1-162a-4966-80a6-8ba53d83b17f/metadata/.file +++ /dev/null @@ -1 +0,0 @@ -{"uuid":"d6a5add1-162a-4966-80a6-8ba53d83b17f","invariantUUID":"74805001-19f5-4c2c-9928-03014161c32a","name":"vFirewall-nodes.vsnCvfc","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/d6a5add1-162a-4966-80a6-8ba53d83b17f/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"CVFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vfirewallcvfc.abstract.nodes.vsn","resources":[{"resourceInstanceName":"vsn","resourceName":"Vfirewall.nodes.heat.vsn","resourceInvariantUUID":"d66c0bce-d7e1-41ad-bdaf-468d442d0543","resourceVersion":"1.0","resoucreType":"VFC","resourceUUID":"b339e576-e433-4be4-8a43-258f629c4e79"},{"resourceInstanceName":"vsn_vsn_private_1_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"},{"resourceInstanceName":"vsn_vsn_private_0_port","resourceName":"NeutronPort","resourceInvariantUUID":"d8a13756-4f96-40e2-a1ab-108dcda821a9","resourceVersion":"1.0","resoucreType":"CP","resourceUUID":"3a8362d1-b072-4cd1-b55c-73d882c8a388"}],"description":"Complex node type that is used as nested type in VF"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/d6a5add1-162a-4966-80a6-8ba53d83b17f/metadata/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/d6a5add1-162a-4966-80a6-8ba53d83b17f/metadata/.header deleted file mode 100644 index ebd872113..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/d6a5add1-162a-4966-80a6-8ba53d83b17f/metadata/.header +++ /dev/null @@ -1 +0,0 @@ -{"Content-Length": "1287", "Set-Cookie": "JSESSIONID=atnj864xj270149zuaoutning;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "6a01fc8c-95f7-4708-a232-495c3b8cf436"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d/metadata/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d/metadata/.file deleted file mode 100644 index 777738301..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d/metadata/.file +++ /dev/null @@ -1 +0,0 @@ -{"uuid":"f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d","invariantUUID":"3ff44c1d-0384-4501-8e33-dd3000799378","name":"Vloadbalancer.nodes.heat.vlb","version":"1.0","toscaModelURL":"/sdc/v1/catalog/resources/f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d/toscaModel","category":"Generic","subCategory":"Abstract","resourceType":"VFC","lifecycleState":"CERTIFIED","lastUpdaterUserId":"cs0008","lastUpdaterFullName":"Carlos Santana","toscaResourceName":"org.openecomp.resource.vfc.Vloadbalancer.abstract.nodes.heat.vlb","description":"Not reusable inner VFC"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d/metadata/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d/metadata/.header deleted file mode 100644 index 629e7d981..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/resources/f2686c0f-11c5-4cab-83bd-b0f2cc35bf4d/metadata/.header +++ /dev/null @@ -1 +0,0 @@ -{"Content-Length": "538", "Set-Cookie": "JSESSIONID=1gy8iwktdb6fl1ja4hcilqnj0x;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "712c8b60-afb5-4b77-a12f-bdaf82d5b9a5"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/.file deleted file mode 100644 index 92694fed2..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/.file +++ /dev/null @@ -1 +0,0 @@ -[{"uuid":"aecb6332-e906-4334-9f04-93ba4926f6c2","invariantUUID":"c95b0e7c-c1f0-4287-9928-7964c5377a46","name":"vLoadBalancer","version":"1.0","toscaModelURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/toscaModel","category":"Network L4+","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jm0007","distributionStatus":"DISTRIBUTED"},{"uuid":"56441b4b-0467-41dc-9a0e-e68613838219","invariantUUID":"4cc5b45a-1f63-4194-8100-cd8e14248c92","name":"vFirewall","version":"1.0","toscaModelURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/toscaModel","category":"Network L4+","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jm0007","distributionStatus":"DISTRIBUTED"}] \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/.header deleted file mode 100644 index 231ae3db2..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/.header +++ /dev/null @@ -1 +0,0 @@ -{"Content-Length": "699", "Set-Cookie": "JSESSIONID=w1td04rzsdjkehn8j9ajg2cz;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "43868be1-b1b4-4876-b1ed-8a4abf710695"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/metadata/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/metadata/.file deleted file mode 100644 index 294d88c54..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/metadata/.file +++ /dev/null @@ -1 +0,0 @@ -{"uuid":"56441b4b-0467-41dc-9a0e-e68613838219","invariantUUID":"4cc5b45a-1f63-4194-8100-cd8e14248c92","name":"vFirewall","version":"1.0","toscaModelURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/toscaModel","category":"Network L4+","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jm0007","distributionStatus":"DISTRIBUTED","lastUpdaterFullName":"Joni Mitchell","resources":[{"resourceInstanceName":"vFirewall 0","resourceName":"vFirewall","resourceInvariantUUID":"07e266fc-49ab-4cd7-8378-ca4676f1b9ec","resourceVersion":"1.0","resoucreType":"VF","resourceUUID":"98c27d0b-9395-4f8b-87ab-e076cd1f627e","artifacts":[{"artifactName":"vf-license-model.xml","artifactType":"VF_LICENSE","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vfirewall0/artifacts/6e816af9-944d-46d0-826d-5ff7be063a01","artifactDescription":"VF license file","artifactChecksum":"Njg4NTI4ZWY2MTliMGQzOGZmNDA4ZjRiMjllZmJkMzM=","artifactUUID":"6e816af9-944d-46d0-826d-5ff7be063a01","artifactVersion":"1","artifactLabel":"vflicense","artifactGroupType":"DEPLOYMENT"},{"artifactName":"vfirewall0_modules.json","artifactType":"VF_MODULES_METADATA","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vfirewall0/artifacts/f8cda4b3-3185-4801-b2dc-daa07509f62a","artifactDescription":"Auto-generated VF Modules information artifact","artifactChecksum":"MjZjNjBmNDFhOWZiZDdhOWZhNTI5NGRlNDE0NDQ4ZWM=","artifactUUID":"f8cda4b3-3185-4801-b2dc-daa07509f62a","artifactVersion":"1","artifactLabel":"vfModulesMetadata","artifactGroupType":"DEPLOYMENT"},{"artifactName":"base_vfw.yaml","artifactType":"HEAT","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vfirewall0/artifacts/cbc75b18-86d1-4139-95f2-1d91f79a8b25","artifactDescription":"created from csar","artifactTimeout":60,"artifactChecksum":"M2I1YmVjNzZkY2MxMWJkYTM5NzA3NDVhMGQxMzY2MDA=","artifactUUID":"cbc75b18-86d1-4139-95f2-1d91f79a8b25","artifactVersion":"2","artifactLabel":"heat1","artifactGroupType":"DEPLOYMENT"},{"artifactName":"vendor-license-model.xml","artifactType":"VENDOR_LICENSE","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vfirewall0/artifacts/5b592087-76bf-4c43-a1e7-d4151ce51cdd","artifactDescription":" Vendor license file","artifactChecksum":"Mjc0NGViYzYyNWZkZTRmYWFkYmUzZjY1MmEwNzRjZDE=","artifactUUID":"5b592087-76bf-4c43-a1e7-d4151ce51cdd","artifactVersion":"1","artifactLabel":"vendorlicense","artifactGroupType":"DEPLOYMENT"},{"artifactName":"base_vfw.env","artifactType":"HEAT_ENV","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vfirewall0/artifacts/1a4f0437-9e22-4e18-89ee-c4d95d15e9c1","artifactDescription":"Auto-generated HEAT Environment deployment artifact","artifactChecksum":"MTU0MzA1NzVmYmRhN2ZhMTEzZWMxZWIxMjdkMWFkY2Y=","artifactUUID":"1a4f0437-9e22-4e18-89ee-c4d95d15e9c1","artifactVersion":"2","generatedFromUUID":"51533b42-39ce-4ea8-86a4-458cfbdc72da.heat1","artifactLabel":"heat1env","artifactGroupType":"DEPLOYMENT"}]},{"resourceInstanceName":"vPacketGen 0","resourceName":"vPacketGen","resourceInvariantUUID":"023a3f0d-1161-45ff-b4cf-8918a8ccf3ad","resourceVersion":"1.0","resoucreType":"VF","resourceUUID":"a004b0d8-54bd-4ede-9311-c75dc608e9fd","artifacts":[{"artifactName":"vf-license-model.xml","artifactType":"VF_LICENSE","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vpacketgen0/artifacts/0d837657-c5fe-4042-a105-b650361cc289","artifactDescription":"VF license file","artifactChecksum":"MGU5YWY1NzNmZmM3MTEwYmM0YTgzMmQ5NGUyMmUzODQ=","artifactUUID":"0d837657-c5fe-4042-a105-b650361cc289","artifactVersion":"1","artifactLabel":"vflicense","artifactGroupType":"DEPLOYMENT"},{"artifactName":"vpacketgen0_modules.json","artifactType":"VF_MODULES_METADATA","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vpacketgen0/artifacts/dbcbf1bc-bb8d-43e5-8e77-aec713a2e18c","artifactDescription":"Auto-generated VF Modules information artifact","artifactChecksum":"Zjg5ZWQ0NDIxMTAzOTE1Y2E0MzQ1YmY0Y2MwMmE3YjM=","artifactUUID":"dbcbf1bc-bb8d-43e5-8e77-aec713a2e18c","artifactVersion":"1","artifactLabel":"vfModulesMetadata","artifactGroupType":"DEPLOYMENT"},{"artifactName":"base_vpkg.yaml","artifactType":"HEAT","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vpacketgen0/artifacts/010c5015-477d-4aba-a57a-540daa1b7af6","artifactDescription":"created from csar","artifactTimeout":60,"artifactChecksum":"NzI1ZTM5NDU3ZjBhMzQwNmFiNDYzNDBhOWM2NjNmOWU=","artifactUUID":"010c5015-477d-4aba-a57a-540daa1b7af6","artifactVersion":"2","artifactLabel":"heat1","artifactGroupType":"DEPLOYMENT"},{"artifactName":"vendor-license-model.xml","artifactType":"VENDOR_LICENSE","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vpacketgen0/artifacts/054e473f-173b-48d5-a4ee-f5ef055c008d","artifactDescription":" Vendor license file","artifactChecksum":"Mjc0NGViYzYyNWZkZTRmYWFkYmUzZjY1MmEwNzRjZDE=","artifactUUID":"054e473f-173b-48d5-a4ee-f5ef055c008d","artifactVersion":"1","artifactLabel":"vendorlicense","artifactGroupType":"DEPLOYMENT"},{"artifactName":"base_vpkg.env","artifactType":"HEAT_ENV","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/resourceInstances/vpacketgen0/artifacts/5724e8d3-47ce-4fbc-b8fc-e1407256c6f4","artifactDescription":"Auto-generated HEAT Environment deployment artifact","artifactChecksum":"NTUzYWFkYWI4NGJlNTU1NWIxMWNlZWQ0ODA5ZDM1MTY=","artifactUUID":"5724e8d3-47ce-4fbc-b8fc-e1407256c6f4","artifactVersion":"2","generatedFromUUID":"2a1233b6-e907-4a1f-8dc8-ead97245afe6.heat1","artifactLabel":"heat1env","artifactGroupType":"DEPLOYMENT"}]}],"artifacts":[{"artifactName":"AAI-vFirewall-resource-1.0.xml","artifactType":"MODEL_INVENTORY_PROFILE","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/artifacts/c55b70c5-5ed5-4ec7-9720-dbc66d47e7cb","artifactDescription":"AAI Resource Model","artifactChecksum":"OGExM2IxZmI5ODQ2Yzk4M2Y3OTY2MjMzNjdjMjA3NjQ=","artifactUUID":"c55b70c5-5ed5-4ec7-9720-dbc66d47e7cb","artifactVersion":"1","artifactLabel":"aairesource796548963","artifactGroupType":"DEPLOYMENT"},{"artifactName":"AAI-vPacketGen-resource-1.0.xml","artifactType":"MODEL_INVENTORY_PROFILE","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/artifacts/2993af7a-c0e3-43db-8a4d-2969df0ba486","artifactDescription":"AAI Resource Model","artifactChecksum":"ZTY3MTE3MTMzYTFjOGFiMDhmNTFjZGVjNWQxZWM1MmI=","artifactUUID":"2993af7a-c0e3-43db-8a4d-2969df0ba486","artifactVersion":"1","artifactLabel":"aairesource913456444","artifactGroupType":"DEPLOYMENT"},{"artifactName":"AAI-vFirewall-service-1.0.xml","artifactType":"MODEL_INVENTORY_PROFILE","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/artifacts/d5af6c6b-0e4b-42cd-a54c-0be081f914a7","artifactDescription":"AAI Service Model","artifactChecksum":"NTRjYzdiYmVlZDI4MDU0OTM5NDE1MTVmY2VlZWZhMzc=","artifactUUID":"d5af6c6b-0e4b-42cd-a54c-0be081f914a7","artifactVersion":"1","artifactLabel":"aaiservice576477880","artifactGroupType":"DEPLOYMENT"},{"artifactName":"AAI-Vpacketgen..base_vpkg..module-0-resource-1.xml","artifactType":"MODEL_INVENTORY_PROFILE","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/artifacts/b583357c-f307-4b22-a4e4-1b99e23f0fc5","artifactDescription":"AAI Resource Model","artifactChecksum":"NmNlNjc0NmViMGRmNWY5MjRjMjliNmMwZGJiNDQxZmU=","artifactUUID":"b583357c-f307-4b22-a4e4-1b99e23f0fc5","artifactVersion":"1","artifactLabel":"aairesource696606042","artifactGroupType":"DEPLOYMENT"},{"artifactName":"AAI-Vfirewall..base_vfw..module-0-resource-1.xml","artifactType":"MODEL_INVENTORY_PROFILE","artifactURL":"/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/artifacts/a50595b1-77f6-431d-918a-531312771a72","artifactDescription":"AAI Resource Model","artifactChecksum":"Y2E2OTU1NjFiN2U2YmYwMzc2ODE3MWJkMWJmYjVkMDQ=","artifactUUID":"a50595b1-77f6-431d-918a-531312771a72","artifactVersion":"1","artifactLabel":"aairesource1531446144","artifactGroupType":"DEPLOYMENT"}]} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/metadata/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/metadata/.header deleted file mode 100644 index b68cd5a95..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/56441b4b-0467-41dc-9a0e-e68613838219/metadata/.header +++ /dev/null @@ -1 +0,0 @@ -{"Transfer-Encoding": "chunked", "Set-Cookie": "JSESSIONID=1q39ofwsxq5fv1ceix6aviixab;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "8eaaa9d5-0585-4e48-82a6-932c85afc4fa"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/metadata/.file b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/metadata/.file deleted file mode 100644 index bc8d30ce9..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/metadata/.file +++ /dev/null @@ -1 +0,0 @@ -{"uuid":"aecb6332-e906-4334-9f04-93ba4926f6c2","invariantUUID":"c95b0e7c-c1f0-4287-9928-7964c5377a46","name":"vLoadBalancer","version":"1.0","toscaModelURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/toscaModel","category":"Network L4+","lifecycleState":"CERTIFIED","lastUpdaterUserId":"jm0007","distributionStatus":"DISTRIBUTED","lastUpdaterFullName":"Joni Mitchell","resources":[{"resourceInstanceName":"vLoadBalancer 0","resourceName":"vLoadBalancer","resourceInvariantUUID":"48504e0e-f3d3-411d-a52b-eda1b8fec073","resourceVersion":"1.0","resoucreType":"VF","resourceUUID":"c041f64d-8d8f-4f89-906f-79dccc63e7f5","artifacts":[{"artifactName":"vf-license-model.xml","artifactType":"VF_LICENSE","artifactURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/resourceInstances/vloadbalancer0/artifacts/51af0540-4863-4900-b3be-0f81abd89194","artifactDescription":"VF license file","artifactChecksum":"ODk5M2NiYzE2ZDk1ZmNkZmRjZDcwMTE1NjExMzViNjA=","artifactUUID":"51af0540-4863-4900-b3be-0f81abd89194","artifactVersion":"1","artifactLabel":"vflicense","artifactGroupType":"DEPLOYMENT"},{"artifactName":"vloadbalancer0_modules.json","artifactType":"VF_MODULES_METADATA","artifactURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/resourceInstances/vloadbalancer0/artifacts/09fd9d5b-c442-4fd5-9430-d222ed9d6072","artifactDescription":"Auto-generated VF Modules information artifact","artifactChecksum":"NGViZWM5NmU3OGJkODI5N2E4OTIxNGU0ZjY4MDIyMGI=","artifactUUID":"09fd9d5b-c442-4fd5-9430-d222ed9d6072","artifactVersion":"1","artifactLabel":"vfModulesMetadata","artifactGroupType":"DEPLOYMENT"},{"artifactName":"dnsscaling.yaml","artifactType":"HEAT","artifactURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/resourceInstances/vloadbalancer0/artifacts/f5aad388-38b2-4b53-9df7-d8a25595e5cb","artifactDescription":"created from csar","artifactTimeout":60,"artifactChecksum":"NmE1MmVmNThmZmFjZmZiZTA4NDY2NzA2OTM4ZmFlMGM=","artifactUUID":"f5aad388-38b2-4b53-9df7-d8a25595e5cb","artifactVersion":"2","artifactLabel":"heat1","artifactGroupType":"DEPLOYMENT"},{"artifactName":"base_vlb.yaml","artifactType":"HEAT","artifactURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/resourceInstances/vloadbalancer0/artifacts/3370c5c2-cdbc-45b9-ab76-1f0d45cda59e","artifactDescription":"created from csar","artifactTimeout":60,"artifactChecksum":"ZWZiMDg0M2UxMGZmMjlhYTIxODE5ZDBhNWVhZDk2NTU=","artifactUUID":"3370c5c2-cdbc-45b9-ab76-1f0d45cda59e","artifactVersion":"2","artifactLabel":"heat2","artifactGroupType":"DEPLOYMENT"},{"artifactName":"base_vlb.env","artifactType":"HEAT_ENV","artifactURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/resourceInstances/vloadbalancer0/artifacts/393157c8-74f5-40f5-ac2c-b8386dc5f763","artifactDescription":"Auto-generated HEAT Environment deployment artifact","artifactChecksum":"NzMwOTgwYTgyNWY2NThjOTZmNzZkMDdjODJiOGNkN2Y=","artifactUUID":"393157c8-74f5-40f5-ac2c-b8386dc5f763","artifactVersion":"2","generatedFromUUID":"25d2b375-b4ad-4476-a5eb-ceb851d9e536.heat2","artifactLabel":"heat2env","artifactGroupType":"DEPLOYMENT"},{"artifactName":"vendor-license-model.xml","artifactType":"VENDOR_LICENSE","artifactURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/resourceInstances/vloadbalancer0/artifacts/28a877c8-2005-43d7-802d-769b5f420608","artifactDescription":" Vendor license file","artifactChecksum":"Mjc0NGViYzYyNWZkZTRmYWFkYmUzZjY1MmEwNzRjZDE=","artifactUUID":"28a877c8-2005-43d7-802d-769b5f420608","artifactVersion":"1","artifactLabel":"vendorlicense","artifactGroupType":"DEPLOYMENT"},{"artifactName":"dnsscaling.env","artifactType":"HEAT_ENV","artifactURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/resourceInstances/vloadbalancer0/artifacts/13a375d2-2926-4b2c-a5a9-f380ac744ffb","artifactDescription":"Auto-generated HEAT Environment deployment artifact","artifactChecksum":"MWQzY2UxZDQ5MzhiNzA1OTg2NjcwNDIxODczYzhiNjU=","artifactUUID":"13a375d2-2926-4b2c-a5a9-f380ac744ffb","artifactVersion":"2","generatedFromUUID":"25d2b375-b4ad-4476-a5eb-ceb851d9e536.heat1","artifactLabel":"heat1env","artifactGroupType":"DEPLOYMENT"}]}],"artifacts":[{"artifactName":"AAI-vLoadBalancer-service-1.0.xml","artifactType":"MODEL_INVENTORY_PROFILE","artifactURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/artifacts/775f9232-0db1-49af-a27b-8cd6f0271d29","artifactDescription":"AAI Service Model","artifactChecksum":"Yjk3NzY2NTFkODU4MWU0YjVhOGViODZjNmUyZGIxODc=","artifactUUID":"775f9232-0db1-49af-a27b-8cd6f0271d29","artifactVersion":"1","artifactLabel":"aaiservice150241483","artifactGroupType":"DEPLOYMENT"},{"artifactName":"AAI-Vloadbalancer..dnsscaling..module-1-resource-1.xml","artifactType":"MODEL_INVENTORY_PROFILE","artifactURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/artifacts/4ce04ca0-94cc-4884-a36a-c46cb6b2ae1b","artifactDescription":"AAI Resource Model","artifactChecksum":"ZjhlOGNkNjdmMWM5NWU4MDY0ZWRjYWEzMTEzZGM2ZTI=","artifactUUID":"4ce04ca0-94cc-4884-a36a-c46cb6b2ae1b","artifactVersion":"1","artifactLabel":"aairesource916952801","artifactGroupType":"DEPLOYMENT"},{"artifactName":"AAI-Vloadbalancer..base_vlb..module-0-resource-1.xml","artifactType":"MODEL_INVENTORY_PROFILE","artifactURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/artifacts/9200d35b-c50b-4502-9473-33039a1c2454","artifactDescription":"AAI Resource Model","artifactChecksum":"ZTNmZDFlOTBjNGU3ZWY3NWE2MTQ1ZWQ4YzBiYWU4NzE=","artifactUUID":"9200d35b-c50b-4502-9473-33039a1c2454","artifactVersion":"1","artifactLabel":"aairesource1122970540","artifactGroupType":"DEPLOYMENT"},{"artifactName":"AAI-vLoadBalancer-resource-1.0.xml","artifactType":"MODEL_INVENTORY_PROFILE","artifactURL":"/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/artifacts/faf70850-ea55-4ab6-9648-46a753cdb43f","artifactDescription":"AAI Resource Model","artifactChecksum":"NjBkMDE1YWYwOTY5ZWZkNGUxYmYwYWJkZGNhMTk2MTg=","artifactUUID":"faf70850-ea55-4ab6-9648-46a753cdb43f","artifactVersion":"1","artifactLabel":"aairesource1272484133","artifactGroupType":"DEPLOYMENT"}]} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/metadata/.header b/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/metadata/.header deleted file mode 100644 index fba705b1b..000000000 --- a/src/test/resources/http-cache/sdc-example/sdc/v1/catalog/services/aecb6332-e906-4334-9f04-93ba4926f6c2/metadata/.header +++ /dev/null @@ -1 +0,0 @@ -{"Content-Length": "6161", "Set-Cookie": "JSESSIONID=1au1i8ursafcdtpvhzarkul54;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "e0ca6465-8984-46aa-9e4e-28f3b0415bb1"} \ No newline at end of file diff --git a/src/test/resources/http-cache/sdc_proxy.py b/src/test/resources/http-cache/sdc_proxy.py deleted file mode 100755 index 45dac4133..000000000 --- a/src/test/resources/http-cache/sdc_proxy.py +++ /dev/null @@ -1,127 +0,0 @@ -#!/usr/bin/env python2 -### -# ============LICENSE_START======================================================= -# ONAP CLAMP -# ================================================================================ -# Copyright (C) 2018 AT&T Intellectual Property. All rights -# reserved. -# ================================================================================ -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# ============LICENSE_END============================================ -# =================================================================== -# ECOMP is a trademark and service mark of AT&T Intellectual Property. -### - -import json -import requests -import os -import sys -import SimpleHTTPServer -import SocketServer -import argparse -import tempfile -import signal - -parser = argparse.ArgumentParser(description="SDC Cache & Replay") -parser.add_argument("--username", "-u", type=str, help="Set the username for contacting SDC") -parser.add_argument("--password", "-p", type=str, help="Set the password for contacting SDC") -parser.add_argument("--root", "-r", default=tempfile.mkdtemp, type=str, help="Root folder for the proxy cache") -parser.add_argument("--proxy" , type=str, help="Url of the Act as a proxy. If not set, this script only uses the cache and will return a 404 if files aren't found") -parser.add_argument("--port", "-P", type=int, default="8081", help="Port on which the proxy should listen to") -parser.add_argument("--verbose", "-v", type=bool, help="Print more information in case of error") -options = parser.parse_args() - - -PORT = options.port -SDC_HOST = options.proxy -SDC_AUTH = (options.username, options.password) -SDC_HEADERS = {'X-ECOMP-InstanceID':'CLAMP'} -CACHE_ROOT = options.root - -def signal_handler(signal_sent, frame): - global httpd - if signal_sent == signal.SIGINT: - print('Got Ctrl-C (SIGINT)') - httpd.socket.close() - httpd.shutdown() - httpd.server_close() - -class Proxy(SimpleHTTPServer.SimpleHTTPRequestHandler): - - def print_headers(self): - for header,value in self.headers.items(): - print("%s : %s" % (header, value)) - - def check_credentials(self): - pass - - def _send_content(self, header_file, content_file): - self.send_response(200) - with open(header_file, 'rb') as f: - headers = json.load(f) - for key,value in headers.items(): - if key in ('Transfer-Encoding',): - continue - self.send_header(key, value) - self.end_headers() - with open(content_file,'rb') as f: - fc = f.read() - self.wfile.write(fc) - - def _write_cache(self,cached_file, header_file, content_file, response): - os.makedirs(cached_file, True) - with open(content_file, 'w') as f: - f.write(response.raw.read()) - with open(header_file, 'w') as f: - json.dump(dict(response.raw.headers), f) - # Entry point of the code - def do_GET(self): - - self.print_headers() - self.check_credentials() - - cached_file = '%s/%s' % (CACHE_ROOT, self.path,) - print("Cached file name before escaping : %s" % cached_file) - cached_file = cached_file.replace('<','<').replace('>','>').replace('?','?').replace('*','*').replace('\\','*').replace(':',':').replace('|','|') - print("Cached file name after escaping (used for cache storage) : %s" % cached_file) - cached_file_content = "%s/.file" % (cached_file,) - cached_file_header = "%s/.header" % (cached_file,) - - _file_available = os.path.exists(cached_file_content) - if not _file_available and not SDC_HOST: - self.send_response(404) - return "404 Not found" - - if not _file_available: - print("SDC Request for data currently not present in cache: %s" % (cached_file,)) - url = '%s%s' % (SDC_HOST, self.path) - response = requests.get(url, auth=SDC_AUTH, headers=SDC_HEADERS, stream=True) - - if response.status_code == 200: - self._write_cache(cached_file, cached_file_header, cached_file_content, response) - else: - print('Error when requesting file :') - print('Requested url : %s' % (url,)) - print('Status code : %s' % (response.status_code,)) - print('Content : %s' % (response.content,)) - self.send_response(response.status_code) - return response.content - - self._send_content(cached_file_header, cached_file_content) - -# Main code that start the HTTP server -httpd = SocketServer.ForkingTCPServer(('', PORT), Proxy) -httpd.allow_reuse_address = True -print "Listening on port "+ str(PORT) + " and caching in " + CACHE_ROOT + "(Press Ctrl+C to stop HTTPD Caching script)" -signal.signal(signal.SIGINT, signal_handler) -httpd.serve_forever() \ No newline at end of file diff --git a/src/test/resources/http-cache/start_http_cache.sh b/src/test/resources/http-cache/start_http_cache.sh index 36829dde6..fe9e9911f 100755 --- a/src/test/resources/http-cache/start_http_cache.sh +++ b/src/test/resources/http-cache/start_http_cache.sh @@ -27,11 +27,11 @@ if [ $# -eq 1 ] echo 'input parameter is set (proxy http)'; export http_proxy=$1 export https_proxy=$1 - else + else echo 'input parameter is not set (proxy http)'; fi echo 'Installing requests packages for Python' pip install requests echo 'Executing the Http proxy in Cache mode only' -python sdc_proxy.py --port 8080 --root /usr/src/http-cache-app/data-cache +python third_party_proxy.py --port 8080 --root /usr/src/http-cache-app/data-cache diff --git a/src/test/resources/http-cache/third_party_proxy.py b/src/test/resources/http-cache/third_party_proxy.py new file mode 100755 index 000000000..72ea49587 --- /dev/null +++ b/src/test/resources/http-cache/third_party_proxy.py @@ -0,0 +1,251 @@ +#!/usr/bin/env python2 +### +# ============LICENSE_START======================================================= +# ONAP CLAMP +# ================================================================================ +# Copyright (C) 2018 AT&T Intellectual Property. All rights +# reserved. +# ================================================================================ +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============LICENSE_END============================================ +# =================================================================== +# ECOMP is a trademark and service mark of AT&T Intellectual Property. +### + +import json +import requests +import os +import sys +import SimpleHTTPServer +import SocketServer +import argparse +import tempfile +import signal +import uuid +import shutil + +parser = argparse.ArgumentParser(description="3rd party Cache & Replay") +parser.add_argument("--username", "-u", type=str, help="Set the username for contacting 3rd party - only used for GET") +parser.add_argument("--password", "-p", type=str, help="Set the password for contacting 3rd party - only used for GET") +parser.add_argument("--root", "-r", default=tempfile.mkdtemp, type=str, help="Root folder for the proxy cache") +parser.add_argument("--proxy" , type=str, help="Url of the Act as a proxy. If not set, this script only uses the cache and will return a 404 if files aren't found") +parser.add_argument("--port", "-P", type=int, default="8081", help="Port on which the proxy should listen to") +parser.add_argument("--verbose", "-v", type=bool, help="Print more information in case of error") +options = parser.parse_args() + + +PORT = options.port +HOST = options.proxy +AUTH = (options.username, options.password) +HEADERS = {'X-ECOMP-InstanceID':'CLAMP'} +CACHE_ROOT = options.root + +def signal_handler(signal_sent, frame): + global httpd + if signal_sent == signal.SIGINT: + print('Got Ctrl-C (SIGINT)') + httpd.socket.close() + httpd.shutdown() + httpd.server_close() + +class Proxy(SimpleHTTPServer.SimpleHTTPRequestHandler): + + def print_headers(self): + for header,value in self.headers.items(): + print("header: %s : %s" % (header, value)) + + def check_credentials(self): + pass + + def _send_content(self, header_file, content_file): + self.send_response(200) + with open(header_file, 'rb') as f: + headers = json.load(f) + for key,value in headers.items(): + if key in ('Transfer-Encoding',): + continue + self.send_header(key, value) + self.end_headers() + with open(content_file,'rb') as f: + fc = f.read() + self.wfile.write(fc) + + def _write_cache(self,cached_file, header_file, content_file, response): + os.makedirs(cached_file, True) + with open(content_file, 'w') as f: + f.write(response.raw.read()) + with open(header_file, 'w') as f: + json.dump(dict(response.raw.headers), f) + # Entry point of the code + def do_GET(self): + print("\n\n\nGot a GET request for %s " % self.path) + + self.print_headers() + self.check_credentials() + + cached_file = '%s/%s' % (CACHE_ROOT, self.path,) + print("Cached file name before escaping : %s" % cached_file) + cached_file = cached_file.replace('<','<').replace('>','>').replace('?','?').replace('*','*').replace('\\','*').replace(':',':').replace('|','|') + print("Cached file name after escaping (used for cache storage) : %s" % cached_file) + cached_file_content = "%s/.file" % (cached_file,) + cached_file_header = "%s/.header" % (cached_file,) + + _file_available = os.path.exists(cached_file_content) + + if not _file_available: + print("Request for data currently not present in cache: %s" % (cached_file,)) + + if self.path.startswith("/dcae-service-types?asdcResourceId="): + print "self.path start with /dcae-service-types?asdcResourceId=, generating response json..." + uuidGenerated = str(uuid.uuid4()) + typeId = "typeId-" + uuidGenerated + typeName = "typeName-" + uuidGenerated + print "typeId generated: " + typeName + " and typeName: "+ typeId + jsonGenerated = "{\"totalCount\":1, \"items\":[{\"typeId\":\"" + typeId + "\", \"typeName\":\"" + typeName +"\"}]}" + print "jsonGenerated: " + jsonGenerated + + os.makedirs(cached_file, True) + with open(cached_file_header, 'w') as f: + f.write("{\"Content-Length\": \"144\", \"Content-Type\": \"application/json\"}") + with open(cached_file_content, 'w') as f: + f.write(jsonGenerated) + else: + if not HOST: + self.send_response(404) + return "404 Not found" + + url = '%s%s' % (HOST, self.path) + response = requests.get(url, auth=AUTH, headers=HEADERS, stream=True) + + if response.status_code == 200: + self._write_cache(cached_file, cached_file_header, cached_file_content, response) + else: + print('Error when requesting file :') + print('Requested url : %s' % (url,)) + print('Status code : %s' % (response.status_code,)) + print('Content : %s' % (response.content,)) + self.send_response(response.status_code) + return response.content + else: + print("Request for data currently present in cache: %s" % (cached_file,)) + + self._send_content(cached_file_header, cached_file_content) + + if self.path.startswith("/dcae-service-types?asdcResourceId="): + print "DCAE case deleting folder created " + cached_file + shutil.rmtree(cached_file, ignore_errors=False, onerror=None) + else: + print "NOT in DCAE case deleting folder created " + cached_file + + def do_POST(self): + print("\n\n\nGot a POST for %s" % self.path) + self.check_credentials() + self.data_string = self.rfile.read(int(self.headers['Content-Length'])) + print("data-string:\n %s" % self.data_string) + print("self.headers:\n %s" % self.headers) + + cached_file = '%s/%s' % (CACHE_ROOT, self.path,) + print("Cached file name before escaping : %s" % cached_file) + cached_file = cached_file.replace('<','<').replace('>','>').replace('?','?').replace('*','*').replace('\\','*').replace(':',':').replace('|','|') + print("Cached file name after escaping (used for cache storage) : %s" % cached_file) + cached_file_content = "%s/.file" % (cached_file,) + cached_file_header = "%s/.header" % (cached_file,) + + _file_available = os.path.exists(cached_file_content) + + if not _file_available: + if self.path.startswith("/sdc/v1/catalog/services/"): + print "self.path start with /sdc/v1/catalog/services/, generating response json..." + jsondata = json.loads(self.data_string) + jsonGenerated = "{\"artifactName\":\"" + jsondata['artifactName'] + "\",\"artifactType\":\"" + jsondata['artifactType'] + "\",\"artifactURL\":\"" + self.path + "\",\"artifactDescription\":\"" + jsondata['description'] + "\",\"artifactChecksum\":\"ZjJlMjVmMWE2M2M1OTM2MDZlODlmNTVmZmYzNjViYzM=\",\"artifactUUID\":\"" + str(uuid.uuid4()) + "\",\"artifactVersion\":\"1\"}" + print "jsonGenerated: " + jsonGenerated + + os.makedirs(cached_file, True) + with open(cached_file_header, 'w') as f: + f.write("{\"Content-Length\": \"" + str(len(jsonGenerated)) + "\", \"Content-Type\": \"application/json\"}") + with open(cached_file_content, 'w') as f: + f.write(jsonGenerated) + else: + if not HOST: + self.send_response(404) + return "404 Not found" + + print("Request for data currently not present in cache: %s" % (cached_file,)) + + url = '%s%s' % (HOST, self.path) + print("url: %s" % (url,)) + response = requests.post(url, data=self.data_string, headers=self.headers, stream=True) + + if response.status_code == 200: + self._write_cache(cached_file, cached_file_header, cached_file_content, response) + else: + print('Error when requesting file :') + print('Requested url : %s' % (url,)) + print('Status code : %s' % (response.status_code,)) + print('Content : %s' % (response.content,)) + self.send_response(response.status_code) + return response.content + else: + print("Request for data present in cache: %s" % (cached_file,)) + + self._send_content(cached_file_header, cached_file_content) + + def do_PUT(self): + print("\n\n\nGot a PUT for %s " % self.path) + self.check_credentials() + self.data_string = self.rfile.read(int(self.headers['Content-Length'])) + print("data-string:\n %s" % self.data_string) + print("self.headers:\n %s" % self.headers) + + cached_file = '%s/%s' % (CACHE_ROOT, self.path,) + print("Cached file name before escaping : %s" % cached_file) + cached_file = cached_file.replace('<','<').replace('>','>').replace('?','?').replace('*','*').replace('\\','*').replace(':',':').replace('|','|') + print("Cached file name after escaping (used for cache storage) : %s" % cached_file) + cached_file_content = "%s/.file" % (cached_file,) + cached_file_header = "%s/.header" % (cached_file,) + + _file_available = os.path.exists(cached_file_content) + if not _file_available and not HOST: + print("No file corresponding in cache and no HOST specified: %s" % HOST) + self.send_response(404) + return "404 Not found" + + if not _file_available: + print("Request for data currently not present in cache: %s" % (cached_file,)) + + url = '%s%s' % (HOST, self.path) + print("url: %s" % (url,)) + response = requests.put(url, data=self.data_string, headers=self.headers, stream=True) + + if response.status_code == 200: + self._write_cache(cached_file, cached_file_header, cached_file_content, response) + else: + print('Error when requesting file :') + print('Requested url : %s' % (url,)) + print('Status code : %s' % (response.status_code,)) + print('Content : %s' % (response.content,)) + self.send_response(response.status_code) + return response.content + else: + print("Request for data present in cache: %s" % (cached_file,)) + + self._send_content(cached_file_header, cached_file_content) + + + +# Main code that start the HTTP server +httpd = SocketServer.ForkingTCPServer(('', PORT), Proxy) +httpd.allow_reuse_address = True +print "Listening on port "+ str(PORT) + " and caching in " + CACHE_ROOT + "(Press Ctrl+C to stop HTTPD Caching script)" +signal.signal(signal.SIGINT, signal_handler) +httpd.serve_forever() \ No newline at end of file -- cgit 1.2.3-korg From bfbbd8cfae5b44374372189c95df179bffc2118f Mon Sep 17 00:00:00 2001 From: ehautot Date: Wed, 28 Mar 2018 13:22:35 +0200 Subject: Add simulator cases for (un)deploy/stop + typo Change-Id: I0a3b8f1e812f6199c5a7fbbabd88c6c5ec4217cc Signed-off-by: ehautot Issue-ID: CLAMP-111 --- extra/docker/clamp/docker-compose.yml | 2 +- .../resources/clds/templates/ui-alarm-default.json | 2 +- .../resources/clds/templates/ui-alarm-default.json | 2 +- .../http-cache/example/pdp/api/deletePolicy/.file | 1 + .../example/pdp/api/deletePolicy/.header | 1 + src/test/resources/http-cache/start_http_cache.sh | 2 +- src/test/resources/http-cache/third_party_proxy.py | 110 +++++++++++++++++---- 7 files changed, 99 insertions(+), 21 deletions(-) create mode 100644 src/test/resources/http-cache/example/pdp/api/deletePolicy/.file create mode 100644 src/test/resources/http-cache/example/pdp/api/deletePolicy/.header (limited to 'src/test/resources/http-cache') diff --git a/extra/docker/clamp/docker-compose.yml b/extra/docker/clamp/docker-compose.yml index 76992fd5d..69e471529 100644 --- a/extra/docker/clamp/docker-compose.yml +++ b/extra/docker/clamp/docker-compose.yml @@ -30,4 +30,4 @@ services: - "../../../src/test/resources/http-cache/:/script/:ro" ports: - "8085:8085" - command: /bin/sh -c "pip install requests && pip install simplejson && python -u /script/third_party_proxy.py -v true --port 8085 --root /thirdparty" + command: /bin/sh -c "pip install requests && pip install simplejson && python -u /script/third_party_proxy.py -v true --port 8085 --root /thirdparty --proxyaddress third_party_proxy:8085" diff --git a/src/main/resources/clds/templates/ui-alarm-default.json b/src/main/resources/clds/templates/ui-alarm-default.json index 0d0835981..c851e6cdd 100644 --- a/src/main/resources/clds/templates/ui-alarm-default.json +++ b/src/main/resources/clds/templates/ui-alarm-default.json @@ -267,7 +267,7 @@ "jnxSpaceSNAProcessUp": "vDBE-EMS-Juniper: jnxSpaceSNAProcessUp", "jnxSpaceNodeDown": "vDBE-EMS-Juniper: jnxSpaceNodeDown", "jnxSpaceNodeUp": "vDBE-EMS-Juniper: jnxSpaceNodeUp", - " jnxSpaceNodeRemoval": "vDBE-EMS-Juniper: jnxSpaceNodeRemoval", + "jnxSpaceNodeRemoval": "vDBE-EMS-Juniper: jnxSpaceNodeRemoval", "jnxCmCfgChange": "vDBE-Juniper: jnxCmCfgChange", "jnxCmRescueChange": "vDBE-Juniper: jnxCmRescueChange", "jnxEventTrap": "vDBE-Juniper: jnxEventTrap", diff --git a/src/test/resources/clds/templates/ui-alarm-default.json b/src/test/resources/clds/templates/ui-alarm-default.json index 0d0835981..c851e6cdd 100644 --- a/src/test/resources/clds/templates/ui-alarm-default.json +++ b/src/test/resources/clds/templates/ui-alarm-default.json @@ -267,7 +267,7 @@ "jnxSpaceSNAProcessUp": "vDBE-EMS-Juniper: jnxSpaceSNAProcessUp", "jnxSpaceNodeDown": "vDBE-EMS-Juniper: jnxSpaceNodeDown", "jnxSpaceNodeUp": "vDBE-EMS-Juniper: jnxSpaceNodeUp", - " jnxSpaceNodeRemoval": "vDBE-EMS-Juniper: jnxSpaceNodeRemoval", + "jnxSpaceNodeRemoval": "vDBE-EMS-Juniper: jnxSpaceNodeRemoval", "jnxCmCfgChange": "vDBE-Juniper: jnxCmCfgChange", "jnxCmRescueChange": "vDBE-Juniper: jnxCmRescueChange", "jnxEventTrap": "vDBE-Juniper: jnxEventTrap", diff --git a/src/test/resources/http-cache/example/pdp/api/deletePolicy/.file b/src/test/resources/http-cache/example/pdp/api/deletePolicy/.file new file mode 100644 index 000000000..0637a088a --- /dev/null +++ b/src/test/resources/http-cache/example/pdp/api/deletePolicy/.file @@ -0,0 +1 @@ +[] \ No newline at end of file diff --git a/src/test/resources/http-cache/example/pdp/api/deletePolicy/.header b/src/test/resources/http-cache/example/pdp/api/deletePolicy/.header new file mode 100644 index 000000000..6a280d972 --- /dev/null +++ b/src/test/resources/http-cache/example/pdp/api/deletePolicy/.header @@ -0,0 +1 @@ +{"Transfer-Encoding": "chunked", "Set-Cookie": "JSESSIONID=158qxkdtdobkd1umr3ikkgrmlx;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "e2ddb3c8-994f-47df-b4dc-097d4fb55c08"} \ No newline at end of file diff --git a/src/test/resources/http-cache/start_http_cache.sh b/src/test/resources/http-cache/start_http_cache.sh index fe9e9911f..47c3cc87b 100755 --- a/src/test/resources/http-cache/start_http_cache.sh +++ b/src/test/resources/http-cache/start_http_cache.sh @@ -34,4 +34,4 @@ fi echo 'Installing requests packages for Python' pip install requests echo 'Executing the Http proxy in Cache mode only' -python third_party_proxy.py --port 8080 --root /usr/src/http-cache-app/data-cache +python third_party_proxy.py --port 8080 --root /usr/src/http-cache-app/data-cache --proxyaddress localhost:8085 diff --git a/src/test/resources/http-cache/third_party_proxy.py b/src/test/resources/http-cache/third_party_proxy.py index 72ea49587..29d34cc89 100755 --- a/src/test/resources/http-cache/third_party_proxy.py +++ b/src/test/resources/http-cache/third_party_proxy.py @@ -41,6 +41,7 @@ parser.add_argument("--root", "-r", default=tempfile.mkdtemp, type=str, help parser.add_argument("--proxy" , type=str, help="Url of the Act as a proxy. If not set, this script only uses the cache and will return a 404 if files aren't found") parser.add_argument("--port", "-P", type=int, default="8081", help="Port on which the proxy should listen to") parser.add_argument("--verbose", "-v", type=bool, help="Print more information in case of error") +parser.add_argument("--proxyaddress","-a", type=str, help="Address of this proxy, generally either third_party_proxy:8085 or localhost:8085 depending if started with docker-compose or not") options = parser.parse_args() @@ -49,6 +50,7 @@ HOST = options.proxy AUTH = (options.username, options.password) HEADERS = {'X-ECOMP-InstanceID':'CLAMP'} CACHE_ROOT = options.root +PROXY_ADDRESS=options.proxyaddress def signal_handler(signal_sent, frame): global httpd @@ -116,7 +118,17 @@ class Proxy(SimpleHTTPServer.SimpleHTTPRequestHandler): os.makedirs(cached_file, True) with open(cached_file_header, 'w') as f: - f.write("{\"Content-Length\": \"144\", \"Content-Type\": \"application/json\"}") + f.write("{\"Content-Length\": \"" + str(len(jsonGenerated)) + "\", \"Content-Type\": \"application/json\"}") + with open(cached_file_content, 'w') as f: + f.write(jsonGenerated) + elif self.path.startswith("/dcae-operationstatus"): + print "self.path start with /dcae-operationstatus, generating response json..." + jsonGenerated = "{\"operationType\": \"operationType1\", \"status\": \"succeeded\"}" + print "jsonGenerated: " + jsonGenerated + + os.makedirs(cached_file, True) + with open(cached_file_header, 'w') as f: + f.write("{\"Content-Length\": \"" + str(len(jsonGenerated)) + "\", \"Content-Type\": \"application/json\"}") with open(cached_file_content, 'w') as f: f.write(jsonGenerated) else: @@ -215,27 +227,91 @@ class Proxy(SimpleHTTPServer.SimpleHTTPRequestHandler): cached_file_header = "%s/.header" % (cached_file,) _file_available = os.path.exists(cached_file_content) - if not _file_available and not HOST: - print("No file corresponding in cache and no HOST specified: %s" % HOST) - self.send_response(404) - return "404 Not found" if not _file_available: - print("Request for data currently not present in cache: %s" % (cached_file,)) + if self.path.startswith("/dcae-deployments/"): + print "self.path start with /dcae-deployments/, generating response json..." + #jsondata = json.loads(self.data_string) + jsonGenerated = "{\"links\":{\"status\":\"http:\/\/" + PROXY_ADDRESS + "\/dcae-operationstatus\",\"test2\":\"test2\"}}" + print "jsonGenerated: " + jsonGenerated + + os.makedirs(cached_file, True) + with open(cached_file_header, 'w') as f: + f.write("{\"Content-Length\": \"" + str(len(jsonGenerated)) + "\", \"Content-Type\": \"application/json\"}") + with open(cached_file_content, 'w') as f: + f.write(jsonGenerated) + else: + if not HOST: + self.send_response(404) + return "404 Not found" + + print("Request for data currently not present in cache: %s" % (cached_file,)) + + url = '%s%s' % (HOST, self.path) + print("url: %s" % (url,)) + response = requests.put(url, data=self.data_string, headers=self.headers, stream=True) + + if response.status_code == 200: + self._write_cache(cached_file, cached_file_header, cached_file_content, response) + else: + print('Error when requesting file :') + print('Requested url : %s' % (url,)) + print('Status code : %s' % (response.status_code,)) + print('Content : %s' % (response.content,)) + self.send_response(response.status_code) + return response.content + else: + print("Request for data present in cache: %s" % (cached_file,)) + + self._send_content(cached_file_header, cached_file_content) - url = '%s%s' % (HOST, self.path) - print("url: %s" % (url,)) - response = requests.put(url, data=self.data_string, headers=self.headers, stream=True) - if response.status_code == 200: - self._write_cache(cached_file, cached_file_header, cached_file_content, response) + def do_DELETE(self): + print("\n\n\nGot a DELETE for %s " % self.path) + self.check_credentials() + print("self.headers:\n %s" % self.headers) + + cached_file = '%s/%s' % (CACHE_ROOT, self.path,) + print("Cached file name before escaping : %s" % cached_file) + cached_file = cached_file.replace('<','<').replace('>','>').replace('?','?').replace('*','*').replace('\\','*').replace(':',':').replace('|','|') + print("Cached file name after escaping (used for cache storage) : %s" % cached_file) + cached_file_content = "%s/.file" % (cached_file,) + cached_file_header = "%s/.header" % (cached_file,) + + _file_available = os.path.exists(cached_file_content) + + if not _file_available: + if self.path.startswith("/dcae-deployments/"): + print "self.path start with /dcae-deployments/, generating response json..." + #jsondata = json.loads(self.data_string) + jsonGenerated = "{\"links\":{\"status\":\"http:\/\/" + PROXY_ADDRESS + "\/dcae-operationstatus\",\"test2\":\"test2\"}}" + print "jsonGenerated: " + jsonGenerated + + os.makedirs(cached_file, True) + with open(cached_file_header, 'w') as f: + f.write("{\"Content-Length\": \"" + str(len(jsonGenerated)) + "\", \"Content-Type\": \"application/json\"}") + with open(cached_file_content, 'w') as f: + f.write(jsonGenerated) else: - print('Error when requesting file :') - print('Requested url : %s' % (url,)) - print('Status code : %s' % (response.status_code,)) - print('Content : %s' % (response.content,)) - self.send_response(response.status_code) - return response.content + if not HOST: + self.send_response(404) + return "404 Not found" + + print("Request for data currently not present in cache: %s" % (cached_file,)) + + url = '%s%s' % (HOST, self.path) + print("url: %s" % (url,)) + response = requests.put(url, data=self.data_string, headers=self.headers, stream=True) + + if response.status_code == 200: + self._write_cache(cached_file, cached_file_header, cached_file_content, response) + else: + print('Error when requesting file :') + print('Requested url : %s' % (url,)) + print('Status code : %s' % (response.status_code,)) + print('Content : %s' % (response.content,)) + self.send_response(response.status_code) + return response.content else: print("Request for data present in cache: %s" % (cached_file,)) -- cgit 1.2.3-korg From ad4027aaf03f8558e2c6bbbd4fe548b6b759f3b2 Mon Sep 17 00:00:00 2001 From: "Determe, Sebastien (sd378r)" Date: Tue, 3 Apr 2018 16:38:54 +0200 Subject: Fix the start_http_cache.sh Fix the script call from Pom so that it can be configured Issue-ID: CLAMP-148 Change-Id: Id1120150c4fb993d70ffe2914c73a8fa24051e85 Signed-off-by: Determe, Sebastien (sd378r) --- pom.xml | 2 +- src/test/resources/http-cache/start_http_cache.sh | 15 +++++++++++---- 2 files changed, 12 insertions(+), 5 deletions(-) (limited to 'src/test/resources/http-cache') diff --git a/pom.xml b/pom.xml index 4b19b808f..11628b7af 100644 --- a/pom.xml +++ b/pom.xml @@ -827,7 +827,7 @@ /usr/src/http-cache-app - ./start_http_cache.sh ${http.proxy} + ./start_http_cache.sh ${http.proxy} localhost:${docker.http-cache.port.host} diff --git a/src/test/resources/http-cache/start_http_cache.sh b/src/test/resources/http-cache/start_http_cache.sh index 47c3cc87b..ea3122fe9 100755 --- a/src/test/resources/http-cache/start_http_cache.sh +++ b/src/test/resources/http-cache/start_http_cache.sh @@ -22,16 +22,23 @@ # ECOMP is a trademark and service mark of AT&T Intellectual Property. ### -if [ $# -eq 1 ] +if [ $# -eq 2 ] then - echo 'input parameter is set (proxy http)'; + echo 'Setting http_proxy and proxyaddress script parameters'; export http_proxy=$1 export https_proxy=$1 + python_proxyaddress=$2 + echo 'http_proxy was set to '$http_proxy + echo 'python_proxyaddress was set to '$python_proxyaddress else - echo 'input parameter is not set (proxy http)'; + echo 'Required parameters are not set'; + echo 'Command Format: start_http_cache.sh '; + echo ' http_proxy_adress, like http://my.proxy.com:8080 and will be set to http_proxy/https_proxy environment variables'; + echo ' host_running_test, like localhost:8080 and will be set as --proxyaddress, this is the adress returned by DCAE simulator response'; + exit 1 fi echo 'Installing requests packages for Python' pip install requests echo 'Executing the Http proxy in Cache mode only' -python third_party_proxy.py --port 8080 --root /usr/src/http-cache-app/data-cache --proxyaddress localhost:8085 +python third_party_proxy.py --port 8080 --root /usr/src/http-cache-app/data-cache --proxyaddress $python_proxyaddress -- cgit 1.2.3-korg From 6044573a296569e93323e39353da4295cfc69c09 Mon Sep 17 00:00:00 2001 From: "Determe, Sebastien (sd378r)" Date: Wed, 4 Apr 2018 12:03:37 +0200 Subject: Fix the python startup script Fix the startup script for python simulator Issue-ID: CLAMP-148 Change-Id: Ia1906aa12f2354a45324553609a9e5e713d8a551 Signed-off-by: Determe, Sebastien (sd378r) --- pom.xml | 3 +- src/test/resources/http-cache/start_http_cache.sh | 39 +++++++++++++---------- 2 files changed, 24 insertions(+), 18 deletions(-) (limited to 'src/test/resources/http-cache') diff --git a/pom.xml b/pom.xml index 11628b7af..007b6605e 100644 --- a/pom.xml +++ b/pom.xml @@ -89,7 +89,6 @@ true false - @@ -827,7 +826,7 @@ /usr/src/http-cache-app - ./start_http_cache.sh ${http.proxy} localhost:${docker.http-cache.port.host} + ./start_http_cache.sh ${http.proxy} --python_proxyaddress localhost:${docker.http-cache.port.host} diff --git a/src/test/resources/http-cache/start_http_cache.sh b/src/test/resources/http-cache/start_http_cache.sh index ea3122fe9..0f32c93a6 100755 --- a/src/test/resources/http-cache/start_http_cache.sh +++ b/src/test/resources/http-cache/start_http_cache.sh @@ -22,23 +22,30 @@ # ECOMP is a trademark and service mark of AT&T Intellectual Property. ### -if [ $# -eq 2 ] - then - echo 'Setting http_proxy and proxyaddress script parameters'; - export http_proxy=$1 - export https_proxy=$1 - python_proxyaddress=$2 - echo 'http_proxy was set to '$http_proxy - echo 'python_proxyaddress was set to '$python_proxyaddress - else - echo 'Required parameters are not set'; - echo 'Command Format: start_http_cache.sh '; - echo ' http_proxy_adress, like http://my.proxy.com:8080 and will be set to http_proxy/https_proxy environment variables'; - echo ' host_running_test, like localhost:8080 and will be set as --proxyaddress, this is the adress returned by DCAE simulator response'; - exit 1 -fi +for i in "$@" +do +case $i in + --python_proxyaddress=*) + python_proxyaddress="--proxyaddress ${i#*=}" + echo "- Using python_proxyaddress and set it to: $python_proxyaddress" + shift # past argument=value + ;; + --http_proxyaddress=*) + export http_proxy="${i#*=}" + export https_proxy=$http_proxy + echo "- Defining http_proxy/https_proxy env variables to: $http_proxy" + shift # past argument=value + ;; + -?|--help|-help) + echo "Usage: $(basename $0) [--http_proxyaddress=] [--python_proxyaddress=]" + echo "--http_proxyaddress Set the http_proxy/https_proxy in the script before running python" + echo "--python_proxyaddress , like localhost:8080 and will be set as --proxyaddress, this is the adress returned by DCAE simulator response" + exit 2 + ;; +esac +done echo 'Installing requests packages for Python' pip install requests echo 'Executing the Http proxy in Cache mode only' -python third_party_proxy.py --port 8080 --root /usr/src/http-cache-app/data-cache --proxyaddress $python_proxyaddress +python third_party_proxy.py --port 8080 --root /usr/src/http-cache-app/data-cache $python_proxyaddress -- cgit 1.2.3-korg From 885d7c164e99e069c9a6c2827e479e1d8fee616e Mon Sep 17 00:00:00 2001 From: "Determe, Sebastien (sd378r)" Date: Mon, 9 Apr 2018 17:56:53 +0200 Subject: Fix python script Fix startup of the python script in the pom that was not properly set Issue-ID: CLAMP-147 Change-Id: Ia462be79dd053a9b39761e5bdf3248d0e28e65ee Signed-off-by: Determe, Sebastien (sd378r) --- pom.xml | 4 ++-- src/test/resources/http-cache/start_http_cache.sh | 7 ++++--- 2 files changed, 6 insertions(+), 5 deletions(-) (limited to 'src/test/resources/http-cache') diff --git a/pom.xml b/pom.xml index 70563efd7..d340341ce 100644 --- a/pom.xml +++ b/pom.xml @@ -88,7 +88,7 @@ true true false - + @@ -830,7 +830,7 @@ /usr/src/http-cache-app - ./start_http_cache.sh ${http.proxy} --python_proxyaddress localhost:${docker.http-cache.port.host} + ./start_http_cache.sh ${python.http.proxy.param} --python_proxyaddress=localhost:${docker.http-cache.port.host} diff --git a/src/test/resources/http-cache/start_http_cache.sh b/src/test/resources/http-cache/start_http_cache.sh index 0f32c93a6..fb4975e54 100755 --- a/src/test/resources/http-cache/start_http_cache.sh +++ b/src/test/resources/http-cache/start_http_cache.sh @@ -22,17 +22,18 @@ # ECOMP is a trademark and service mark of AT&T Intellectual Property. ### +echo "Starting HTTP CACHE python script" for i in "$@" do case $i in - --python_proxyaddress=*) + --python_proxyaddress=*) python_proxyaddress="--proxyaddress ${i#*=}" echo "- Using python_proxyaddress and set it to: $python_proxyaddress" shift # past argument=value ;; - --http_proxyaddress=*) + --http_proxyaddress=*) export http_proxy="${i#*=}" - export https_proxy=$http_proxy + export https_proxy="${i#*=}" echo "- Defining http_proxy/https_proxy env variables to: $http_proxy" shift # past argument=value ;; -- cgit 1.2.3-korg From a31d07e07eefdbd34ca138696b9b448231c1e0df Mon Sep 17 00:00:00 2001 From: "Determe, Sebastien (sd378r)" Date: Tue, 24 Apr 2018 18:14:08 +0200 Subject: Remove ECOMP in headers Remove ECOMP in headers of the source files Issue-ID: CLAMP-156 Change-Id: If10e2dff86852840ad289b03c6a30dd83f674d76 Signed-off-by: Determe, Sebastien (sd378r) --- src/main/docker/startService.sh | 2 +- src/main/java/org/onap/clamp/clds/config/SystemPropertiesLoader.java | 2 +- src/main/java/org/onap/clamp/clds/model/properties/Tca.java | 2 +- src/main/resources/META-INF/resources/designer/css/stylesheet.css | 2 +- src/main/resources/META-INF/resources/designer/css/table_custom.css | 2 +- src/main/resources/META-INF/resources/designer/css/table_theme_1.css | 2 +- src/main/resources/system.properties | 2 +- src/main/script/TagVersion.groovy | 2 +- src/test/resources/http-cache/start_http_cache.sh | 2 +- 9 files changed, 9 insertions(+), 9 deletions(-) (limited to 'src/test/resources/http-cache') diff --git a/src/main/docker/startService.sh b/src/main/docker/startService.sh index 82c93417e..edc0f020f 100644 --- a/src/main/docker/startService.sh +++ b/src/main/docker/startService.sh @@ -20,7 +20,7 @@ # limitations under the License. # ============LICENSE_END============================================ # =================================================================== -# ECOMP is a trademark and service mark of AT&T Intellectual Property. +# ### java -Djava.security.egd=file:/dev/./urandom -Xms1024m -Xmx1024m -jar ./app.jar diff --git a/src/main/java/org/onap/clamp/clds/config/SystemPropertiesLoader.java b/src/main/java/org/onap/clamp/clds/config/SystemPropertiesLoader.java index 83325f3d9..bb2eb3a2f 100644 --- a/src/main/java/org/onap/clamp/clds/config/SystemPropertiesLoader.java +++ b/src/main/java/org/onap/clamp/clds/config/SystemPropertiesLoader.java @@ -18,7 +18,7 @@ * limitations under the License. * ============LICENSE_END============================================ * =================================================================== - * ECOMP is a trademark and service mark of AT&T Intellectual Property. + * */ package org.onap.clamp.clds.config; diff --git a/src/main/java/org/onap/clamp/clds/model/properties/Tca.java b/src/main/java/org/onap/clamp/clds/model/properties/Tca.java index 90a8a1ab4..7297ccbd4 100644 --- a/src/main/java/org/onap/clamp/clds/model/properties/Tca.java +++ b/src/main/java/org/onap/clamp/clds/model/properties/Tca.java @@ -18,7 +18,7 @@ * limitations under the License. * ============LICENSE_END============================================ * =================================================================== - * ECOMP is a trademark and service mark of AT&T Intellectual Property. + * */ package org.onap.clamp.clds.model.properties; diff --git a/src/main/resources/META-INF/resources/designer/css/stylesheet.css b/src/main/resources/META-INF/resources/designer/css/stylesheet.css index c7f307d3e..d33214651 100644 --- a/src/main/resources/META-INF/resources/designer/css/stylesheet.css +++ b/src/main/resources/META-INF/resources/designer/css/stylesheet.css @@ -18,7 +18,7 @@ * limitations under the License. * ============LICENSE_END============================================ * =================================================================== - * ECOMP is a trademark and service mark of AT&T Intellectual Property. + * */ a, a:visited { diff --git a/src/main/resources/META-INF/resources/designer/css/table_custom.css b/src/main/resources/META-INF/resources/designer/css/table_custom.css index b6729e007..e5087ca67 100644 --- a/src/main/resources/META-INF/resources/designer/css/table_custom.css +++ b/src/main/resources/META-INF/resources/designer/css/table_custom.css @@ -18,7 +18,7 @@ * limitations under the License. * ============LICENSE_END============================================ * =================================================================== - * ECOMP is a trademark and service mark of AT&T Intellectual Property. + * */ table a:link { diff --git a/src/main/resources/META-INF/resources/designer/css/table_theme_1.css b/src/main/resources/META-INF/resources/designer/css/table_theme_1.css index 878e859fd..6c52598ef 100644 --- a/src/main/resources/META-INF/resources/designer/css/table_theme_1.css +++ b/src/main/resources/META-INF/resources/designer/css/table_theme_1.css @@ -18,7 +18,7 @@ * limitations under the License. * ============LICENSE_END============================================ * =================================================================== - * ECOMP is a trademark and service mark of AT&T Intellectual Property. + * */ .datagrid table { border-collapse: collapse; text-align: left; width: 100%; } .datagrid {font: normal 12px/150% Arial, Helvetica, sans-serif; background: #fff; overflow: hidden; border: 1px solid #006699; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; }.datagrid table td, .datagrid table th { padding: 3px 10px; }.datagrid table thead th {background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #006699), color-stop(1, #00557F) );background:-moz-linear-gradient( center top, #006699 5%, #00557F 100% );filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#006699', endColorstr='#00557F');background-color:#006699; color:#FFFFFF; font-size: 15px; font-weight: bold; border-left: 1px solid #0070A8; } .datagrid table thead th:first-child { border: none; }.datagrid table tbody td { color: #00557F; border-left: 1px solid #E1EEF4;font-size: 12px;font-weight: normal; }.datagrid table tbody .alt td { background: #E1EEf4; color: #00557F; }.datagrid table tbody td:first-child { border-left: none; }.datagrid table tbody tr:last-child td { border-bottom: none; }.datagrid table tfoot td div { border-top: 1px solid #006699;background: #E1EEf4;} .datagrid table tfoot td { padding: 0; font-size: 12px } .datagrid table tfoot td div{ padding: 2px; }.datagrid table tfoot td ul { margin: 0; padding:0; list-style: none; text-align: right; }.datagrid table tfoot li { display: inline; }.datagrid table tfoot li a { text-decoration: none; display: inline-block; padding: 2px 8px; margin: 1px;color: #FFFFFF;border: 1px solid #006699;-webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #006699), color-stop(1, #00557F) );background:-moz-linear-gradient( center top, #006699 5%, #00557F 100% );filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#006699', endColorstr='#00557F');background-color:#006699; }.datagrid table tfoot ul.active, .datagrid table tfoot ul a:hover { text-decoration: none;border-color: #00557F; color: #FFFFFF; background: none; background-color:#006699;}div.dhtmlx_window_active, div.dhx_modal_cover_dv { position: fixed !important; } diff --git a/src/main/resources/system.properties b/src/main/resources/system.properties index 08b9b19c8..5f6e217d7 100644 --- a/src/main/resources/system.properties +++ b/src/main/resources/system.properties @@ -18,7 +18,7 @@ # limitations under the License. # ============LICENSE_END============================================ # =================================================================== -# ECOMP is a trademark and service mark of AT&T Intellectual Property. +# ### # If the environment property system_properties_path contains a path to a file , System properties created using the file. If the environment variable not present, system.properties in the class path is used for system property creation diff --git a/src/main/script/TagVersion.groovy b/src/main/script/TagVersion.groovy index c365da85e..ccfcca3c4 100644 --- a/src/main/script/TagVersion.groovy +++ b/src/main/script/TagVersion.groovy @@ -18,7 +18,7 @@ * limitations under the License. * ============LICENSE_END============================================ * =================================================================== - * ECOMP is a trademark and service mark of AT&T Intellectual Property. + * */ package org.onap.clamp.clds.maven.scripts diff --git a/src/test/resources/http-cache/start_http_cache.sh b/src/test/resources/http-cache/start_http_cache.sh index fb4975e54..a8ff96ac1 100755 --- a/src/test/resources/http-cache/start_http_cache.sh +++ b/src/test/resources/http-cache/start_http_cache.sh @@ -19,7 +19,7 @@ # limitations under the License. # ============LICENSE_END============================================ # =================================================================== -# ECOMP is a trademark and service mark of AT&T Intellectual Property. +# ### echo "Starting HTTP CACHE python script" -- cgit 1.2.3-korg From 488b7ebe8451d5ae6890b1f56ebce908402d5fee Mon Sep 17 00:00:00 2001 From: "Determe, Sebastien (sd378r)" Date: Tue, 24 Apr 2018 18:14:24 +0200 Subject: Remove ECOMP in headers Remove ECOMP in headers of the source files Issue-ID: CLAMP-156 Change-Id: Ifdc5a4d9d8fb25d1b66d8a5699fde3cba17af7a4 Signed-off-by: Determe, Sebastien (sd378r) --- src/main/java/org/onap/clamp/clds/model/properties/TcaThreshold.java | 2 +- .../META-INF/resources/designer/partials/portfolios/Template_model.html | 2 +- .../resources/designer/partials/portfolios/text_area_modal.html | 2 +- src/main/resources/META-INF/resources/designer/scripts/textAreaCtrl.js | 2 +- src/test/java/org/onap/clamp/clds/it/TcaRequestFormatterItCase.java | 2 +- src/test/java/org/onap/clamp/clds/util/TestObject.java | 2 +- src/test/java/org/onap/clamp/clds/util/TestObject2.java | 2 +- src/test/resources/http-cache/third_party_proxy.py | 2 +- 8 files changed, 8 insertions(+), 8 deletions(-) (limited to 'src/test/resources/http-cache') diff --git a/src/main/java/org/onap/clamp/clds/model/properties/TcaThreshold.java b/src/main/java/org/onap/clamp/clds/model/properties/TcaThreshold.java index 6cd13f2ee..05b8ae355 100644 --- a/src/main/java/org/onap/clamp/clds/model/properties/TcaThreshold.java +++ b/src/main/java/org/onap/clamp/clds/model/properties/TcaThreshold.java @@ -18,7 +18,7 @@ * limitations under the License. * ============LICENSE_END============================================ * =================================================================== - * ECOMP is a trademark and service mark of AT&T Intellectual Property. + * */ package org.onap.clamp.clds.model.properties; diff --git a/src/main/resources/META-INF/resources/designer/partials/portfolios/Template_model.html b/src/main/resources/META-INF/resources/designer/partials/portfolios/Template_model.html index 9c97d59ee..53204f41e 100644 --- a/src/main/resources/META-INF/resources/designer/partials/portfolios/Template_model.html +++ b/src/main/resources/META-INF/resources/designer/partials/portfolios/Template_model.html @@ -18,7 +18,7 @@ limitations under the License. ============LICENSE_END============================================ =================================================================== - ECOMP is a trademark and service mark of AT&T Intellectual Property. + -->