Get policy in CsarInstaller

Get the policies on the PEF engine when installing the CSAR (if needed)

Issue-ID: CLAMP-518
Change-Id: I2cca157821c22ef63dc748984140287667cc4663
Signed-off-by: sebdet <sebastien.determe@intl.att.com>
diff --git a/src/test/resources/application.properties b/src/test/resources/application.properties
index bbade74..17c42f5 100644
--- a/src/test/resources/application.properties
+++ b/src/test/resources/application.properties
@@ -116,7 +116,7 @@
 spring.jpa.properties.hibernate.use-new-id-generator-mappings=true
 
 # Whether to enable logging of SQL statements.
-spring.jpa.show-sql=true
+#spring.jpa.show-sql=true
 
 #Async Executor default Parameters
 async.core.pool.size=10
@@ -148,33 +148,6 @@
 clamp.config.policy.pap.userName=healthcheck
 clamp.config.policy.pap.password=zb!XztG34
 
-clamp.config.policy.pdpUrl1=http://localhost:${docker.http-cache.port.host}/pdp/ , testpdp, alpha123
-clamp.config.policy.pdpUrl2=http://localhost:${docker.http-cache.port.host}/pdp/ , testpdp, alpha123
-clamp.config.policy.papUrl=http://localhost:${docker.http-cache.port.host}/pap/ , testpap, alpha123
-clamp.config.policy.notificationType=websocket
-clamp.config.policy.notificationUebServers=localhost
-clamp.config.policy.notificationTopic=
-clamp.config.policy.clientId=python
-# base64 encoding
-clamp.config.policy.clientKey=dGVzdA==
-#DEVL for development
-#TEST for Test environments
-#PROD for prod environments
-clamp.config.policy.policyEnvironment=DEVL
-# General Policy request properties
-#
-clamp.config.policy.onap.name=DCAE
-clamp.config.policy.pdp.group=default
-clamp.config.policy.ms.type=MicroService
-clamp.config.policy.ms.policyNamePrefix=Config_MS_
-clamp.config.policy.op.policyNamePrefix=Config_BRMS_Param_
-clamp.config.policy.base.policyNamePrefix=Config_
-clamp.config.policy.op.type=BRMS_Param
-
-clamp.config.import.tosca.model=false
-clamp.config.tosca.policyTypes=tca
-clamp.config.tosca.filePath=/tmp/tosca-models
-
 # TCA MicroService Policy request build properties
 #
 clamp.config.tca.policyid.prefix=DCAE.Config_
diff --git a/src/test/resources/clds/OperationalPolicyRepresentationBuilderTest.java b/src/test/resources/clds/OperationalPolicyRepresentationBuilderTest.java
deleted file mode 100644
index 904525b..0000000
--- a/src/test/resources/clds/OperationalPolicyRepresentationBuilderTest.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 2019 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============================================
- * ===================================================================
- *
- */
-
-package org.onap.clamp.policy.operational;
-
-import static org.assertj.core.api.Assertions.assertThat;
-
-import com.google.gson.GsonBuilder;
-import com.google.gson.JsonObject;
-
-import java.io.IOException;
-
-import org.junit.Test;
-import org.onap.clamp.clds.util.ResourceFileUtil;
-import org.skyscreamer.jsonassert.JSONAssert;
-
-public class OperationalPolicyRepresentationBuilderTest {
-
-    @Test
-    public void testOperationalPolicyPayloadConstruction() throws IOException {
-        JsonObject jsonModel = new GsonBuilder().create()
-                .fromJson(ResourceFileUtil.getResourceAsString("tosca/model-properties.json"), JsonObject.class);
-
-        JsonObject jsonSchema = OperationalPolicyRepresentationBuilder.generateOperationalPolicySchema(jsonModel);
-
-        assertThat(jsonSchema).isNotNull();
-
-        JSONAssert.assertEquals(ResourceFileUtil.getResourceAsString("tosca/operational-policy-json-schema.json"),
-                new GsonBuilder().create().toJson(jsonSchema), false);
-    }
-
-}
diff --git a/src/test/resources/clds/blueprint-parser-mapping.json b/src/test/resources/clds/blueprint-parser-mapping.json
deleted file mode 100644
index a22e9fc..0000000
--- a/src/test/resources/clds/blueprint-parser-mapping.json
+++ /dev/null
@@ -1,18 +0,0 @@
-[
-	{
-		"blueprintKey": "tca_",
-		"dcaeDeployable":"true",
-		"files": {
-			"bpmnXmlFilePath": "classpath:/clds/templates/bpmn/tca-template.xml",
-			"svgXmlFilePath": "classpath:/clds/templates/bpmn/tca-img.xml"
-		}
-	},
-	{
-		"blueprintKey": "holmes_",
-		"dcaeDeployable":"false",
-		"files": {
-			"bpmnXmlFilePath": "classpath:/clds/templates/bpmn/holmes-template.xml",
-			"svgXmlFilePath": "classpath:/clds/templates/bpmn/holmes-img.xml"
-		}
-	}
-]
diff --git a/src/test/resources/clds/blueprint-with-microservice-chain.yaml b/src/test/resources/clds/blueprint-with-microservice-chain.yaml
index fa2d720..0e9e4bc 100644
--- a/src/test/resources/clds/blueprint-with-microservice-chain.yaml
+++ b/src/test/resources/clds/blueprint-with-microservice-chain.yaml
@@ -1,98 +1,202 @@
 tosca_definitions_version: cloudify_dsl_1_3
 
+description: >
+  This blueprint deploys/manages the TCA module as a Docker container
+
 imports:
   - http://www.getcloudify.org/spec/cloudify/3.4/types.yaml
-  - https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.plugins/R4/k8splugin/1.4.4/k8splugin_types.yaml
+  - https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.plugins/R4/k8splugin/1.4.12/k8splugin_types.yaml
   - https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.plugins/R4/dcaepolicyplugin/2.3.0/dcaepolicyplugin_types.yaml
 inputs:
-  first_app_docker_image:
+  aaiEnrichmentHost:
     type: string
-    default: "image1"
-  second_app_docker_image:
+    default: "aai.onap.svc.cluster.local"
+  aaiEnrichmentPort:
     type: string
-    default: "image2"
-  third_app_docker_image:
+    default: "8443"
+  enableAAIEnrichment:
     type: string
-    default: "image3"
-  dmaap_ip:
+    default: true
+  dmaap_host:
     type: string
-    default: "message-router:3904"
-  dmaap_topic:
+    default: message-router.onap.svc.cluster.local
+  dmaap_port:
     type: string
-    default: "/events/unauthenticated.DCAE_CL_OUTPUT"
+    default: "3904"
+  enableRedisCaching:
+    type: string
+    default: false
+  redisHosts:
+    type: string
+    default: dcae-redis.onap.svc.cluster.local:6379
+  tag_version:
+    type: string
+    default: "nexus3.onap.org:10001/onap/org.onap.dcaegen2.deployments.tca-cdap-container:1.1.0-STAGING-latest"
+  consul_host:
+    type: string
+    default: consul-server.onap.svc.cluster.local
+  consul_port:
+    type: string
+    default: "8500"
+  cbs_host:
+    type: string
+    default: "config-binding-service.dcae.svc.cluster.local"
+  cbs_port:
+    type: string
+    default: "10000"
   policy_id:
     type: string
-    default: "policy_id"
-node_templates:
-  second_app:
-    type: dcae.nodes.ContainerizedServiceComponentUsingDmaap
-    properties:
-      service_component_type: dcaegen2-analytics-tca
-      service_component_name_override: second_app
-      image: { get_input: second_app_docker_image }
-      policy_id:
-      policy_model_id: "type2"
-    interfaces:
-      cloudify.interfaces.lifecycle:
-        start:
-          inputs:
-            envs:
-              grpc_server.host: "first_app.onap"
-              dmaap_ip: {get_input: dmaap_ip}
-              dmapp_topic: {get_input: dmaap_topic}
-              policy_id: {get_input: policy_id}
-            ports:
-              - 8080:8080
-    relationships:
-      - type: cloudify.relationships.connected_to
-        target: first_app
-      - type: clamp_node.relationships.gets_input_from
-        target: first_app
-  first_app:
-    type:  dcae.nodes.ContainerizedPlatformComponent
-    properties:
-      name: first_app
-      dns_name: "first_app"
-      image: { get_input: first_app_docker_image }
-      container_port: 6565
-      policy_id:
-      policy_model_id: "type1"
-    interfaces:
-      cloudify.interfaces.lifecycle:
-        start:
-          inputs:
-            envs:
-              dmaap_ip: {get_input: dmaap_ip}
-              dmapp_topic: {get_input: dmaap_topic}
-              policy_id: {get_input: policy_id}
-            ports:
-              - 8081:8081
-    relationships:
-      - type: cloudify.relationships.connected_to
-        target: third_app
-      - type: clamp_node.relationships.gets_input_from
-        target: third_app
+    default: "none"
+  external_port:
+    type: string
+    description: Kubernetes node port on which CDAPgui is exposed
+    default: "32012"
+  policy_model_id:
+    type: string
+    default: "onap.policies.monitoring.cdap.tca.hi.lo.app"
 
-  third_app:
-    type:  dcae.nodes.ContainerizedPlatformComponent
+node_templates:
+  first_app:
+    type: dcae.nodes.ContainerizedServiceComponent
     properties:
-      name: third_app
-      dns_name: "third_app"
-      image: { get_input: third_app_docker_image }
-      container_port: 443
-      policy_id:
-      policy_model_id: "type3"
+        service_component_type: 'dcaegen2-analytics-tca'
+        application_config: {}
+        docker_config: {}
+        image:
+          get_input: tag_version
+        log_info:
+          log_directory: "/opt/app/TCAnalytics/logs"
+    relationships:
+      - target: tca_policy_1
+        type: cloudify.relationships.depends_on
+  second_app:
+    type: dcae.nodes.ContainerizedServiceComponent
+    relationships:
+      - target: tca_policy_2
+        type: cloudify.relationships.depends_on
+      - type: clamp_node.relationships.gets_input_from
+        target: first_app
+    properties:
+        service_component_type: 'dcaegen2-analytics-tca'
+        application_config: {}
+        docker_config: {}
+        image:
+          get_input: tag_version
+        log_info:
+          log_directory: "/opt/app/TCAnalytics/logs"
+        application_config:
+            app_config:
+                appDescription: DCAE Analytics Threshold Crossing Alert Application
+                appName: dcae-tca
+                tcaAlertsAbatementTableName: TCAAlertsAbatementTable
+                tcaAlertsAbatementTableTTLSeconds: '1728000'
+                tcaSubscriberOutputStreamName: TCASubscriberOutputStream
+                tcaVESAlertsTableName: TCAVESAlertsTable
+                tcaVESAlertsTableTTLSeconds: '1728000'
+                tcaVESMessageStatusTableName: TCAVESMessageStatusTable
+                tcaVESMessageStatusTableTTLSeconds: '86400'
+                thresholdCalculatorFlowletInstances: '2'
+            app_preferences:
+                aaiEnrichmentHost:
+                    get_input: aaiEnrichmentHost
+                aaiEnrichmentIgnoreSSLCertificateErrors: 'true'
+                aaiEnrichmentPortNumber: '8443'
+                aaiEnrichmentProtocol: https
+                aaiEnrichmentUserName: dcae@dcae.onap.org
+                aaiEnrichmentUserPassword: demo123456!
+                aaiVMEnrichmentAPIPath: /aai/v11/search/nodes-query
+                aaiVNFEnrichmentAPIPath: /aai/v11/network/generic-vnfs/generic-vnf
+                enableAAIEnrichment:
+                    get_input: enableAAIEnrichment
+                enableRedisCaching:
+                    get_input: enableRedisCaching
+                redisHosts:
+                    get_input: redisHosts
+                enableAlertCEFFormat: 'false'
+                publisherContentType: application/json
+                publisherHostName:
+                    get_input: dmaap_host
+                publisherHostPort:
+                    get_input: dmaap_port
+                publisherMaxBatchSize: '1'
+                publisherMaxRecoveryQueueSize: '100000'
+                publisherPollingInterval: '20000'
+                publisherProtocol: http
+                publisherTopicName: unauthenticated.DCAE_CL_OUTPUT
+                subscriberConsumerGroup: OpenDCAE-c12
+                subscriberConsumerId: c12
+                subscriberContentType: application/json
+                subscriberHostName:
+                    get_input: dmaap_host
+                subscriberHostPort:
+                    get_input: dmaap_port
+                subscriberMessageLimit: '-1'
+                subscriberPollingInterval: '30000'
+                subscriberProtocol: http
+                subscriberTimeoutMS: '-1'
+                subscriberTopicName: unauthenticated.VES_MEASUREMENT_OUTPUT
+                tca_policy: ''
+        service_component_type: dcaegen2-analytics_tca
     interfaces:
       cloudify.interfaces.lifecycle:
         start:
           inputs:
             envs:
-              dmaap_ip: {get_input: dmaap_ip}
-              dmapp_topic: {get_input: dmaap_topic}
-              policy_id: {get_input: policy_id}
+                DMAAPHOST:
+                    { get_input: dmaap_host }
+                DMAAPPORT:
+                    { get_input: dmaap_port }
+                DMAAPPUBTOPIC: "unauthenticated.DCAE_CL_OUTPUT"
+                DMAAPSUBTOPIC: "unauthenticated.VES_MEASUREMENT_OUTPUT"
+                AAIHOST:
+                    { get_input: aaiEnrichmentHost }
+                AAIPORT:
+                    { get_input: aaiEnrichmentPort }
+                CONSUL_HOST:
+                    { get_input: consul_host }
+                CONSUL_PORT:
+                    { get_input: consul_port }
+                CBS_HOST:
+                    { get_input: cbs_host }
+                CBS_PORT:
+                    { get_input: cbs_port }
+                CONFIG_BINDING_SERVICE: "config_binding_service"
             ports:
-              - 8082:8082
-  tca_policy:
+              - concat: ["11011:", { get_input: external_port }]
+  third_app:
+    type: dcae.nodes.ContainerizedServiceComponent
+    properties:
+        service_component_type: 'dcaegen2-analytics-tca'
+        application_config: {}
+        docker_config: {}
+        image:
+          get_input: tag_version
+        log_info:
+          log_directory: "/opt/app/TCAnalytics/logs"
+    relationships:
+      - target: tca_policy_3
+        type: cloudify.relationships.depends_on
+      - type: clamp_node.relationships.gets_input_from
+        target: second_app
+  tca_policy_1:
     type: dcae.nodes.policy
     properties:
-      policy_id: { get_input: policy_id }
\ No newline at end of file
+      policy_id:
+           get_input: policy_id
+      policy_model_id: 
+           get_input: policy_model_id
+  tca_policy_2:
+    type: dcae.nodes.policy
+    properties:
+      policy_id:
+           get_input: policy_id
+      policy_model_id: 
+           get_input: policy_model_id
+           
+  tca_policy_3:
+    type: dcae.nodes.policy
+    properties:
+      policy_id:
+           get_input: policy_id
+      policy_model_id: 
+           get_input: policy_model_id
diff --git a/src/test/resources/clds/camel/rest/clamp-api-v2.xml b/src/test/resources/clds/camel/rest/clamp-api-v2.xml
index cf99625..a0a3eb1 100644
--- a/src/test/resources/clds/camel/rest/clamp-api-v2.xml
+++ b/src/test/resources/clds/camel/rest/clamp-api-v2.xml
@@ -238,6 +238,48 @@
 			</route>
 		</put>
 		<put
+			uri="/v2/loop/refreshOpPolicyJsonSchema/{loopName}"
+			outType="org.onap.clamp.loop.Loop"
+			produces="application/json">
+			<route>
+				<removeHeaders
+					pattern="*"
+					excludePattern="loopName" />
+				<doTry>
+					<log
+						loggingLevel="INFO"
+						message="Refresh Operational Policy UI for loop: ${header.loopName}" />
+					<to
+						uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=startLog(*, 'REFRESH OP Policy UI request')" />
+					<to
+						uri="bean:org.onap.clamp.authorization.AuthorizationController?method=authorize(*,'cl','','update')" />
+					<to uri="direct:load-loop" />
+					<to
+						uri="bean:org.onap.clamp.loop.LoopController?method=refreshOpPolicyJsonRepresentation(${header.loopName})" />
+					<log
+						loggingLevel="INFO"
+						message="REFRESH request successfully executed for loop: ${header.loopName}" />
+					<to
+						uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('REFRESH request successfully executed','INFO',${exchangeProperty[loopObject]})" />
+					<to
+						uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=endLog()" />
+					<doCatch>
+						<exception>java.lang.Exception</exception>
+						<handled>
+							<constant>false</constant>
+						</handled>
+						<to
+							uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=errorLog()" />
+						<log
+							loggingLevel="ERROR"
+							message="REFRESH request failed for loop: ${header.loopName}" />
+						<to
+							uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('REFRESH request failed, Error reported: ${exception} - Body: ${exception.responseBody}','ERROR',${exchangeProperty[loopObject]})" />
+					</doCatch>
+				</doTry>
+			</route>
+		</put>
+		<put
 			uri="/v2/loop/undeploy/{loopName}"
 			outType="org.onap.clamp.loop.Loop"
 			produces="application/json">
diff --git a/src/test/resources/clds/camel/routes/policy-flows.xml b/src/test/resources/clds/camel/routes/policy-flows.xml
index 75ac66c..ce24b27 100644
--- a/src/test/resources/clds/camel/routes/policy-flows.xml
+++ b/src/test/resources/clds/camel/routes/policy-flows.xml
@@ -1,520 +1,587 @@
 
 <routes xmlns="http://camel.apache.org/schema/spring">
-	<route id="verify-one-policy">
-		<from uri="direct:verify-one-policy" />
-		<setProperty propertyName="raiseHttpExceptionFlag">
-			<simple resultType="java.lang.Boolean">false</simple>
-		</setProperty>
-		<to uri="direct:get-policy" />
-		<when>
-			<simple> ${header.CamelHttpResponseCode} != 200 </simple>
-			<setProperty propertyName="policyFound">
-				<simple resultType="java.lang.Boolean">false</simple>
-			</setProperty>
-			<log loggingLevel="WARN"
-				message="At least one policy has not been found on policy engine: ${exchangeProperty[policyName]}" />
-		</when>
-		<setProperty propertyName="raiseHttpExceptionFlag">
-			<simple resultType="java.lang.Boolean">false</simple>
-		</setProperty>
-		<to uri="direct:get-deployment-policy" />
-		<when>
-			<simple> ${header.CamelHttpResponseCode} != 200 </simple>
-			<setProperty propertyName="policyDeployed">
-				<simple resultType="java.lang.Boolean">false</simple>
-			</setProperty>
-			<log loggingLevel="WARN"
-				message="At least one policy has not been deployed on policy engine: ${exchangeProperty[policyName]}" />
-		</when>
-		<setProperty propertyName="newPolicyState">
-			<simple>${exchangeProperty[policyComponent].computeState(*)}</simple>
-		</setProperty>
-	</route>
+		<route id="verify-one-policy">
+				<from uri="direct:verify-one-policy"/>
+				<setProperty propertyName="raiseHttpExceptionFlag">
+						<simple resultType="java.lang.Boolean">false</simple>
+				</setProperty>
+				<to uri="direct:get-policy"/>
+				<when>
+						<simple> ${header.CamelHttpResponseCode} != 200 </simple>
+						<setProperty propertyName="policyFound">
+								<simple resultType="java.lang.Boolean">false</simple>
+						</setProperty>
+						<log loggingLevel="WARN"
+								message="At least one policy has not been found on policy engine: ${exchangeProperty[policyName]}"/>
+				</when>
+				<setProperty propertyName="raiseHttpExceptionFlag">
+						<simple resultType="java.lang.Boolean">false</simple>
+				</setProperty>
+				<to uri="direct:get-deployment-policy"/>
+				<when>
+						<simple> ${header.CamelHttpResponseCode} != 200 </simple>
+						<setProperty propertyName="policyDeployed">
+								<simple resultType="java.lang.Boolean">false</simple>
+						</setProperty>
+						<log loggingLevel="WARN"
+								message="At least one policy has not been deployed on policy engine: ${exchangeProperty[policyName]}"/>
+				</when>
+				<setProperty propertyName="newPolicyState">
+						<simple>${exchangeProperty[policyComponent].computeState(*)}</simple>
+				</setProperty>
+		</route>
 
-	<route id="get-policy">
-		<from uri="direct:get-policy" />
-		<doTry>
-			<log loggingLevel="INFO"
-				message="Getting Policy: ${exchangeProperty[policyName]}" />
-			<to
-				uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Get Policy')" />
-			<setHeader headerName="CamelHttpMethod">
-				<constant>GET</constant>
-			</setHeader>
-			<setHeader headerName="X-ONAP-RequestID">
-				<simple>${exchangeProperty[X-ONAP-RequestID]}
-				</simple>
-			</setHeader>
-			<setHeader headerName="X-ONAP-InvocationID">
-				<simple>${exchangeProperty[X-ONAP-InvocationID]}
-				</simple>
-			</setHeader>
-			<setHeader headerName="X-ONAP-PartnerName">
-				<simple>${exchangeProperty[X-ONAP-PartnerName]}
-				</simple>
-			</setHeader>
-			<log loggingLevel="INFO"
-				message="Endpoint to get policy: {{clamp.config.policy.api.url}}/policy/api/v1/policytypes/${exchangeProperty[policyType]}/versions/1.0.0/policies/${exchangeProperty[policyName]}/versions/${exchangeProperty[policyVersion]}"></log>
-			<toD
-				uri="{{clamp.config.policy.api.url}}/policy/api/v1/policytypes/${exchangeProperty[policyType]}/versions/1.0.0/policies/${exchangeProperty[policyName]}/versions/${exchangeProperty[policyVersion]}?bridgeEndpoint=true&amp;useSystemProperties=true&amp;throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&amp;authMethod=Basic&amp;authUsername={{clamp.config.policy.api.userName}}&amp;authPassword={{clamp.config.policy.api.password}}&amp;connectionTimeToLive=5000&amp;httpClient.connectTimeout=10000&amp;httpClient.socketTimeout=20000&amp;authenticationPreemptive=true&amp;connectionClose=true" />
-			<doFinally>
-				<to uri="direct:reset-raise-http-exception-flag" />
-				<to
-					uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()" />
-				<setProperty propertyName="logMessage">
-					<simple>${exchangeProperty[policyName]} GET
-						Policy status
-					</simple>
-				</setProperty>
-				<setProperty propertyName="logComponent">
-					<simple>POLICY</simple>
-				</setProperty>
-				<to uri="direct:dump-loop-log-http-response" />
-			</doFinally>
-		</doTry>
-	</route>
+		<route id="get-policy">
+				<from uri="direct:get-policy"/>
+				<doTry>
+						<log loggingLevel="INFO"
+								message="Getting Policy: ${exchangeProperty[policyName]}"/>
+						<to
+								uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Get Policy')"/>
+						<setHeader headerName="CamelHttpMethod">
+								<constant>GET</constant>
+						</setHeader>
+						<setHeader headerName="X-ONAP-RequestID">
+								<simple>${exchangeProperty[X-ONAP-RequestID]}
+								</simple>
+						</setHeader>
+						<setHeader headerName="X-ONAP-InvocationID">
+								<simple>${exchangeProperty[X-ONAP-InvocationID]}
+								</simple>
+						</setHeader>
+						<setHeader headerName="X-ONAP-PartnerName">
+								<simple>${exchangeProperty[X-ONAP-PartnerName]}
+								</simple>
+						</setHeader>
+						<log loggingLevel="INFO"
+								message="Endpoint to get policy: {{clamp.config.policy.api.url}}/policy/api/v1/policytypes/${exchangeProperty[policyType]}/versions/1.0.0/policies/${exchangeProperty[policyName]}/versions/${exchangeProperty[policyVersion]}"></log>
+						<toD
+								uri="{{clamp.config.policy.api.url}}/policy/api/v1/policytypes/${exchangeProperty[policyType]}/versions/1.0.0/policies/${exchangeProperty[policyName]}/versions/${exchangeProperty[policyVersion]}?bridgeEndpoint=true&amp;useSystemProperties=true&amp;throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&amp;authMethod=Basic&amp;authUsername={{clamp.config.policy.api.userName}}&amp;authPassword={{clamp.config.policy.api.password}}&amp;connectionTimeToLive=5000&amp;httpClient.connectTimeout=10000&amp;httpClient.socketTimeout=20000&amp;authenticationPreemptive=true&amp;connectionClose=true"/>
+						<doFinally>
+								<to uri="direct:reset-raise-http-exception-flag"/>
+								<to
+										uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
+								<setProperty propertyName="logMessage">
+										<simple>${exchangeProperty[policyName]} GET
+												Policy status
+										</simple>
+								</setProperty>
+								<setProperty propertyName="logComponent">
+										<simple>POLICY</simple>
+								</setProperty>
+								<to uri="direct:dump-loop-log-http-response"/>
+						</doFinally>
+				</doTry>
+		</route>
 
-	<route id="get-deployment-policy">
-		<from uri="direct:get-deployment-policy" />
-		<doTry>
-			<log loggingLevel="INFO"
-				message="Getting the policy deployment in PDP: ${exchangeProperty[policyName]}" />
-			<to
-				uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Getting the policy deployment in PDP')" />
-			<setHeader headerName="CamelHttpMethod">
-				<constant>GET</constant>
-			</setHeader>
-			<setHeader headerName="X-ONAP-RequestID">
-				<simple>${exchangeProperty[X-ONAP-RequestID]}
-				</simple>
-			</setHeader>
-			<setHeader headerName="X-ONAP-InvocationID">
-				<simple>${exchangeProperty[X-ONAP-InvocationID]}
-				</simple>
-			</setHeader>
-			<setHeader headerName="X-ONAP-PartnerName">
-				<simple>${exchangeProperty[X-ONAP-PartnerName]}
-				</simple>
-			</setHeader>
-			<log loggingLevel="INFO"
-				message="Endpoint to get policy deployment status: {{clamp.config.policy.api.url}}/policy/api/v1/policytypes/${exchangeProperty[policyType]}/versions/1.0.0/policies/${exchangeProperty[policyName]}/versions/deployed"></log>
-			<toD
-				uri="{{clamp.config.policy.api.url}}/policy/api/v1/policytypes/${exchangeProperty[policyType]}/versions/1.0.0/policies/${exchangeProperty[policyName]}/versions/deployed?bridgeEndpoint=true&amp;useSystemProperties=true&amp;throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&amp;authMethod=Basic&amp;authUsername={{clamp.config.policy.api.userName}}&amp;authPassword={{clamp.config.policy.api.password}}&amp;connectionTimeToLive=5000&amp;httpClient.connectTimeout=10000&amp;httpClient.socketTimeout=20000&amp;authenticationPreemptive=true&amp;connectionClose=true" />
-			<doFinally>
-				<to uri="direct:reset-raise-http-exception-flag" />
-				<to
-					uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()" />
-				<setProperty propertyName="logMessage">
-					<simple>${exchangeProperty[policyName]} GET Policy deployment
-						status
-					</simple>
-				</setProperty>
-				<setProperty propertyName="logComponent">
-					<simple>POLICY</simple>
-				</setProperty>
-				<to uri="direct:dump-loop-log-http-response" />
-			</doFinally>
-		</doTry>
-	</route>
-	<route id="create-micro-service-policy">
-		<from uri="direct:create-micro-service-policy" />
-		<doTry>
-			<log loggingLevel="INFO"
-				message="Creating Micro Service Policy: ${exchangeProperty[microServicePolicy].getName()}" />
-			<to
-				uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Create Micro Service Policy')" />
-			<setBody>
-				<simple>${exchangeProperty[microServicePolicy].createPolicyPayload()}
-				</simple>
-			</setBody>
-			<setHeader headerName="CamelHttpMethod">
-				<constant>POST</constant>
-			</setHeader>
-			<setHeader headerName="Content-Type">
-				<constant>application/json</constant>
-			</setHeader>
-			<setHeader headerName="X-ONAP-RequestID">
-				<simple>${exchangeProperty[X-ONAP-RequestID]}
-				</simple>
-			</setHeader>
-			<setHeader headerName="X-ONAP-InvocationID">
-				<simple>${exchangeProperty[X-ONAP-InvocationID]}
-				</simple>
-			</setHeader>
-			<setHeader headerName="X-ONAP-PartnerName">
-				<simple>${exchangeProperty[X-ONAP-PartnerName]}
-				</simple>
-			</setHeader>
-			<log loggingLevel="INFO"
-				message="Endpoint to create microservice policy: {{clamp.config.policy.api.url}}/policy/api/v1/policytypes/${exchangeProperty[microServicePolicy].getModelType()}/versions/1.0.0/policies"></log>
-			<toD
-				uri="{{clamp.config.policy.api.url}}/policy/api/v1/policytypes/${exchangeProperty[microServicePolicy].getModelType()}/versions/1.0.0/policies?bridgeEndpoint=true&amp;useSystemProperties=true&amp;mapHttpMessageHeaders=false&amp;throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&amp;authUsername={{clamp.config.policy.api.userName}}&amp;authPassword={{clamp.config.policy.api.password}}&amp;connectionTimeToLive=5000&amp;httpClient.connectTimeout=10000&amp;httpClient.socketTimeout=20000&amp;authenticationPreemptive=true&amp;connectionClose=true" />
-			<doFinally>
-				<to uri="direct:reset-raise-http-exception-flag" />
-				<to
-					uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()" />
-				<setProperty propertyName="logMessage">
-					<simple>${exchangeProperty[microServicePolicy].getName()} creation
-						status
-					</simple>
-				</setProperty>
-				<setProperty propertyName="logComponent">
-					<simple>POLICY</simple>
-				</setProperty>
-				<to uri="direct:dump-loop-log-http-response" />
-			</doFinally>
-		</doTry>
-	</route>
+		<route id="get-deployment-policy">
+				<from uri="direct:get-deployment-policy"/>
+				<doTry>
+						<log loggingLevel="INFO"
+								message="Getting the policy deployment in PDP: ${exchangeProperty[policyName]}"/>
+						<to
+								uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Getting the policy deployment in PDP')"/>
+						<setHeader headerName="CamelHttpMethod">
+								<constant>GET</constant>
+						</setHeader>
+						<setHeader headerName="X-ONAP-RequestID">
+								<simple>${exchangeProperty[X-ONAP-RequestID]}
+								</simple>
+						</setHeader>
+						<setHeader headerName="X-ONAP-InvocationID">
+								<simple>${exchangeProperty[X-ONAP-InvocationID]}
+								</simple>
+						</setHeader>
+						<setHeader headerName="X-ONAP-PartnerName">
+								<simple>${exchangeProperty[X-ONAP-PartnerName]}
+								</simple>
+						</setHeader>
+						<log loggingLevel="INFO"
+								message="Endpoint to get policy deployment status: {{clamp.config.policy.pap.url}}/policy/pap/v1/policies/deployed/${exchangeProperty[policyName]}/1.0.0"></log>
+						<toD
+								uri="{{clamp.config.policy.pap.url}}/policy/pap/v1/policies/deployed/${exchangeProperty[policyName]}/1.0.0?bridgeEndpoint=true&amp;useSystemProperties=true&amp;throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&amp;authMethod=Basic&amp;authUsername={{clamp.config.policy.api.userName}}&amp;authPassword={{clamp.config.policy.api.password}}&amp;connectionTimeToLive=5000&amp;httpClient.connectTimeout=10000&amp;httpClient.socketTimeout=20000&amp;authenticationPreemptive=true&amp;connectionClose=true"/>
+						<doFinally>
+								<to uri="direct:reset-raise-http-exception-flag"/>
+								<to
+										uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
+								<setProperty propertyName="logMessage">
+										<simple>${exchangeProperty[policyName]} GET Policy deployment
+												status
+										</simple>
+								</setProperty>
+								<setProperty propertyName="logComponent">
+										<simple>POLICY</simple>
+								</setProperty>
+								<to uri="direct:dump-loop-log-http-response"/>
+						</doFinally>
+				</doTry>
+		</route>
+		<route id="get-all-policy-models">
+				<from uri="direct:get-all-policy-models"/>
+				<doTry>
+						<log loggingLevel="INFO" message="Getting all the policy models"/>
+						<to
+								uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Getting all the policy models')"/>
+						<setHeader headerName="CamelHttpMethod">
+								<constant>GET</constant>
+						</setHeader>
+						<setHeader headerName="X-ONAP-RequestID">
+								<simple>${exchangeProperty[X-ONAP-RequestID]}
+								</simple>
+						</setHeader>
+						<setHeader headerName="X-ONAP-InvocationID">
+								<simple>${exchangeProperty[X-ONAP-InvocationID]}
+								</simple>
+						</setHeader>
+						<setHeader headerName="X-ONAP-PartnerName">
+								<simple>${exchangeProperty[X-ONAP-PartnerName]}
+								</simple>
+						</setHeader>
+						<log loggingLevel="INFO"
+								message="Endpoint to get all policy models: {{clamp.config.policy.pap.url}}/policy/api/v1/policytypes"></log>
+						<toD
+								uri="{{clamp.config.policy.pap.url}}/policy/api/v1/policytypes?bridgeEndpoint=true&amp;useSystemProperties=true&amp;throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&amp;authMethod=Basic&amp;authUsername={{clamp.config.policy.api.userName}}&amp;authPassword={{clamp.config.policy.api.password}}&amp;connectionTimeToLive=5000&amp;httpClient.connectTimeout=10000&amp;httpClient.socketTimeout=20000&amp;authenticationPreemptive=true&amp;connectionClose=true"/>
+						<convertBodyTo type="java.lang.String"/>		
+						<doFinally>
+								<to uri="direct:reset-raise-http-exception-flag"/>
+								<to
+										uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
+						</doFinally>
+				</doTry>
+		</route>
+		<route id="get-policy-model">
+				<from uri="direct:get-policy-model"/>
+				<doTry>
+						<log loggingLevel="INFO"
+								message="Getting the policy model: ${exchangeProperty[policyModelName]}/${exchangeProperty[policyModelVersion]}"/>
+						<to
+								uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Getting the policy model')"/>
+						<setHeader headerName="CamelHttpMethod">
+								<constant>GET</constant>
+						</setHeader>
+						<setHeader headerName="X-ONAP-RequestID">
+								<simple>${exchangeProperty[X-ONAP-RequestID]}
+								</simple>
+						</setHeader>
+						<setHeader headerName="X-ONAP-InvocationID">
+								<simple>${exchangeProperty[X-ONAP-InvocationID]}
+								</simple>
+						</setHeader>
+						<setHeader headerName="X-ONAP-PartnerName">
+								<simple>${exchangeProperty[X-ONAP-PartnerName]}
+								</simple>
+						</setHeader>
+						<log loggingLevel="INFO"
+								message="Endpoint to get policy model: {{clamp.config.policy.pap.url}}/policy/api/v1/policytypes/${exchangeProperty[policyModelName]}/versions/${exchangeProperty[policyModelVersion]}"></log>
+						<toD
+								uri="{{clamp.config.policy.pap.url}}/policy/api/v1/policytypes/${exchangeProperty[policyModelName]}/versions/${exchangeProperty[policyModelVersion]}?bridgeEndpoint=true&amp;useSystemProperties=true&amp;throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&amp;authMethod=Basic&amp;authUsername={{clamp.config.policy.api.userName}}&amp;authPassword={{clamp.config.policy.api.password}}&amp;connectionTimeToLive=5000&amp;httpClient.connectTimeout=10000&amp;httpClient.socketTimeout=20000&amp;authenticationPreemptive=true&amp;connectionClose=true"/>
+					    <convertBodyTo type="java.lang.String"/>
+						<doFinally>
+								<to uri="direct:reset-raise-http-exception-flag"/>
+								<to
+										uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
+						</doFinally>
+				</doTry>
+		</route>
+		<route id="create-micro-service-policy">
+				<from uri="direct:create-micro-service-policy"/>
+				<doTry>
+						<log loggingLevel="INFO"
+								message="Creating Micro Service Policy: ${exchangeProperty[microServicePolicy].getName()}"/>
+						<to
+								uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Create Micro Service Policy')"/>
+						<setBody>
+								<simple>${exchangeProperty[microServicePolicy].createPolicyPayload()}
+								</simple>
+						</setBody>
+						<setHeader headerName="CamelHttpMethod">
+								<constant>POST</constant>
+						</setHeader>
+						<setHeader headerName="Content-Type">
+								<constant>application/json</constant>
+						</setHeader>
+						<setHeader headerName="X-ONAP-RequestID">
+								<simple>${exchangeProperty[X-ONAP-RequestID]}
+								</simple>
+						</setHeader>
+						<setHeader headerName="X-ONAP-InvocationID">
+								<simple>${exchangeProperty[X-ONAP-InvocationID]}
+								</simple>
+						</setHeader>
+						<setHeader headerName="X-ONAP-PartnerName">
+								<simple>${exchangeProperty[X-ONAP-PartnerName]}
+								</simple>
+						</setHeader>
+						<log loggingLevel="INFO"
+								message="Endpoint to create microservice policy: {{clamp.config.policy.api.url}}/policy/api/v1/policytypes/${exchangeProperty[microServicePolicy].getModelType()}/versions/1.0.0/policies"></log>
+						<toD
+								uri="{{clamp.config.policy.api.url}}/policy/api/v1/policytypes/${exchangeProperty[microServicePolicy].getModelType()}/versions/1.0.0/policies?bridgeEndpoint=true&amp;useSystemProperties=true&amp;mapHttpMessageHeaders=false&amp;throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&amp;authUsername={{clamp.config.policy.api.userName}}&amp;authPassword={{clamp.config.policy.api.password}}&amp;connectionTimeToLive=5000&amp;httpClient.connectTimeout=10000&amp;httpClient.socketTimeout=20000&amp;authenticationPreemptive=true&amp;connectionClose=true"/>
+						<doFinally>
+								<to uri="direct:reset-raise-http-exception-flag"/>
+								<to
+										uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
+								<setProperty propertyName="logMessage">
+										<simple>${exchangeProperty[microServicePolicy].getName()} creation
+												status
+										</simple>
+								</setProperty>
+								<setProperty propertyName="logComponent">
+										<simple>POLICY</simple>
+								</setProperty>
+								<to uri="direct:dump-loop-log-http-response"/>
+						</doFinally>
+				</doTry>
+		</route>
 
-	<route id="delete-micro-service-policy">
-		<from uri="direct:delete-micro-service-policy" />
-		<doTry>
-			<log loggingLevel="INFO"
-				message="Deleting Micro Service Policy: ${exchangeProperty[microServicePolicy].getName()}" />
-			<to
-				uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Delete Micro Service Policy')" />
-			<setBody>
-				<constant>null</constant>
-			</setBody>
-			<setHeader headerName="CamelHttpMethod">
-				<constant>DELETE</constant>
-			</setHeader>
-			<setHeader headerName="X-ONAP-RequestID">
-				<simple>${exchangeProperty[X-ONAP-RequestID]}
-				</simple>
-			</setHeader>
-			<setHeader headerName="X-ONAP-InvocationID">
-				<simple>${exchangeProperty[X-ONAP-InvocationID]}
-				</simple>
-			</setHeader>
-			<setHeader headerName="X-ONAP-PartnerName">
-				<simple>${exchangeProperty[X-ONAP-PartnerName]}
-				</simple>
-			</setHeader>
-			<log loggingLevel="INFO"
-				message="Endpoint to delete microservice policy: {{clamp.config.policy.api.url}}/policy/api/v1/policytypes/${exchangeProperty[microServicePolicy].getModelType()}/versions/1.0.0/policies/${exchangeProperty[microServicePolicy].getName()}/versions/1.0.0"></log>
-			<toD
-				uri="{{clamp.config.policy.api.url}}/policy/api/v1/policytypes/${exchangeProperty[microServicePolicy].getModelType()}/versions/1.0.0/policies/${exchangeProperty[microServicePolicy].getName()}/versions/1.0.0?bridgeEndpoint=true&amp;useSystemProperties=true&amp;mapHttpMessageHeaders=false&amp;throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&amp;deleteWithBody=false&amp;mapHttpMessageBody=false&amp;mapHttpMessageFormUrlEncodedBody=false&amp;authUsername={{clamp.config.policy.api.userName}}&amp;authPassword={{clamp.config.policy.api.password}}&amp;connectionTimeToLive=5000&amp;httpClient.connectTimeout=10000&amp;httpClient.socketTimeout=20000&amp;authenticationPreemptive=true&amp;connectionClose=true" />
+		<route id="delete-micro-service-policy">
+				<from uri="direct:delete-micro-service-policy"/>
+				<doTry>
+						<log loggingLevel="INFO"
+								message="Deleting Micro Service Policy: ${exchangeProperty[microServicePolicy].getName()}"/>
+						<to
+								uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Delete Micro Service Policy')"/>
+						<setBody>
+								<constant>null</constant>
+						</setBody>
+						<setHeader headerName="CamelHttpMethod">
+								<constant>DELETE</constant>
+						</setHeader>
+						<setHeader headerName="X-ONAP-RequestID">
+								<simple>${exchangeProperty[X-ONAP-RequestID]}
+								</simple>
+						</setHeader>
+						<setHeader headerName="X-ONAP-InvocationID">
+								<simple>${exchangeProperty[X-ONAP-InvocationID]}
+								</simple>
+						</setHeader>
+						<setHeader headerName="X-ONAP-PartnerName">
+								<simple>${exchangeProperty[X-ONAP-PartnerName]}
+								</simple>
+						</setHeader>
+						<log loggingLevel="INFO"
+								message="Endpoint to delete microservice policy: {{clamp.config.policy.api.url}}/policy/api/v1/policytypes/${exchangeProperty[microServicePolicy].getModelType()}/versions/1.0.0/policies/${exchangeProperty[microServicePolicy].getName()}/versions/1.0.0"></log>
+						<toD
+								uri="{{clamp.config.policy.api.url}}/policy/api/v1/policytypes/${exchangeProperty[microServicePolicy].getModelType()}/versions/1.0.0/policies/${exchangeProperty[microServicePolicy].getName()}/versions/1.0.0?bridgeEndpoint=true&amp;useSystemProperties=true&amp;mapHttpMessageHeaders=false&amp;throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&amp;deleteWithBody=false&amp;mapHttpMessageBody=false&amp;mapHttpMessageFormUrlEncodedBody=false&amp;authUsername={{clamp.config.policy.api.userName}}&amp;authPassword={{clamp.config.policy.api.password}}&amp;connectionTimeToLive=5000&amp;httpClient.connectTimeout=10000&amp;httpClient.socketTimeout=20000&amp;authenticationPreemptive=true&amp;connectionClose=true"/>
 
-			<doFinally>
-				<to uri="direct:reset-raise-http-exception-flag" />
-				<to
-					uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()" />
-				<setProperty propertyName="logMessage">
-					<simple>${exchangeProperty[microServicePolicy].getName()} removal
-						status
-					</simple>
-				</setProperty>
-				<setProperty propertyName="logComponent">
-					<simple>POLICY</simple>
-				</setProperty>
-				<to uri="direct:dump-loop-log-http-response" />
-			</doFinally>
-		</doTry>
-	</route>
+						<doFinally>
+								<to uri="direct:reset-raise-http-exception-flag"/>
+								<to
+										uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
+								<setProperty propertyName="logMessage">
+										<simple>${exchangeProperty[microServicePolicy].getName()} removal
+												status
+										</simple>
+								</setProperty>
+								<setProperty propertyName="logComponent">
+										<simple>POLICY</simple>
+								</setProperty>
+								<to uri="direct:dump-loop-log-http-response"/>
+						</doFinally>
+				</doTry>
+		</route>
 
-	<route id="create-operational-policy">
-		<from uri="direct:create-operational-policy" />
-		<doTry>
-			<log loggingLevel="INFO"
-				message="Creating Operational Policy: ${exchangeProperty[operationalPolicy].getName()}" />
-			<to
-				uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Create Operational Policy')" />
-			<setBody>
-				<simple>${exchangeProperty[operationalPolicy].createPolicyPayload()}
-				</simple>
-			</setBody>
-			<setHeader headerName="CamelHttpMethod">
-				<constant>POST</constant>
-			</setHeader>
-			<setHeader headerName="Content-Type">
-				<constant>application/json</constant>
-			</setHeader>
-			<setHeader headerName="X-ONAP-RequestID">
-				<simple>${exchangeProperty[X-ONAP-RequestID]}
-				</simple>
-			</setHeader>
-			<setHeader headerName="X-ONAP-InvocationID">
-				<simple>${exchangeProperty[X-ONAP-InvocationID]}
-				</simple>
-			</setHeader>
-			<setHeader headerName="X-ONAP-PartnerName">
-				<simple>${exchangeProperty[X-ONAP-PartnerName]}
-				</simple>
-			</setHeader>
-			<log loggingLevel="INFO"
-				message="Endpoint to create operational policy: {{clamp.config.policy.api.url}}/policy/api/v1/policytypes/onap.policies.controlloop.Operational/versions/1.0.0/policies"></log>
-			<toD
-				uri="{{clamp.config.policy.api.url}}/policy/api/v1/policytypes/onap.policies.controlloop.Operational/versions/1.0.0/policies?bridgeEndpoint=true&amp;useSystemProperties=true&amp;mapHttpMessageHeaders=false&amp;throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&amp;authUsername={{clamp.config.policy.api.userName}}&amp;authPassword={{clamp.config.policy.api.password}}&amp;connectionTimeToLive=5000&amp;httpClient.connectTimeout=10000&amp;httpClient.socketTimeout=20000&amp;authenticationPreemptive=true&amp;connectionClose=true" />
-			<doFinally>
-				<to uri="direct:reset-raise-http-exception-flag" />
-				<to
-					uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()" />
-				<setProperty propertyName="logMessage">
-					<simple>${exchangeProperty[operationalPolicy].getName()} creation
-						status
-					</simple>
-				</setProperty>
-				<setProperty propertyName="logComponent">
-					<simple>POLICY</simple>
-				</setProperty>
-				<to uri="direct:dump-loop-log-http-response" />
-			</doFinally>
-		</doTry>
-	</route>
+		<route id="create-operational-policy">
+				<from uri="direct:create-operational-policy"/>
+				<doTry>
+						<log loggingLevel="INFO"
+								message="Creating Operational Policy: ${exchangeProperty[operationalPolicy].getName()}"/>
+						<to
+								uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Create Operational Policy')"/>
+						<setBody>
+								<simple>${exchangeProperty[operationalPolicy].createPolicyPayload()}
+								</simple>
+						</setBody>
+						<setHeader headerName="CamelHttpMethod">
+								<constant>POST</constant>
+						</setHeader>
+						<setHeader headerName="Content-Type">
+								<constant>application/json</constant>
+						</setHeader>
+						<setHeader headerName="X-ONAP-RequestID">
+								<simple>${exchangeProperty[X-ONAP-RequestID]}
+								</simple>
+						</setHeader>
+						<setHeader headerName="X-ONAP-InvocationID">
+								<simple>${exchangeProperty[X-ONAP-InvocationID]}
+								</simple>
+						</setHeader>
+						<setHeader headerName="X-ONAP-PartnerName">
+								<simple>${exchangeProperty[X-ONAP-PartnerName]}
+								</simple>
+						</setHeader>
+						<log loggingLevel="INFO"
+								message="Endpoint to create operational policy: {{clamp.config.policy.api.url}}/policy/api/v1/policytypes/onap.policies.controlloop.Operational/versions/1.0.0/policies"></log>
+						<toD
+								uri="{{clamp.config.policy.api.url}}/policy/api/v1/policytypes/onap.policies.controlloop.Operational/versions/1.0.0/policies?bridgeEndpoint=true&amp;useSystemProperties=true&amp;mapHttpMessageHeaders=false&amp;throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&amp;authUsername={{clamp.config.policy.api.userName}}&amp;authPassword={{clamp.config.policy.api.password}}&amp;connectionTimeToLive=5000&amp;httpClient.connectTimeout=10000&amp;httpClient.socketTimeout=20000&amp;authenticationPreemptive=true&amp;connectionClose=true"/>
+						<doFinally>
+								<to uri="direct:reset-raise-http-exception-flag"/>
+								<to
+										uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
+								<setProperty propertyName="logMessage">
+										<simple>${exchangeProperty[operationalPolicy].getName()} creation
+												status
+										</simple>
+								</setProperty>
+								<setProperty propertyName="logComponent">
+										<simple>POLICY</simple>
+								</setProperty>
+								<to uri="direct:dump-loop-log-http-response"/>
+						</doFinally>
+				</doTry>
+		</route>
 
-	<route id="delete-operational-policy">
-		<from uri="direct:delete-operational-policy" />
-		<doTry>
-			<log loggingLevel="INFO"
-				message="Deleting Operational Policy: ${exchangeProperty[operationalPolicy].getName()}" />
-			<to
-				uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Delete Operational Policy')" />
-			<setBody>
-				<constant>null</constant>
-			</setBody>
-			<setHeader headerName="CamelHttpMethod">
-				<constant>DELETE</constant>
-			</setHeader>
-			<setHeader headerName="X-ONAP-RequestID">
-				<simple>${exchangeProperty[X-ONAP-RequestID]}
-				</simple>
-			</setHeader>
-			<setHeader headerName="X-ONAP-InvocationID">
-				<simple>${exchangeProperty[X-ONAP-InvocationID]}
-				</simple>
-			</setHeader>
-			<setHeader headerName="X-ONAP-PartnerName">
-				<simple>${exchangeProperty[X-ONAP-PartnerName]}
-				</simple>
-			</setHeader>
-			<log loggingLevel="INFO"
-				message="Endpoint to delete operational policy: {{clamp.config.policy.api.url}}/policy/api/v1/policytypes/onap.policies.controlloop.Operational/versions/1.0.0/policies/${exchangeProperty[operationalPolicy].getName()}/versions/1"></log>
-			<toD
-				uri="{{clamp.config.policy.api.url}}/policy/api/v1/policytypes/onap.policies.controlloop.Operational/versions/1.0.0/policies/${exchangeProperty[operationalPolicy].getName()}/versions/1?bridgeEndpoint=true&amp;useSystemProperties=true&amp;mapHttpMessageHeaders=false&amp;throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&amp;deleteWithBody=false&amp;mapHttpMessageBody=false&amp;mapHttpMessageFormUrlEncodedBody=false&amp;authUsername={{clamp.config.policy.api.userName}}&amp;authPassword={{clamp.config.policy.api.password}}&amp;connectionTimeToLive=5000&amp;httpClient.connectTimeout=10000&amp;httpClient.socketTimeout=20000&amp;authenticationPreemptive=true&amp;connectionClose=true" />
-			<doFinally>
-				<to uri="direct:reset-raise-http-exception-flag" />
-				<to
-					uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()" />
-				<setProperty propertyName="logMessage">
-					<simple>${exchangeProperty[operationalPolicy].getName()} removal
-						status
-					</simple>
-				</setProperty>
-				<setProperty propertyName="logComponent">
-					<simple>POLICY</simple>
-				</setProperty>
-				<to uri="direct:dump-loop-log-http-response" />
-			</doFinally>
-		</doTry>
-	</route>
+		<route id="delete-operational-policy">
+				<from uri="direct:delete-operational-policy"/>
+				<doTry>
+						<log loggingLevel="INFO"
+								message="Deleting Operational Policy: ${exchangeProperty[operationalPolicy].getName()}"/>
+						<to
+								uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Delete Operational Policy')"/>
+						<setBody>
+								<constant>null</constant>
+						</setBody>
+						<setHeader headerName="CamelHttpMethod">
+								<constant>DELETE</constant>
+						</setHeader>
+						<setHeader headerName="X-ONAP-RequestID">
+								<simple>${exchangeProperty[X-ONAP-RequestID]}
+								</simple>
+						</setHeader>
+						<setHeader headerName="X-ONAP-InvocationID">
+								<simple>${exchangeProperty[X-ONAP-InvocationID]}
+								</simple>
+						</setHeader>
+						<setHeader headerName="X-ONAP-PartnerName">
+								<simple>${exchangeProperty[X-ONAP-PartnerName]}
+								</simple>
+						</setHeader>
+						<log loggingLevel="INFO"
+								message="Endpoint to delete operational policy: {{clamp.config.policy.api.url}}/policy/api/v1/policytypes/onap.policies.controlloop.Operational/versions/1.0.0/policies/${exchangeProperty[operationalPolicy].getName()}/versions/1"></log>
+						<toD
+								uri="{{clamp.config.policy.api.url}}/policy/api/v1/policytypes/onap.policies.controlloop.Operational/versions/1.0.0/policies/${exchangeProperty[operationalPolicy].getName()}/versions/1?bridgeEndpoint=true&amp;useSystemProperties=true&amp;mapHttpMessageHeaders=false&amp;throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&amp;deleteWithBody=false&amp;mapHttpMessageBody=false&amp;mapHttpMessageFormUrlEncodedBody=false&amp;authUsername={{clamp.config.policy.api.userName}}&amp;authPassword={{clamp.config.policy.api.password}}&amp;connectionTimeToLive=5000&amp;httpClient.connectTimeout=10000&amp;httpClient.socketTimeout=20000&amp;authenticationPreemptive=true&amp;connectionClose=true"/>
+						<doFinally>
+								<to uri="direct:reset-raise-http-exception-flag"/>
+								<to
+										uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
+								<setProperty propertyName="logMessage">
+										<simple>${exchangeProperty[operationalPolicy].getName()} removal
+												status
+										</simple>
+								</setProperty>
+								<setProperty propertyName="logComponent">
+										<simple>POLICY</simple>
+								</setProperty>
+								<to uri="direct:dump-loop-log-http-response"/>
+						</doFinally>
+				</doTry>
+		</route>
 
-	<route id="create-guard-policy">
-		<from uri="direct:create-guard-policy" />
-		<doTry>
-			<log loggingLevel="INFO"
-				message="Creating Guard Policy: ${exchangeProperty[guardPolicy].getKey()}" />
-			<to
-				uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Create Guard Policy')" />
-			<setBody>
-				<simple>${exchangeProperty[guardPolicy].getValue()}
-				</simple>
-			</setBody>
-			<setHeader headerName="CamelHttpMethod">
-				<constant>POST</constant>
-			</setHeader>
-			<setHeader headerName="Content-Type">
-				<constant>application/json</constant>
-			</setHeader>
-			<setHeader headerName="X-ONAP-RequestID">
-				<simple>${exchangeProperty[X-ONAP-RequestID]}
-				</simple>
-			</setHeader>
-			<setHeader headerName="X-ONAP-InvocationID">
-				<simple>${exchangeProperty[X-ONAP-InvocationID]}
-				</simple>
-			</setHeader>
-			<setHeader headerName="X-ONAP-PartnerName">
-				<simple>${exchangeProperty[X-ONAP-PartnerName]}
-				</simple>
-			</setHeader>
-			<log loggingLevel="INFO"
-				message="Endpoint to create guard policy: {{clamp.config.policy.api.url}}/policy/api/v1/policytypes/onap.policies.controlloop.Guard/versions/1.0.0/policies"></log>
-			<toD
-				uri="{{clamp.config.policy.api.url}}/policy/api/v1/policytypes/onap.policies.controlloop.Guard/versions/1.0.0/policies?bridgeEndpoint=true&amp;useSystemProperties=true&amp;mapHttpMessageHeaders=false&amp;throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&amp;authUsername={{clamp.config.policy.api.userName}}&amp;authPassword={{clamp.config.policy.api.password}}&amp;connectionTimeToLive=5000&amp;httpClient.connectTimeout=10000&amp;httpClient.socketTimeout=20000&amp;authenticationPreemptive=true&amp;connectionClose=true" />
-			<doFinally>
-				<to uri="direct:reset-raise-http-exception-flag" />
-				<to
-					uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()" />
-				<setProperty propertyName="logMessage">
-					<simple>${exchangeProperty[guardPolicy].getKey()} creation status
-					</simple>
-				</setProperty>
-				<setProperty propertyName="logComponent">
-					<simple>POLICY</simple>
-				</setProperty>
-				<to uri="direct:dump-loop-log-http-response" />
-			</doFinally>
-		</doTry>
-	</route>
+		<route id="create-guard-policy">
+				<from uri="direct:create-guard-policy"/>
+				<doTry>
+						<log loggingLevel="INFO"
+								message="Creating Guard Policy: ${exchangeProperty[guardPolicy].getKey()}"/>
+						<to
+								uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Create Guard Policy')"/>
+						<setBody>
+								<simple>${exchangeProperty[guardPolicy].getValue()}
+								</simple>
+						</setBody>
+						<setHeader headerName="CamelHttpMethod">
+								<constant>POST</constant>
+						</setHeader>
+						<setHeader headerName="Content-Type">
+								<constant>application/json</constant>
+						</setHeader>
+						<setHeader headerName="X-ONAP-RequestID">
+								<simple>${exchangeProperty[X-ONAP-RequestID]}
+								</simple>
+						</setHeader>
+						<setHeader headerName="X-ONAP-InvocationID">
+								<simple>${exchangeProperty[X-ONAP-InvocationID]}
+								</simple>
+						</setHeader>
+						<setHeader headerName="X-ONAP-PartnerName">
+								<simple>${exchangeProperty[X-ONAP-PartnerName]}
+								</simple>
+						</setHeader>
+						<log loggingLevel="INFO"
+								message="Endpoint to create guard policy: {{clamp.config.policy.api.url}}/policy/api/v1/policytypes/onap.policies.controlloop.Guard/versions/1.0.0/policies"></log>
+						<toD
+								uri="{{clamp.config.policy.api.url}}/policy/api/v1/policytypes/onap.policies.controlloop.Guard/versions/1.0.0/policies?bridgeEndpoint=true&amp;useSystemProperties=true&amp;mapHttpMessageHeaders=false&amp;throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&amp;authUsername={{clamp.config.policy.api.userName}}&amp;authPassword={{clamp.config.policy.api.password}}&amp;connectionTimeToLive=5000&amp;httpClient.connectTimeout=10000&amp;httpClient.socketTimeout=20000&amp;authenticationPreemptive=true&amp;connectionClose=true"/>
+						<doFinally>
+								<to uri="direct:reset-raise-http-exception-flag"/>
+								<to
+										uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
+								<setProperty propertyName="logMessage">
+										<simple>${exchangeProperty[guardPolicy].getKey()} creation status
+										</simple>
+								</setProperty>
+								<setProperty propertyName="logComponent">
+										<simple>POLICY</simple>
+								</setProperty>
+								<to uri="direct:dump-loop-log-http-response"/>
+						</doFinally>
+				</doTry>
+		</route>
 
-	<route id="delete-guard-policy">
-		<from uri="direct:delete-guard-policy" />
-		<doTry>
-			<log loggingLevel="INFO"
-				message="Deleting Guard Policy: ${exchangeProperty[guardPolicy].getKey()}" />
-			<to
-				uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Delete Guard Policy')" />
-			<setBody>
-				<constant>null</constant>
-			</setBody>
-			<setHeader headerName="CamelHttpMethod">
-				<constant>DELETE</constant>
-			</setHeader>
-			<setHeader headerName="X-ONAP-RequestID">
-				<simple>${exchangeProperty[X-ONAP-RequestID]}
-				</simple>
-			</setHeader>
-			<setHeader headerName="X-ONAP-InvocationID">
-				<simple>${exchangeProperty[X-ONAP-InvocationID]}
-				</simple>
-			</setHeader>
-			<setHeader headerName="X-ONAP-PartnerName">
-				<simple>${exchangeProperty[X-ONAP-PartnerName]}
-				</simple>
-			</setHeader>
-			<log loggingLevel="INFO"
-				message="Endpoint to delete guard policy: {{clamp.config.policy.api.url}}/policy/api/v1/policytypes/onap.policies.controlloop.Guard/versions/1.0.0/policies/${exchangeProperty[guardPolicy].getKey()}/versions/1"></log>
-			<toD
-				uri="{{clamp.config.policy.api.url}}/policy/api/v1/policytypes/onap.policies.controlloop.Guard/versions/1.0.0/policies/${exchangeProperty[guardPolicy].getKey()}/versions/1?bridgeEndpoint=true&amp;useSystemProperties=true&amp;throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&amp;deleteWithBody=false&amp;mapHttpMessageBody=false&amp;mapHttpMessageFormUrlEncodedBody=false&amp;authUsername={{clamp.config.policy.api.userName}}&amp;authPassword={{clamp.config.policy.api.password}}&amp;connectionTimeToLive=5000&amp;httpClient.connectTimeout=10000&amp;httpClient.socketTimeout=20000&amp;authenticationPreemptive=true&amp;connectionClose=true" />
+		<route id="delete-guard-policy">
+				<from uri="direct:delete-guard-policy"/>
+				<doTry>
+						<log loggingLevel="INFO"
+								message="Deleting Guard Policy: ${exchangeProperty[guardPolicy].getKey()}"/>
+						<to
+								uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Delete Guard Policy')"/>
+						<setBody>
+								<constant>null</constant>
+						</setBody>
+						<setHeader headerName="CamelHttpMethod">
+								<constant>DELETE</constant>
+						</setHeader>
+						<setHeader headerName="X-ONAP-RequestID">
+								<simple>${exchangeProperty[X-ONAP-RequestID]}
+								</simple>
+						</setHeader>
+						<setHeader headerName="X-ONAP-InvocationID">
+								<simple>${exchangeProperty[X-ONAP-InvocationID]}
+								</simple>
+						</setHeader>
+						<setHeader headerName="X-ONAP-PartnerName">
+								<simple>${exchangeProperty[X-ONAP-PartnerName]}
+								</simple>
+						</setHeader>
+						<log loggingLevel="INFO"
+								message="Endpoint to delete guard policy: {{clamp.config.policy.api.url}}/policy/api/v1/policytypes/onap.policies.controlloop.Guard/versions/1.0.0/policies/${exchangeProperty[guardPolicy].getKey()}/versions/1"></log>
+						<toD
+								uri="{{clamp.config.policy.api.url}}/policy/api/v1/policytypes/onap.policies.controlloop.Guard/versions/1.0.0/policies/${exchangeProperty[guardPolicy].getKey()}/versions/1?bridgeEndpoint=true&amp;useSystemProperties=true&amp;throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&amp;deleteWithBody=false&amp;mapHttpMessageBody=false&amp;mapHttpMessageFormUrlEncodedBody=false&amp;authUsername={{clamp.config.policy.api.userName}}&amp;authPassword={{clamp.config.policy.api.password}}&amp;connectionTimeToLive=5000&amp;httpClient.connectTimeout=10000&amp;httpClient.socketTimeout=20000&amp;authenticationPreemptive=true&amp;connectionClose=true"/>
 
-			<doFinally>
-				<to uri="direct:reset-raise-http-exception-flag" />
-				<to
-					uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()" />
-				<setProperty propertyName="logMessage">
-					<simple>${exchangeProperty[guardPolicy].getKey()} removal status
-					</simple>
-				</setProperty>
-				<setProperty propertyName="logComponent">
-					<simple>POLICY</simple>
-				</setProperty>
-				<to uri="direct:dump-loop-log-http-response" />
-			</doFinally>
-		</doTry>
-	</route>
+						<doFinally>
+								<to uri="direct:reset-raise-http-exception-flag"/>
+								<to
+										uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
+								<setProperty propertyName="logMessage">
+										<simple>${exchangeProperty[guardPolicy].getKey()} removal status
+										</simple>
+								</setProperty>
+								<setProperty propertyName="logComponent">
+										<simple>POLICY</simple>
+								</setProperty>
+								<to uri="direct:dump-loop-log-http-response"/>
+						</doFinally>
+				</doTry>
+		</route>
 
-	<route id="add-all-to-active-pdp-group">
-		<from uri="direct:add-all-to-active-pdp-group" />
-		<doTry>
-			<log loggingLevel="INFO"
-				message="Adding loop policies to PDP Group: ${exchangeProperty[loopObject].getName()}" />
-			<to
-				uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Add policies to PDP group')" />
-			<setBody>
-				<simple>${exchangeProperty[loopObject].getComponent("POLICY").createPoliciesPayloadPdpGroup(exchangeProperty[loopObject])}
-				</simple>
-			</setBody>
-			<setHeader headerName="CamelHttpMethod">
-				<constant>POST</constant>
-			</setHeader>
-			<setHeader headerName="Content-Type">
-				<constant>application/json</constant>
-			</setHeader>
-			<setHeader headerName="X-ONAP-RequestID">
-				<simple>${exchangeProperty[X-ONAP-RequestID]}
-				</simple>
-			</setHeader>
-			<setHeader headerName="X-ONAP-InvocationID">
-				<simple>${exchangeProperty[X-ONAP-InvocationID]}
-				</simple>
-			</setHeader>
-			<setHeader headerName="X-ONAP-PartnerName">
-				<simple>${exchangeProperty[X-ONAP-PartnerName]}
-				</simple>
-			</setHeader>
-			<log loggingLevel="INFO"
-				message="Endpoint to add policies to PDP Group: {{clamp.config.policy.pap.url}}/policy/pap/v1/pdps/policies"></log>
-			<toD
-				uri="{{clamp.config.policy.pap.url}}/policy/pap/v1/pdps/policies?bridgeEndpoint=true&amp;throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&amp;useSystemProperties=true&amp;authUsername={{clamp.config.policy.pap.userName}}&amp;authPassword={{clamp.config.policy.pap.password}}&amp;connectionTimeToLive=5000&amp;httpClient.connectTimeout=10000&amp;httpClient.socketTimeout=20000&amp;authenticationPreemptive=true&amp;connectionClose=true" />
+		<route id="add-all-to-active-pdp-group">
+				<from uri="direct:add-all-to-active-pdp-group"/>
+				<doTry>
+						<log loggingLevel="INFO"
+								message="Adding loop policies to PDP Group: ${exchangeProperty[loopObject].getName()}"/>
+						<to
+								uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Add policies to PDP group')"/>
+						<setBody>
+								<simple>${exchangeProperty[loopObject].getComponent("POLICY").createPoliciesPayloadPdpGroup(exchangeProperty[loopObject])}
+								</simple>
+						</setBody>
+						<setHeader headerName="CamelHttpMethod">
+								<constant>POST</constant>
+						</setHeader>
+						<setHeader headerName="Content-Type">
+								<constant>application/json</constant>
+						</setHeader>
+						<setHeader headerName="X-ONAP-RequestID">
+								<simple>${exchangeProperty[X-ONAP-RequestID]}
+								</simple>
+						</setHeader>
+						<setHeader headerName="X-ONAP-InvocationID">
+								<simple>${exchangeProperty[X-ONAP-InvocationID]}
+								</simple>
+						</setHeader>
+						<setHeader headerName="X-ONAP-PartnerName">
+								<simple>${exchangeProperty[X-ONAP-PartnerName]}
+								</simple>
+						</setHeader>
+						<log loggingLevel="INFO"
+								message="Endpoint to add policies to PDP Group: {{clamp.config.policy.pap.url}}/policy/pap/v1/pdps/policies"></log>
+						<toD
+								uri="{{clamp.config.policy.pap.url}}/policy/pap/v1/pdps/policies?bridgeEndpoint=true&amp;throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&amp;useSystemProperties=true&amp;authUsername={{clamp.config.policy.pap.userName}}&amp;authPassword={{clamp.config.policy.pap.password}}&amp;connectionTimeToLive=5000&amp;httpClient.connectTimeout=10000&amp;httpClient.socketTimeout=20000&amp;authenticationPreemptive=true&amp;connectionClose=true"/>
 
-			<doFinally>
-				<to uri="direct:reset-raise-http-exception-flag" />
-				<to
-					uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()" />
-				<setProperty propertyName="logMessage">
-					<simple>PDP Group push ALL status</simple>
-				</setProperty>
-				<setProperty propertyName="logComponent">
-					<simple>POLICY</simple>
-				</setProperty>
-				<to uri="direct:dump-loop-log-http-response" />
-			</doFinally>
-		</doTry>
-	</route>
+						<doFinally>
+								<to uri="direct:reset-raise-http-exception-flag"/>
+								<to
+										uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
+								<setProperty propertyName="logMessage">
+										<simple>PDP Group push ALL status</simple>
+								</setProperty>
+								<setProperty propertyName="logComponent">
+										<simple>POLICY</simple>
+								</setProperty>
+								<to uri="direct:dump-loop-log-http-response"/>
+						</doFinally>
+				</doTry>
+		</route>
 
-	<route id="remove-all-policy-from-active-pdp-group">
-		<from uri="direct:remove-all-policy-from-active-pdp-group" />
-		<doTry>
-			<log loggingLevel="INFO"
-				message="Removing policies from active PDP group for loop: ${exchangeProperty[loopObject].getName()}" />
-			<to
-				uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Removing policies PDP group')" />
-			<split>
-				<simple>${exchangeProperty[loopObject].getComponent("POLICY").listPolicyNamesPdpGroup(exchangeProperty[loopObject])}
-				</simple>
-				<setProperty propertyName="policyName">
-					<simple>${body}</simple>
-				</setProperty>
-				<setBody>
-					<constant>null</constant>
-				</setBody>
-				<setHeader headerName="CamelHttpMethod">
-					<constant>DELETE</constant>
-				</setHeader>
-				<setHeader headerName="X-ONAP-RequestID">
-					<simple>${exchangeProperty[X-ONAP-RequestID]}
-					</simple>
-				</setHeader>
-				<setHeader headerName="X-ONAP-InvocationID">
-					<simple>${exchangeProperty[X-ONAP-InvocationID]}
-					</simple>
-				</setHeader>
-				<setHeader headerName="X-ONAP-PartnerName">
-					<simple>${exchangeProperty[X-ONAP-PartnerName]}
-					</simple>
-				</setHeader>
-				<log loggingLevel="INFO"
-					message="Endpoint to delete policy from PDP Group: {{clamp.config.policy.pap.url}}/pdps/policies/${exchangeProperty[policyName]}/versions/1.0.0"></log>
-				<toD
-					uri="{{clamp.config.policy.pap.url}}/policy/pap/v1/pdps/policies/${exchangeProperty[policyName]}/versions/1.0.0?bridgeEndpoint=true&amp;useSystemProperties=true&amp;mapHttpMessageHeaders=false&amp;throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&amp;authUsername={{clamp.config.policy.pap.userName}}&amp;authPassword={{clamp.config.policy.pap.password}}&amp;connectionTimeToLive=5000&amp;httpClient.connectTimeout=10000&amp;httpClient.socketTimeout=20000&amp;authenticationPreemptive=true&amp;connectionClose=true" />
-				<setProperty propertyName="logMessage">
-					<simple>${exchangeProperty[policyName]} PDP Group removal status
-					</simple>
-				</setProperty>
-				<setProperty propertyName="logComponent">
-					<simple>POLICY</simple>
-				</setProperty>
-				<to uri="direct:dump-loop-log-http-response" />
-			</split>
-			<doCatch>
-				<exception>java.lang.Exception</exception>
-				<handled>
-					<constant>false</constant>
-				</handled>
-				<setProperty propertyName="logMessage">
-					<simple>PDP Group removal, Error reported: ${exception}</simple>
-				</setProperty>
-				<setProperty propertyName="logComponent">
-					<simple>POLICY</simple>
-				</setProperty>
-				<to uri="direct:dump-loop-log-http-response" />
-			</doCatch>
-			<doFinally>
-				<to uri="direct:reset-raise-http-exception-flag" />
-				<to
-					uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()" />
-			</doFinally>
-		</doTry>
-	</route>
+		<route id="remove-all-policy-from-active-pdp-group">
+				<from uri="direct:remove-all-policy-from-active-pdp-group"/>
+				<doTry>
+						<log loggingLevel="INFO"
+								message="Removing policies from active PDP group for loop: ${exchangeProperty[loopObject].getName()}"/>
+						<to
+								uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Removing policies PDP group')"/>
+						<split>
+								<simple>${exchangeProperty[loopObject].getComponent("POLICY").listPolicyNamesPdpGroup(exchangeProperty[loopObject])}
+								</simple>
+								<setProperty propertyName="policyName">
+										<simple>${body}</simple>
+								</setProperty>
+								<setBody>
+										<constant>null</constant>
+								</setBody>
+								<setHeader headerName="CamelHttpMethod">
+										<constant>DELETE</constant>
+								</setHeader>
+								<setHeader headerName="X-ONAP-RequestID">
+										<simple>${exchangeProperty[X-ONAP-RequestID]}
+										</simple>
+								</setHeader>
+								<setHeader headerName="X-ONAP-InvocationID">
+										<simple>${exchangeProperty[X-ONAP-InvocationID]}
+										</simple>
+								</setHeader>
+								<setHeader headerName="X-ONAP-PartnerName">
+										<simple>${exchangeProperty[X-ONAP-PartnerName]}
+										</simple>
+								</setHeader>
+								<log loggingLevel="INFO"
+										message="Endpoint to delete policy from PDP Group: {{clamp.config.policy.pap.url}}/pdps/policies/${exchangeProperty[policyName]}/versions/1.0.0"></log>
+								<toD
+										uri="{{clamp.config.policy.pap.url}}/policy/pap/v1/pdps/policies/${exchangeProperty[policyName]}/versions/1.0.0?bridgeEndpoint=true&amp;useSystemProperties=true&amp;mapHttpMessageHeaders=false&amp;throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&amp;authUsername={{clamp.config.policy.pap.userName}}&amp;authPassword={{clamp.config.policy.pap.password}}&amp;connectionTimeToLive=5000&amp;httpClient.connectTimeout=10000&amp;httpClient.socketTimeout=20000&amp;authenticationPreemptive=true&amp;connectionClose=true"/>
+								<setProperty propertyName="logMessage">
+										<simple>${exchangeProperty[policyName]} PDP Group removal status
+										</simple>
+								</setProperty>
+								<setProperty propertyName="logComponent">
+										<simple>POLICY</simple>
+								</setProperty>
+								<to uri="direct:dump-loop-log-http-response"/>
+						</split>
+						<doCatch>
+								<exception>java.lang.Exception</exception>
+								<handled>
+										<constant>false</constant>
+								</handled>
+								<setProperty propertyName="logMessage">
+										<simple>PDP Group removal, Error reported: ${exception}</simple>
+								</setProperty>
+								<setProperty propertyName="logComponent">
+										<simple>POLICY</simple>
+								</setProperty>
+								<to uri="direct:dump-loop-log-http-response"/>
+						</doCatch>
+						<doFinally>
+								<to uri="direct:reset-raise-http-exception-flag"/>
+								<to
+										uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
+						</doFinally>
+				</doTry>
+		</route>
 </routes>
\ No newline at end of file
diff --git a/src/test/resources/clds/holmes-old-style-ms.yaml b/src/test/resources/clds/holmes-old-style-ms.yaml
deleted file mode 100644
index 3f0c9a6..0000000
--- a/src/test/resources/clds/holmes-old-style-ms.yaml
+++ /dev/null
@@ -1,117 +0,0 @@
-tosca_definitions_version: cloudify_dsl_1_3
-imports:
-  - http://www.getcloudify.org/spec/cloudify/3.4/types.yaml
-  - https://nexus01.research.att.com:8443/repository/solutioning01-mte2-raw/type_files/docker/2.3.0+t.0.4/node-type.yaml
-  - https://nexus01.research.att.com:8443/repository/solutioning01-mte2-raw/type_files/relationship/1.0.0/node-type.yaml
-  - http://nexus01.research.att.com:8081/repository/solutioning01-mte2-raw/type_files/dmaap/1.2.0/dmaap.yaml
-inputs:
-  dcae_service_location:
-    type: string
-  docker_host_override:
-    type: string
-  topic0_aaf_password:
-    type: string
-  topic0_aaf_username:
-    type: string
-  topic0_client_role:
-    type: string
-  topic1_aaf_password:
-    type: string
-  topic1_aaf_username:
-    type: string
-  topic1_client_role:
-    type: string
-  location_id:
-    type: string
-  service_id:
-    type: string
-  policy_id:
-    type: string
-    default: "CLAMPPolicyTriggerNoaapp_v1_0_29b0578b_dcee_472c_8cdd0.ClosedLoop_860ee9f2_ba64_11e8_a16b_02bd571477fe_TCA_1d13unw"
-node_templates:
-  policy_0:
-    type: dcae.nodes.policy
-    properties:
-      policy_model: policy.nodes.holmes
-      policy_filter: "DCAE.Config_Holmes.*"
-      policy_id:
-        get_input: policy_id
-  docker_host_host:
-    type: dcae.nodes.SelectedDockerHost
-    properties:
-      docker_host_override:
-        get_input: docker_host_override
-      location_id:
-        get_input: dcae_service_location
-  holmes_rule_homes-rule:
-    type: dcae.nodes.DockerContainerForComponentsUsingDmaap
-    properties:
-      application_config:
-        services_calls:
-          - msb_config:
-              concat:
-                - '{{'
-                - get_property:
-                    - SELF
-                    - msb_config
-                    - node_name
-                - '}}'
-        streams_publishes: []
-        streams_subscribes:
-          - sec_measurement_unsecure:
-              aaf_password:
-                get_input: topic0_aaf_password
-              aaf_username:
-                get_input: topic0_aaf_username
-              dmaap_info: <<topic0>>
-              type: message_router
-          - sec_measurement:
-              aaf_password:
-                get_input: topic1_aaf_password
-              aaf_username:
-                get_input: topic1_aaf_username
-              dmaap_info: <<topic1>>
-              type: message_router
-      docker_config:
-        healthcheck:
-          endpoint: api/holmes-rule-mgmt/v1/healthcheck
-          interval: 15s
-          timeout: 1s
-          type: http
-        ports:
-          - 9101:9101
-      image: nexus3.onap.org:10001/onap/holmes/rule-manamgement:latest
-      location_id:
-        get_input: dcae_service_location
-      service_component_type: dcae-analytics-holmes-rule-manamgement
-      streams_publishes: []
-      streams_subscribes:
-        - client_role:
-            get_input: topic0_client_role
-          location:
-            get_input: dcae_service_location
-          name: topic0
-          type: message_router
-        - client_role:
-            get_input: topic1_client_role
-          location:
-            get_input: dcae_service_location
-          name: topic1
-          type: message_router
-    relationships:
-      - target: docker_host_host
-        type: dcae.relationships.component_contained_in
-      - target: topic0
-        type: dcae.relationships.subscribe_to_events
-      - target: topic1
-        type: dcae.relationships.subscribe_to_events
-      - target: policy_0
-        type: dcae.relationships.depends_on
-  topic0:
-    type: dcae.nodes.Topic
-    properties:
-      topic_name: ''
-  topic1:
-    type: dcae.nodes.Topic
-    properties:
-      topic_name: ''
diff --git a/src/test/resources/clds/single-microservice-fragment-valid.yaml b/src/test/resources/clds/single-microservice-fragment-invalid.yaml
similarity index 100%
rename from src/test/resources/clds/single-microservice-fragment-valid.yaml
rename to src/test/resources/clds/single-microservice-fragment-invalid.yaml
diff --git a/src/test/resources/clds/single-microservice-fragment-valid-with-version.yaml b/src/test/resources/clds/single-microservice-fragment-valid-with-version.yaml
new file mode 100644
index 0000000..ae31fb1
--- /dev/null
+++ b/src/test/resources/clds/single-microservice-fragment-valid-with-version.yaml
@@ -0,0 +1,21 @@
+second_app:
+  type: dcae.nodes.ContainerizedServiceComponentUsingDmaap
+  properties:
+    service_component_type: dcaegen2-analytics-tca
+    service_component_name_override: second_app
+    image: { get_input: second_app_docker_image }
+    name: second_app
+    policy_id:
+    policy_model_id: "type1"
+    policy_model_version: "10.0.0"
+  interfaces:
+    cloudify.interfaces.lifecycle:
+      start:
+        inputs:
+          envs:
+            grpc_server.host: "first_app.onap"
+            dmaap_ip: {get_input: dmaap_ip}
+            dmapp_topic: {get_input: dmaap_topic}
+            policy_id: {get_input: policy_id}
+          ports:
+            - 8080:8080
diff --git a/src/test/resources/clds/tca-old-style-ms.yaml b/src/test/resources/clds/tca-old-style-ms.yaml
deleted file mode 100644
index b976190..0000000
--- a/src/test/resources/clds/tca-old-style-ms.yaml
+++ /dev/null
@@ -1,169 +0,0 @@
-tosca_definitions_version: cloudify_dsl_1_3
-imports:
-  - "http://www.getcloudify.org/spec/cloudify/3.4/types.yaml"
-  - https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.plugins/R2/dockerplugin/3.2.0/dockerplugin_types.yaml
-  - https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.plugins/R2/relationshipplugin/1.0.0/relationshipplugin_types.yaml
-  - https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.plugins/R2/dcaepolicyplugin/2.3.0/dcaepolicyplugin_types.yaml
-
-inputs:
-  dh_override:
-    type: string
-    default: "component_dockerhost"
-  dh_location_id:
-    type: string
-    default: "zone1"
-  aaiEnrichmentHost:
-    type: string
-    default: "none"
-  aaiEnrichmentPort:
-    type: string
-    default: 8443
-  enableAAIEnrichment:
-    type: string
-    default: false
-  dmaap_host:
-    type: string
-    default: dmaap.onap-message-router
-  dmaap_port:
-    type: string
-    default: 3904
-  enableRedisCaching:
-    type: string
-    default: false
-  redisHosts:
-    type: string
-  tag_version:
-    type: string
-    default: "nexus3.onap.org:10001/onap//onap/org.onap.dcaegen2.deployments.tca-cdap-container:1.0.0"
-  consul_host:
-    type: string
-    default: consul-server.onap-consul
-  consul_port:
-    type: string
-    default: "8500"
-  cbs_host:
-    type: string
-    default: "config-binding-service.dcae"
-  cbs_port:
-    type: string
-    default: "10000"
-  policy_id:
-    type: string
-    default: "none"
-  external_port:
-    type: string
-    description: "Port for CDAPgui to be exposed"
-    default: "32010"
-
-node_templates:
-  docker_service_host:
-    properties:
-      docker_host_override:
-        get_input: dh_override
-      location_id:
-        get_input: dh_location_id
-    type: dcae.nodes.SelectedDockerHost
-  tca_docker:
-    relationships:
-      - type: dcae.relationships.component_contained_in
-        target: docker_service_host
-      - target: tca_policy
-        type: cloudify.relationships.depends_on
-    type: dcae.nodes.DockerContainerForComponentsUsingDmaap
-    properties:
-      application_config:
-        app_config:
-          appDescription: DCAE Analytics Threshold Crossing Alert Application
-          appName: dcae-tca
-          tcaAlertsAbatementTableName: TCAAlertsAbatementTable
-          tcaAlertsAbatementTableTTLSeconds: '1728000'
-          tcaSubscriberOutputStreamName: TCASubscriberOutputStream
-          tcaVESAlertsTableName: TCAVESAlertsTable
-          tcaVESAlertsTableTTLSeconds: '1728000'
-          tcaVESMessageStatusTableName: TCAVESMessageStatusTable
-          tcaVESMessageStatusTableTTLSeconds: '86400'
-          thresholdCalculatorFlowletInstances: '2'
-        app_preferences:
-          aaiEnrichmentHost:
-            get_input: aaiEnrichmentHost
-          aaiEnrichmentIgnoreSSLCertificateErrors: 'true'
-          aaiEnrichmentPortNumber: '8443'
-          aaiEnrichmentProtocol: https
-          aaiEnrichmentUserName: DCAE
-          aaiEnrichmentUserPassword: DCAE
-          aaiVMEnrichmentAPIPath: /aai/v11/search/nodes-query
-          aaiVNFEnrichmentAPIPath: /aai/v11/network/generic-vnfs/generic-vnf
-          enableAAIEnrichment:
-            get_input: enableAAIEnrichment
-          enableRedisCaching:
-            get_input: enableRedisCaching
-          redisHosts:
-            get_input: redisHosts
-          enableAlertCEFFormat: 'false'
-          publisherContentType: application/json
-          publisherHostName:
-            get_input: dmaap_host
-          publisherHostPort:
-            get_input: dmaap_port
-          publisherMaxBatchSize: '1'
-          publisherMaxRecoveryQueueSize: '100000'
-          publisherPollingInterval: '20000'
-          publisherProtocol: http
-          publisherTopicName: unauthenticated.DCAE_CL_OUTPUT
-          subscriberConsumerGroup: OpenDCAE-c12
-          subscriberConsumerId: c12
-          subscriberContentType: application/json
-          subscriberHostName:
-            get_input: dmaap_host
-          subscriberHostPort:
-            get_input: dmaap_port
-          subscriberMessageLimit: '-1'
-          subscriberPollingInterval: '30000'
-          subscriberProtocol: http
-          subscriberTimeoutMS: '-1'
-          subscriberTopicName: unauthenticated.SEC_MEASUREMENT_OUTPUT
-          tca_policy_default: '{"domain":"measurementsForVfScaling","metricsPerEventName":[{"eventName":"vFirewallBroadcastPackets","controlLoopSchemaType":"VNF","policyScope":"DCAE","policyName":"DCAE.Config_tca-hi-lo","policyVersion":"v0.0.1","thresholds":[{"closedLoopControlName":"ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a","version":"1.0.2","fieldPath":"$.event.measurementsForVfScalingFields.vNicUsageArray[*].receivedTotalPacketsDelta","thresholdValue":300,"direction":"LESS_OR_EQUAL","severity":"MAJOR","closedLoopEventStatus":"ONSET"},{"closedLoopControlName":"ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a","version":"1.0.2","fieldPath":"$.event.measurementsForVfScalingFields.vNicUsageArray[*].receivedTotalPacketsDelta","thresholdValue":700,"direction":"GREATER_OR_EQUAL","severity":"CRITICAL","closedLoopEventStatus":"ONSET"}]},{"eventName":"vLoadBalancer","controlLoopSchemaType":"VM","policyScope":"DCAE","policyName":"DCAE.Config_tca-hi-lo","policyVersion":"v0.0.1","thresholds":[{"closedLoopControlName":"ControlLoop-vDNS-6f37f56d-a87d-4b85-b6a9-cc953cf779b3","version":"1.0.2","fieldPath":"$.event.measurementsForVfScalingFields.vNicUsageArray[*].receivedTotalPacketsDelta","thresholdValue":300,"direction":"GREATER_OR_EQUAL","severity":"CRITICAL","closedLoopEventStatus":"ONSET"}]},{"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"}]}]}'
-      service_component_type: dcaegen2-analytics_tca
-      docker_config:
-        healthcheck:
-          endpoint: /healthcheck
-          interval: 15s
-          timeout: 1s
-          type: http
-      image:
-        get_input: tag_version
-    interfaces:
-      cloudify.interfaces.lifecycle:
-        start:
-          inputs:
-            envs:
-              DMAAPHOST:
-                { get_input: dmaap_host }
-              DMAAPPORT:
-                { get_input: dmaap_port }
-              DMAAPPUBTOPIC: "unauthenticated.DCAE_CL_OUTPUT"
-              DMAAPSUBTOPIC: "unauthenticated.SEC_MEASUREMENT_OUTPUT"
-              AAIHOST:
-                { get_input: aaiEnrichmentHost }
-              AAIPORT:
-                { get_input: aaiEnrichmentPort }
-              CONSUL_HOST:
-                { get_input: consul_host }
-              CONSUL_PORT:
-                { get_input: consul_port }
-              CBS_HOST:
-                { get_input: cbs_host }
-              CBS_PORT:
-                { get_input: cbs_port }
-              CONFIG_BINDING_SERVICE: "config_binding_service"
-            ports:
-              - concat: ["11011:", { get_input: external_port }]
-        stop:
-          inputs:
-            cleanup_image: true
-  tca_policy:
-    type: dcae.nodes.policy
-    properties:
-      policy_id:
-        get_input: policy_id
-
diff --git a/src/test/resources/example/sdc/blueprint-dcae/holmes.yaml b/src/test/resources/example/sdc/blueprint-dcae/holmes.yaml
deleted file mode 100644
index f180a7d..0000000
--- a/src/test/resources/example/sdc/blueprint-dcae/holmes.yaml
+++ /dev/null
@@ -1,174 +0,0 @@
-tosca_definitions_version: cloudify_dsl_1_3
-imports:
-- http://www.getcloudify.org/spec/cloudify/3.4/types.yaml
-- https://nexus01.research.att.com:8443/repository/solutioning01-mte2-raw/type_files/docker/2.3.0+t.0.4/node-type.yaml
-- https://nexus01.research.att.com:8443/repository/solutioning01-mte2-raw/type_files/relationship/1.0.0/node-type.yaml
-- http://nexus01.research.att.com:8081/repository/solutioning01-mte2-raw/type_files/dmaap/1.2.0/dmaap.yaml
-inputs:
-  dcae_service_location:
-    type: string
-  docker_host_override:
-    type: string
-  topic0_aaf_password:
-    type: string
-  topic0_aaf_username:
-    type: string
-  topic0_client_role:
-    type: string
-  topic1_aaf_password:
-    type: string
-  topic1_aaf_username:
-    type: string
-  topic1_client_role:
-    type: string
-node_templates:
-  policy_0:
-    type: dcae.nodes.policy
-    properties:
-      policy_model: policy.nodes.holmes
-      policy_filter: "DCAE.Config_Holmes.*"
-  docker_host_host:
-    type: dcae.nodes.SelectedDockerHost
-    properties:
-      docker_host_override:
-        get_input: docker_host_override
-      location_id:
-        get_input: dcae_service_location
-  holmes-rule_homes-rule:
-    type: dcae.nodes.DockerContainerForComponentsUsingDmaap
-    properties:
-      application_config:
-        holmes.default.rule.volte.scenario1: 'package dcae.ves.test
-
-          import org.onap.some.related.packages;
-
-          rule"SameVNF_Relation_Rule"
-
-          salience 120
-
-          no-loop true
-
-          when
-
-          $root : VesAlarm(
-
-          $sourceId: sourceId, sourceId != null && !sourceId.equals(""),
-
-          specificProblem in ( "LSS_cpiPCSCFFailReg(121297)", "LSS_cpiSIPRetransmitInvite(120267)" ),
-
-          $eventId: eventId)
-
-          $child : VesAlarm( eventId != $eventId,
-
-          CorrelationUtil.getInstance().isTopologicallyRelated(sourceId, $sourceId),
-
-          specificProblem in ("LSS_externalLinkDown(4271)","LSS_failedAttachReqsRateExceeded(4272)"),
-
-          this after [-60s, 60s] $root)
-
-          then
-
-          DmaapService.publishResult(...);
-
-          end'
-        holmes.default.rule.volte.scenario2: 'package dcae.ves.test
-
-          import org.onap.some.related.packages;
-
-          rule"SameVNF_Relation_Rule_1"
-
-          salience 120
-
-          no-loop true
-
-          when
-
-          $root : VesAlarm(
-
-          $sourceId: sourceId, sourceId != null && !sourceId.equals(""),
-
-          specificProblem in ( "LSS_cpiPCSCFFailReg(121297)", "LSS_cpiSIPRetransmitInvite(120267)" ),
-
-          $eventId: eventId)
-
-          $child : VesAlarm( eventId != $eventId,
-
-          CorrelationUtil.getInstance().isTopologicallyRelated(sourceId, $sourceId),
-
-          specificProblem in ("LSS_externalLinkDown(4271)","LSS_failedAttachReqsRateExceeded(4272)"),
-
-          this after [-60s, 60s] $root)
-
-          then
-
-          DmaapService.publishResult(...);
-
-          end'
-        services_calls:
-        - msb_config:
-            concat:
-            - '{{'
-            - get_property:
-              - SELF
-              - msb_config
-              - node_name
-            - '}}'
-        streams_publishes: []
-        streams_subscribes:
-        - sec_measurement_unsecure:
-            aaf_password:
-              get_input: topic0_aaf_password
-            aaf_username:
-              get_input: topic0_aaf_username
-            dmaap_info: <<topic0>>
-            type: message_router
-        - sec_measurement:
-            aaf_password:
-              get_input: topic1_aaf_password
-            aaf_username:
-              get_input: topic1_aaf_username
-            dmaap_info: <<topic1>>
-            type: message_router
-      docker_config:
-        healthcheck:
-          endpoint: api/holmes-rule-mgmt/v1/healthcheck
-          interval: 15s
-          timeout: 1s
-          type: http
-        ports:
-        - 9101:9101
-      image: nexus3.onap.org:10001/onap/holmes/rule-manamgement:latest
-      location_id:
-        get_input: dcae_service_location
-      service_component_type: dcae-analytics-holmes-rule-manamgement
-      streams_publishes: []
-      streams_subscribes:
-      - client_role:
-          get_input: topic0_client_role
-        location:
-          get_input: dcae_service_location
-        name: topic0
-        type: message_router
-      - client_role:
-          get_input: topic1_client_role
-        location:
-          get_input: dcae_service_location
-        name: topic1
-        type: message_router
-    relationships:
-    - target: docker_host_host
-      type: dcae.relationships.component_contained_in
-    - target: topic0
-      type: dcae.relationships.subscribe_to_events
-    - target: topic1
-      type: dcae.relationships.subscribe_to_events
-    - target: policy_0
-      type: dcae.relationships.depends_on
-  topic0:
-    type: dcae.nodes.Topic
-    properties:
-      topic_name: ''
-  topic1:
-    type: dcae.nodes.Topic
-    properties:
-      topic_name: ''
diff --git a/src/test/resources/example/sdc/blueprint-dcae/not-recognized.yaml b/src/test/resources/example/sdc/blueprint-dcae/not-recognized.yaml
deleted file mode 100644
index 6522885..0000000
--- a/src/test/resources/example/sdc/blueprint-dcae/not-recognized.yaml
+++ /dev/null
@@ -1,130 +0,0 @@
-tosca_definitions_version: cloudify_dsl_1_3
-imports:
-- http://dockercentral.it.att.com:8093/nexus/repository/rawcentral/com.att.dcae.controller/type_files/dockerplugin/2.4.0+t.0.8/node-type.yaml
-- http://dockercentral.it.att.com:8093/nexus/repository/rawcentral/com.att.dcae.controller/type_files/dmaap/1.2.0+t.0.9/dmaap.yaml
-- http://dockercentral.it.att.com:8093/nexus/repository/rawcentral/com.att.dcae.controller/type_files/relationship/1.0.0+t.0.1/relationship-types.yaml
-inputs:
-  commonEventHeader.domain:
-    type: string
-  commonEventHeader.version:
-    type: string
-  dcae_service_location:
-    type: string
-  docker_host_override:
-    type: string
-    default: ''
-  elementType:
-    type: string
-  feed_id:
-    type: string
-  mappingType:
-    type: string
-  measurementsForVfScalingFields.measurementsForVfScalingVersion:
-    type: string
-  phases.docker_map.phaseName:
-    type: string
-  topic1_aaf_password:
-    type: string
-  topic1_aaf_username:
-    type: string
-  topic1_client_role:
-    type: string
-node_templates:
-  DockerMap_n.1519416493392.3_DockerMap:
-    type: dcae.nodes.DockerContainerForComponentsUsingDmaap
-    properties:
-      application_config:
-        commonEventHeader.domain:
-          get_input: commonEventHeader.domain
-        commonEventHeader.version:
-          get_input: commonEventHeader.version
-        csvToVesJson: '{"processing":[{"phase":"pmossFoiPhase","filter":{"class":"Contains","string":"${file}","value":"NOKvMRF"},"processors":[{"class":"LogEvent","title":"PM-FOIEvent-Received","logName":"com.att.gfp.dcae.eventProcessor.input","logLevel":"DEBUG"},{"class":"RunPhase","phase":"vFoiNokRunPhase"}]},{"phase":"vFoiNokRunPhase","comments":"generic parsing","processors":[{"replace":",","field":"data","class":"ReplaceText","find":";"},{"replace":",","field":"file","class":"ReplaceText","find":"_"}]},{"phase":"vFoiNokRunPhase","filter":{"class":"Contains","string":"${data[1]}","value":"Begin date"},"processors":[{"class":"ExtractText","field":"event.commonEventHeader.startEpochMicrosec","value":"${data[1]}","regex":".*Begin date,([^,]*),.*"},{"class":"DateFormatter","value":"${event.commonEventHeader.startEpochMicrosec}","fromFormat":"MM/dd/yy HH:mm:ss a","fromTz":"GMT","toField":"event.commonEventHeader.startEpochMicrosec","toFormat":"#ms","toTz":"#ms"}]},{"phase":"vFoiNokRunPhase","filter":{"class":"Contains","string":"${data[2]}","value":"End date"},"processors":[{"class":"ExtractText","field":"event.commonEventHeader.lastEpochMicrosec","value":"${data[2]}","regex":".*End date,([^,]*),.*"},{"class":"DateFormatter","value":"${event.commonEventHeader.lastEpochMicrosec}","fromFormat":"MM/dd/yy HH:mm:ss a","fromTz":"GMT","toField":"event.commonEventHeader.lastEpochMicrosec","toFormat":"#ms","toTz":"#ms"},{"class":"DateFormatter","value":"${event.commonEventHeader.lastEpochMicrosec}","fromFormat":"#ms","fromTz":"#ms","toField":"event.commonEventHeader.internalHeaderFields.DATETIMEUTC","toFormat":"yyyyMMddHHmmss","toTz":"GMT"}]},{"phase":"vFoiNokRunPhase","processors":[{"class":"ExtractText","field":"event.measurementsForVfScalingFields.additionalMeasurements.arrayOfFields[0].value","value":"${data[7]}","regex":".*CpuSys,+(\\d+,){3}.*"},{"class":"ReplaceText","replace":"","field":"event.measurementsForVfScalingFields.additionalMeasurements.arrayOfFields[0].value","find":","},{"class":"ExtractText","field":"event.measurementsForVfScalingFields.additionalMeasurements.arrayOfFields[1].value","value":"${data[5]}","regex":".*CpuUsage,+(\\d+,){3}.*"},{"class":"ReplaceText","replace":"","field":"event.measurementsForVfScalingFields.additionalMeasurements.arrayOfFields[1].value","find":","},{"class":"ExtractText","field":"event.measurementsForVfScalingFields.additionalMeasurements.arrayOfFields[2].value","value":"${data[7]}","regex":".*CpuSys,+(\\d+,){2}.*"},{"class":"ReplaceText","replace":"","field":"event.measurementsForVfScalingFields.additionalMeasurements.arrayOfFields[2].value","find":","},{"class":"ExtractText","field":"event.measurementsForVfScalingFields.additionalMeasurements.arrayOfFields[3].value","value":"${data[5]}","regex":".*CpuUsage,+(\\d+,){2}.*"},{"class":"ReplaceText","replace":"","field":"event.measurementsForVfScalingFields.additionalMeasurements.arrayOfFields[3].value","find":","}]},{"phase":"vFoiNokRunPhase","processors":[{"class":"ExtractText","field":"event.commonEventHeader.eventName","value":"${file}","regex":"([^,]*),.*"},{"class":"ExtractText","field":"event.commonEventHeader.reportingEntityName","value":"${file}","regex":".*,([^,]*)\\..*"}]},{"phase":"vFoiNokRunPhase","comments":"generic parsing","processors":[{"class":"Set","updates":{"event.commonEventHeader.lastEpochMicrosec":"${event.commonEventHeader.lastEpochMicrosec}000","event.commonEventHeader.startEpochMicrosec":"${event.commonEventHeader.startEpochMicrosec}000","event.commonEventHeader.domain":"measurementsForVfScaling","event.commonEventHeader.eventName":"Mfvs_${event.commonEventHeader.eventName}","event.commonEventHeader.eventType":"csv2ves","event.commonEventHeader.priority":"Normal","event.commonEventHeader.sequence":0,"event.commonEventHeader.sourceName":"${event.commonEventHeader.reportingEntityName}","event.commonEventHeader.version":3.0,"event.commonEventHeader.eventId":"%{now.ms}","event.commonEventHeader.internalHeaderFields.dbTableSuffix":"","event.measurementsForVfScalingFields.measurementInterval":900,"event.measurementsForVfScalingFields.measurementsForVfScalingVersion":2.0,"event.measurementsForVfScalingFields.additionalMeasurements.name":"csv2ves","event.measurementsForVfScalingFields.additionalMeasurements.arrayOfFields[0].name":"CpuSysMax","event.measurementsForVfScalingFields.additionalMeasurements.arrayOfFields[1].name":"CpuUsageMax","event.measurementsForVfScalingFields.additionalMeasurements.arrayOfFields[2].name":"CpuSysAverage","event.measurementsForVfScalingFields.additionalMeasurements.arrayOfFields[3].name":"CpuUsageAverage"}},{"class":"DateFormatter","value":"${event.commonEventHeader.eventId}","fromFormat":"#ms","fromTz":"#ms","toField":"event.commonEventHeader.eventId","toFormat":"yyyyMMddHHmmssSSS","toTz":"GMT"}]},{"phase":"vFoiNokRunPhase","processors":[{"class":"Clear","fields":["data","file"]},{"class":"LogText","logLevel":"INFO","logText":"Finished-PM-FOIEvent-parsing"},{"class":"LogEvent","title":"PM-FOIEvent-Received-Output"},{"class":"RunPhase","phase":"foiEventToDmaapPhase"}]}]}'
-        elementType:
-          get_input: elementType
-        isSelfServeComponent: 'True'
-        mappingType:
-          get_input: mappingType
-        measurementsForVfScalingFields.measurementsForVfScalingVersion:
-          get_input: measurementsForVfScalingFields.measurementsForVfScalingVersion
-        phases.docker_map.phaseName:
-          get_input: phases.docker_map.phaseName
-        services_calls: {}
-        streams_publishes:
-          DCAE-VES-PM-EVENT:
-            aaf_password:
-              get_input: topic1_aaf_password
-            aaf_username:
-              get_input: topic1_aaf_username
-            dmaap_info: <<topic1_n.1519416493404.5>>
-            type: message_router
-        streams_subscribes:
-          DCAE_PM_DATA_C_M:
-            dmaap_info: <<feed_n.1519416394214.2>>
-            type: data_router
-        useDtiConfig: 'False'
-      docker_config:
-        healthcheck:
-          interval: 300s
-          script: /opt/app/vec/bin/common/HealthCheck_DockerMap.sh
-          timeout: 15s
-          type: docker
-        volumes:
-        - container:
-            bind: /opt/app/dcae-certificate
-          host:
-            path: /opt/app/dcae-certificate
-        - container:
-            bind: /opt/app/dmd/log/AGENT
-          host:
-            path: /opt/logs/DCAE/dockermap/dmd/AGENT
-        - container:
-            bind: /opt/app/dmd/log/WATCHER
-          host:
-            path: /opt/logs/DCAE/dockermap/dmd/WATCHER
-        - container:
-            bind: /opt/app/vec/logs/DCAE
-          host:
-            path: /opt/logs/DCAE/dockermap/dockermap-logs
-        - container:
-            bind: /opt/app/vec/archive/data
-          host:
-            path: /opt/data/DCAE/dockermap/dockermap-archive
-      image: dockercentral.it.att.com:5100/com.att.dcae.controller/dcae-controller-dockermap:18.02-004
-      location_id:
-        get_input: dcae_service_location
-      service_component_type: dcae.collectors.docker.map.pm
-      streams_publishes:
-      - client_role:
-          get_input: topic1_client_role
-        location:
-          get_input: dcae_service_location
-        name: topic1_n.1519416493404.5
-        type: message_router
-      streams_subscribes:
-      - location:
-          get_input: dcae_service_location
-        name: feed_n.1519416394214.2
-        type: data_router
-    relationships:
-    - target: docker_host_host
-      type: dcae.relationships.component_contained_in
-    - target: feed_n.1519416394214.2
-      type: dcae.relationships.subscribe_to_files
-    - target: topic1_n.1519416493404.5
-      type: dcae.relationships.publish_events
-  docker_host_host:
-    type: dcae.nodes.SelectedDockerHost
-    properties:
-      docker_host_override:
-        get_input: docker_host_override
-      location_id:
-        get_input: dcae_service_location
-  feed_n.1519416394214.2:
-    type: dcae.nodes.ExistingFeed
-    properties:
-      feed_id:
-        get_input: feed_id
-  topic1_n.1519416493404.5:
-    type: dcae.nodes.Topic
-    properties:
-      topic_name: DCAE-VES-PM-EVENT-v1
diff --git a/src/test/resources/example/sdc/blueprint-dcae/prop-text-for-tca-2.json b/src/test/resources/example/sdc/blueprint-dcae/prop-text-for-tca-2.json
deleted file mode 100644
index d7a5416..0000000
--- a/src/test/resources/example/sdc/blueprint-dcae/prop-text-for-tca-2.json
+++ /dev/null
@@ -1,48 +0,0 @@
-{
-	"global": [
-		{
-			"name": "service",
-			"value": [
-				"4cc5b45a-1f63-4194-8100-cd8e14248c92"
-			]
-		},
-		{
-			"name": "vf",
-			"value": [
-				"023a3f0d-1161-45ff-b4cf-8918a8ccf3ad"
-			]
-		},
-		{
-			"name": "actionSet",
-			"value": [
-				"vnfRecipe"
-			]
-		},
-		{
-			"name": "location",
-			"value": [
-				"DC1"
-			]
-		},
-		{
-			"name": "deployParameters",
-			"value": {
-				"aaiEnrichmentHost": "aai.onap.svc.cluster.local",
-				"aaiEnrichmentPort": "8443",
-				"enableAAIEnrichment": true,
-				"dmaap_host": "message-router.onap",
-				"dmaap_port": "3904",
-				"enableRedisCaching": false,
-				"redisHosts": "dcae-redis.onap.svc.cluster.local:6379",
-				"tag_version": "nexus3.onap.org:10001/onap/org.onap.dcaegen2.deployments.tca-cdap-container:1.1.1",
-				"consul_host": "consul-server.onap",
-				"consul_port": "8500",
-				"cbs_host": "config-binding-servicel",
-				"cbs_port": "10000",
-				"external_port": "32012",
-				"policy_model_id": "onap.policies.monitoring.cdap.tca.hi.lo.app",
-				"policy_id": "AUTO_GENERATED_POLICY_ID_AT_SUBMIT"
-			}
-		}
-	]
-}
\ No newline at end of file
diff --git a/src/test/resources/example/sdc/blueprint-dcae/prop-text-for-tca-3.json b/src/test/resources/example/sdc/blueprint-dcae/prop-text-for-tca-3.json
deleted file mode 100644
index 012c46e..0000000
--- a/src/test/resources/example/sdc/blueprint-dcae/prop-text-for-tca-3.json
+++ /dev/null
@@ -1,48 +0,0 @@
-{
-	"global": [
-		{
-			"name": "service",
-			"value": [
-				"4cc5b45a-1f63-4194-8100-cd8e14248c92"
-			]
-		},
-		{
-			"name": "vf",
-			"value": [
-				"07e266fc-49ab-4cd7-8378-ca4676f1b9ec"
-			]
-		},
-		{
-			"name": "actionSet",
-			"value": [
-				"vnfRecipe"
-			]
-		},
-		{
-			"name": "location",
-			"value": [
-				"DC1"
-			]
-		},
-		{
-			"name": "deployParameters",
-			"value": {
-				"aaiEnrichmentHost": "aai.onap.svc.cluster.local",
-				"aaiEnrichmentPort": "8443",
-				"enableAAIEnrichment": true,
-				"dmaap_host": "message-router.onap.svc.cluster.local",
-				"dmaap_port": "3904",
-				"enableRedisCaching": false,
-				"redisHosts": "dcae-redis.onap.svc.cluster.local:6379",
-				"tag_version": "nexus3.onap.org:10001/onap/org.onap.dcaegen2.deployments.tca-cdap-container:1.1.0-STAGING-latest",
-				"consul_host": "consul-server.onap.svc.cluster.local",
-				"consul_port": "8500",
-				"cbs_host": "config-binding-service.dcae.svc.cluster.local",
-				"cbs_port": "10000",
-				"external_port": "32012",
-				"policy_id": "AUTO_GENERATED_POLICY_ID_AT_SUBMIT",
-				"policy_model_id": "onap.policies.monitoring.cdap.tca.hi.lo.app"
-			}
-		}
-	]
-}
\ No newline at end of file
diff --git a/src/test/resources/example/sdc/blueprint-dcae/prop-text-for-tca.json b/src/test/resources/example/sdc/blueprint-dcae/prop-text-for-tca.json
deleted file mode 100644
index ce3158d..0000000
--- a/src/test/resources/example/sdc/blueprint-dcae/prop-text-for-tca.json
+++ /dev/null
@@ -1,36 +0,0 @@
-{
-	"global": [
-		{
-			"name": "service",
-			"value": [
-				"4cc5b45a-1f63-4194-8100-cd8e14248c92"
-			]
-		},
-		{
-			"name": "vf",
-			"value": [
-				"07e266fc-49ab-4cd7-8378-ca4676f1b9ec"
-			]
-		},
-		{
-			"name": "actionSet",
-			"value": [
-				"vnfRecipe"
-			]
-		},
-		{
-			"name": "location",
-			"value": [
-				"DC1"
-			]
-		},
-		{
-			"name": "deployParameters",
-			"value": {
-				"location_id": "",
-				"service_id": "",
-				"policy_id": "AUTO_GENERATED_POLICY_ID_AT_SUBMIT"
-			}
-		}
-	]
-}
diff --git a/src/test/resources/logback.xml b/src/test/resources/logback.xml
index 07e5878..c71bcba 100644
--- a/src/test/resources/logback.xml
+++ b/src/test/resources/logback.xml
@@ -1,2 +1,91 @@
 <!-- Empty Configuration to prevent creating log files by Units Tests (e.g LoggingUtilsTest) ! -->
-<configuration />
+<configuration>
+    <jmxConfigurator />
+    <!-- Example evaluator filter applied against console appender -->
+    <property
+        name="p_tim"
+        value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}" />
+    <property
+        name="p_lvl"
+        value="%level" />
+    <property
+        name="p_log"
+        value="%logger" />
+    <property
+        name="p_mdc"
+        value="%replace(%replace(%mdc){'\t','\\\\t'}){'\n', '\\\\n'}" />
+    <property
+        name="p_msg"
+        value="%replace(%replace(%msg){'\t', '\\\\t'}){'\n','\\\\n'}" />
+    <property
+        name="p_exc"
+        value="%replace(%replace(%rootException){'\t', '\\\\t'}){'\n','\\\\n'}" />
+    <property
+        name="p_mak"
+        value="%replace(%replace(%marker){'\t', '\\\\t'}){'\n','\\\\n'}" />
+    <property
+        name="p_thr"
+        value="%thread" />
+    <property
+        name="defaultPattern"
+        value="%nopexception${p_tim}\t${p_thr}\t${p_lvl}\t${p_log}\t${p_mdc}\t${p_msg}\t${p_exc}\t${p_mak}\t%n" />
+    <property
+        name="debugPattern"
+        value="%nopexception${p_tim}|${p_lvl}|${p_mdc}|${p_exc}|%msg%n" />
+
+    <!-- Example evaluator filter applied against console appender -->
+    <appender
+        name="STDOUT"
+        class="ch.qos.logback.core.ConsoleAppender">
+        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+            <level>INFO</level>
+        </filter>
+        <encoder>
+            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{1024} - %msg%n
+            </pattern>
+        </encoder>
+    </appender>
+    <logger
+        name="org.onap.aaf"
+        level="DEBUG">
+        <appender-ref ref="STDOUT" />
+    </logger>
+    <logger
+        name="org.apache"
+        level="DEBUG">
+        <appender-ref ref="STDOUT" />
+    </logger>
+    <!-- Spring related loggers -->
+    <logger
+        name="org.springframework"
+        level="DEBUG">
+        <appender-ref ref="STDOUT" />
+    </logger>
+
+    <!-- CLDS related loggers -->
+    <logger
+        name="org.onap.clamp"
+        level="DEBUG">
+        <appender-ref ref="STDOUT" />
+    </logger>
+
+    <!-- CLDS related loggers -->
+    <logger
+        name="com.att.eelf.error"
+        level="OFF">
+        <appender-ref ref="STDOUT" />
+    </logger>
+   
+    <logger
+        name="ch.qos.logback.classic"
+        level="INFO" />
+    <logger
+        name="ch.qos.logback.core"
+        level="INFO" />
+
+    <!-- logback jms appenders & loggers definition ends here -->
+
+    <root level="DEBUG">
+        <appender-ref ref="STDOUT" />
+    </root>
+</configuration>
diff --git a/src/test/resources/tosca/dcea_blueprint.yml b/src/test/resources/tosca/dcea_blueprint.yml
deleted file mode 100644
index 0d3ea04..0000000
--- a/src/test/resources/tosca/dcea_blueprint.yml
+++ /dev/null
@@ -1,170 +0,0 @@
-#
-# ============LICENSE_START====================================================
-# =============================================================================
-# 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======================================================
-
-tosca_definitions_version: cloudify_dsl_1_3
-
-description: >
-  This blueprint deploys/manages the TCA module as a Docker container
-
-imports:
-  - http://www.getcloudify.org/spec/cloudify/3.4/types.yaml
-  - https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.plugins/R4/k8splugin/1.4.4/k8splugin_types.yaml
-  - https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.plugins/R4/dcaepolicyplugin/2.3.0/dcaepolicyplugin_types.yaml
-inputs:
-  aaiEnrichmentHost:
-    type: string
-    default: "aai.onap.svc.cluster.local"
-  aaiEnrichmentPort:
-    type: string
-    default: "8443"
-  enableAAIEnrichment:
-    type: string
-    default: true
-  dmaap_host:
-    type: string
-    default: message-router
-  dmaap_port:
-    type: string
-    default: "3904"
-  enableRedisCaching:
-    type: string
-    default: false
-  redisHosts:
-    type: string
-    default: dcae-redis:6379
-  tag_version:
-    type: string
-    default: "nexus3.onap.org:10001/onap/org.onap.dcaegen2.deployments.tca-cdap-container:1.1.0"
-  consul_host:
-    type: string
-    default: consul-server
-  consul_port:
-    type: string
-    default: "8500"
-  cbs_host:
-    type: string
-    default:
-      test:
-        test: test
-  cbs_port:
-    type: string
-    default: "10000"
-  policy_id:
-    type: string
-    default: "none"
-  external_port:
-    type: string
-    description: Kubernetes node port on which CDAPgui is exposed
-    default: "32010"
-
-node_templates:
-  tca_k8s:
-    type: dcae.nodes.ContainerizedServiceComponent
-    relationships:
-      - target: tca_policy
-        type: cloudify.relationships.depends_on
-    properties:
-      service_component_type: 'dcaegen2-analytics-tca'
-      docker_config: {}
-      image:
-        get_input: tag_version
-      log_info:
-        log_directory: "/opt/app/TCAnalytics/logs"
-      application_config:
-        app_config:
-          appDescription: DCAE Analytics Threshold Crossing Alert Application
-          appName: dcae-tca-ak-serv
-          tcaAlertsAbatementTableName: TCAAlertsAbatementTable
-          tcaAlertsAbatementTableTTLSeconds: '1728000'
-          tcaSubscriberOutputStreamName: TCASubscriberOutputStream
-          tcaVESAlertsTableName: TCAVESAlertsTable
-          tcaVESAlertsTableTTLSeconds: '1728000'
-          tcaVESMessageStatusTableName: TCAVESMessageStatusTable
-          tcaVESMessageStatusTableTTLSeconds: '86400'
-          thresholdCalculatorFlowletInstances: '2'
-        app_preferences:
-          aaiEnrichmentHost:
-            get_input: aaiEnrichmentHost
-          aaiEnrichmentIgnoreSSLCertificateErrors: 'true'
-          aaiEnrichmentPortNumber: '8443'
-          aaiEnrichmentProtocol: https
-          aaiEnrichmentUserName: DCAE
-          aaiEnrichmentUserPassword: DCAE
-          aaiVMEnrichmentAPIPath: /aai/v11/search/nodes-query
-          aaiVNFEnrichmentAPIPath: /aai/v11/network/generic-vnfs/generic-vnf
-          enableAAIEnrichment:
-            get_input: enableAAIEnrichment
-          enableRedisCaching:
-            get_input: enableRedisCaching
-          redisHosts:
-            get_input: redisHosts
-          enableAlertCEFFormat: 'false'
-          publisherContentType: application/json
-          publisherHostName:
-            get_input: dmaap_host
-          publisherHostPort:
-            get_input: dmaap_port
-          publisherMaxBatchSize: '1'
-          publisherMaxRecoveryQueueSize: '100000'
-          publisherPollingInterval: '20000'
-          publisherProtocol: http
-          publisherTopicName: unauthenticated.DCAE_CL_OUTPUT
-          subscriberConsumerGroup: OpenDCAE-c12
-          subscriberConsumerId: c12
-          subscriberContentType: application/json
-          subscriberHostName:
-            get_input: dmaap_host
-          subscriberHostPort:
-            get_input: dmaap_port
-          subscriberMessageLimit: '-1'
-          subscriberPollingInterval: '30000'
-          subscriberProtocol: http
-          subscriberTimeoutMS: '-1'
-          subscriberTopicName: unauthenticated.VES_MEASUREMENT_OUTPUT
-          tca_policy: '{"domain":"measurementsForVfScaling","metricsPerEventName":[{"eventName":"vFirewallBroadcastPackets","controlLoopSchemaType":"VNF","policyScope":"DCAE","policyName":"DCAE.Config_tca-hi-lo","policyVersion":"v0.0.1","thresholds":[{"closedLoopControlName":"ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a","version":"1.0.2","fieldPath":"$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsDelta","thresholdValue":300,"direction":"LESS_OR_EQUAL","severity":"MAJOR","closedLoopEventStatus":"ONSET"},{"closedLoopControlName":"ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a","version":"1.0.2","fieldPath":"$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsDelta","thresholdValue":700,"direction":"GREATER_OR_EQUAL","severity":"CRITICAL","closedLoopEventStatus":"ONSET"}]},{"eventName":"vLoadBalancer","controlLoopSchemaType":"VM","policyScope":"DCAE","policyName":"DCAE.Config_tca-hi-lo","policyVersion":"v0.0.1","thresholds":[{"closedLoopControlName":"ControlLoop-vDNS-6f37f56d-a87d-4b85-b6a9-cc953cf779b3","version":"1.0.2","fieldPath":"$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsDelta","thresholdValue":300,"direction":"GREATER_OR_EQUAL","severity":"CRITICAL","closedLoopEventStatus":"ONSET"}]},{"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"}]}]}'
-    interfaces:
-      cloudify.interfaces.lifecycle:
-        start:
-          inputs:
-            envs:
-              DMAAPHOST:
-                { get_input: dmaap_host }
-              DMAAPPORT:
-                { get_input: dmaap_port }
-              DMAAPPUBTOPIC: "unauthenticated.DCAE_CL_OUTPUT"
-              DMAAPSUBTOPIC: "unauthenticated.VES_MEASUREMENT_OUTPUT"
-              AAIHOST:
-                { get_input: aaiEnrichmentHost }
-              AAIPORT:
-                { get_input: aaiEnrichmentPort }
-              CONSUL_HOST:
-                { get_input: consul_host }
-              CONSUL_PORT:
-                { get_input: consul_port }
-              CBS_HOST:
-                { get_input: cbs_host }
-              CBS_PORT:
-                { get_input: cbs_port }
-              CONFIG_BINDING_SERVICE: "config_binding_service"
-            ports:
-              - concat: ["11011:", { get_input: external_port }]
-  tca_policy:
-    type: dcae.nodes.policy
-    properties:
-      policy_id:
-        get_input: policy_id